Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release v5.0.0 #2106

Merged
merged 2,881 commits into from
Aug 20, 2024
Merged
Changes from 1 commit
Commits
Show all changes
2881 commits
Select commit Hold shift + click to select a range
bd6b270
Merge pull request #2087 from alan-turing-institute/ip_overlap
JimMadge Aug 8, 2024
175fa1a
Wait for clamd.ctl to be created
JimMadge Aug 8, 2024
9f773e2
Merge branch 'release-v5.0.0' into latest-v4.2.2
jemrobinson Aug 8, 2024
2d7731d
:coffin: Remove web.archive.org exception which is no longer needed
jemrobinson Aug 8, 2024
793f704
add pip to allowlist so that basic python smoke tests run
craddm Aug 8, 2024
1588f1a
Add scipy, which is required for scikit-learn
craddm Aug 8, 2024
faf88da
Merge pull request #2109 from alan-turing-institute/latest-v4.2.2
jemrobinson Aug 8, 2024
4bc79fb
Update pypi allowlist to include all relevant dependencies
craddm Aug 8, 2024
407d77e
Remove duplicate entry
craddm Aug 8, 2024
413f7e1
Add additional required dependency
craddm Aug 8, 2024
0923aa6
update R smoke tests to use pacakges that are on the allowlist
craddm Aug 8, 2024
dcb3d25
Restart clamd when configuration is updated
JimMadge Aug 8, 2024
47451c6
Correct socket file name
JimMadge Aug 8, 2024
c165b95
:memo: Warn that VMs must support premium SSDs
jemrobinson Aug 8, 2024
66a7628
:memo: Better wording for software packages option
jemrobinson Aug 8, 2024
2593ac9
:sparkles: Strip ANSI formatting from Pulumi strings before logging a…
jemrobinson Aug 8, 2024
608e887
:coffin: Drop unused from_ansi function
jemrobinson Aug 8, 2024
5d71852
Remove unnecessary handler
JimMadge Aug 8, 2024
13ec31d
:white_check_mark: Add test for strip_ansi
jemrobinson Aug 8, 2024
0a771f4
:recycle: Replace log_message function with direct calls to logger us…
jemrobinson Aug 8, 2024
1161541
Merge pull request #2108 from alan-turing-institute/clamd.ctl
JimMadge Aug 8, 2024
a34151b
Merge branch 'alan-turing-institute:develop' into update-nexus-allowl…
craddm Aug 8, 2024
346cb1f
:coffin: Remove from_ansi test
jemrobinson Aug 8, 2024
8036bb1
Merge remote-tracking branch 'upstream/release-v5.0.0' into update-ne…
craddm Aug 8, 2024
14e0f06
:truck: Move icons to /usr/local/share
jemrobinson Aug 9, 2024
3dcd2ca
:wrench: Add quotes to ansible directives
jemrobinson Aug 9, 2024
2f53652
:memo: Simplify shortcut name
jemrobinson Aug 9, 2024
f375ca2
:wrench: Change backticks to colons
jemrobinson Aug 9, 2024
3cc66ce
:memo: Simplify introduction
jemrobinson Aug 9, 2024
62605cc
:memo: Simplify definitions
jemrobinson Aug 9, 2024
2a7b592
:memo: Simplify prerequisites
jemrobinson Aug 9, 2024
2f665de
:truck: Use example.org domain throughout
jemrobinson Aug 9, 2024
4a94135
Merge pull request #2103 from jemrobinson/add-application-icons
jemrobinson Aug 9, 2024
24e1602
:loud_sound: Log all Pulumi messages containing 'error:' or 'stderr:'…
jemrobinson Aug 8, 2024
5826b25
Merge pull request #2111 from jemrobinson/2067-better-vm-sku-document…
jemrobinson Aug 9, 2024
8de2b65
Update Nexus Allowlist container images
JimMadge Aug 9, 2024
51a0ff9
:coffin: Drop strip_ansi function in favour of printing the full erro…
jemrobinson Aug 9, 2024
43961bf
Merge pull request #2113 from jemrobinson/2112-fix-pulumi-colours
JimMadge Aug 9, 2024
7f757ce
:memo: Simplify username/password section
jemrobinson Aug 9, 2024
21d2385
:coffin: Drop references to DSGs
jemrobinson Aug 9, 2024
a932fd0
:memo: Fix indentation
jemrobinson Aug 9, 2024
95d2c14
:memo: Update MFA setup section
jemrobinson Aug 9, 2024
5bb58fb
:memo: Update log in section
jemrobinson Aug 9, 2024
1ec1b01
:memo: Update workspaces section
jemrobinson Aug 9, 2024
78e7565
Merge branch 'release-v5.0.0' into update-nexus-allowlists
jemrobinson Aug 9, 2024
437288f
:memo: Update workspace login section
jemrobinson Aug 9, 2024
4fd15af
:memo: Updated pre-installed applications section
jemrobinson Aug 9, 2024
a500cb6
:memo: Update keyboard and applications section
jemrobinson Aug 9, 2024
3f928ab
:arrow_up: Update Python dependencies
JimMadge Aug 12, 2024
e4f8c9b
:memo: Update Python/R section
jemrobinson Aug 12, 2024
dffac23
:memo: Update the ingress/egress section
jemrobinson Aug 12, 2024
9b2f919
:arrow_up: Update Python dependencies
JimMadge Aug 12, 2024
f2266e6
Merge pull request #2119 from alan-turing-institute/python-dependencies
JimMadge Aug 12, 2024
097e5c4
:memo: Update Gitea section
jemrobinson Aug 12, 2024
d8148bc
Update cran.allowlist to include the remotes package
craddm Aug 12, 2024
7ab11e9
:bug: Ensure that icons directory is created
jemrobinson Aug 12, 2024
3266ab3
Specify caddy patch version
JimMadge Aug 12, 2024
411cb2d
Remove notify to non-existent handler
JimMadge Aug 12, 2024
17a7090
Merge pull request #2122 from alan-turing-institute/pam_handler
JimMadge Aug 12, 2024
7f39172
Merge remote-tracking branch 'upstream/release-v5.0.0' into update-ne…
craddm Aug 12, 2024
d2bdd23
:recycle: Simplify ansible setup by copying all files in a directory …
jemrobinson Aug 12, 2024
7b2bf15
:wrench: Do not create xrdp directories separately
jemrobinson Aug 12, 2024
72f2e5e
:bulb: Add comments to all 'ansible.builtin.copy' tasks
jemrobinson Aug 12, 2024
f233abb
:memo: Update HedgeDoc section
jemrobinson Aug 12, 2024
f37a7cb
Merge pull request #2121 from jemrobinson/create-icons-directory
jemrobinson Aug 12, 2024
3035d81
Merge branch 'release-v5.0.0' into update-nexus-allowlists
jemrobinson Aug 12, 2024
3994466
:memo: Update access workspaces
jemrobinson Aug 12, 2024
26753a4
Merge pull request #2114 from craddm/update-nexus-allowlists
jemrobinson Aug 12, 2024
26012f2
:bug: Ensure that variables which might contain special characters ar…
jemrobinson Aug 13, 2024
7daf12f
:wrench: Check whether password can be read from file rather than whe…
jemrobinson Aug 13, 2024
0351084
:memo: Update DBeaver databases section
jemrobinson Aug 13, 2024
c349aaf
:memo: Update connecting to databases with Python/R
jemrobinson Aug 13, 2024
b66e3db
:bug: Fix bash codeblocks
jemrobinson Aug 13, 2024
08d82da
Disable light locker
JimMadge Aug 13, 2024
2d547f3
:coffin: Remove unused images
jemrobinson Aug 13, 2024
c5acb1d
:truck: Separate out new_user_setup into a dedicated guide
jemrobinson Aug 13, 2024
58a3fc5
Add document section for fix backups after SRE deployment
craddm Aug 13, 2024
272a62e
use different filler for shm and sre names
craddm Aug 13, 2024
f3cf9c7
Update docs/source/deployment/deploy_sre.md
craddm Aug 13, 2024
bb56cc5
add newline at EOF
craddm Aug 13, 2024
d3b19ea
:memo: Separate out accessing and using sections
jemrobinson Aug 13, 2024
4fa7f33
:bento_box: Update picture
jemrobinson Aug 13, 2024
e2e9fba
Merge pull request #2127 from craddm/backup-docs
craddm Aug 13, 2024
6694a6c
:sparkles: Add new troubleshooting section
jemrobinson Aug 13, 2024
bbff641
Merge pull request #2126 from alan-turing-institute/light_locker
JimMadge Aug 14, 2024
f01b977
Merge pull request #2125 from jemrobinson/2123-fix-password-escaping
craddm Aug 14, 2024
c629dd4
Disable xfce4-screensaver not light-locker
JimMadge Aug 14, 2024
12644bd
Uninstall xfce4-screensaver
JimMadge Aug 14, 2024
8841473
:memo: Update the troubleshooting page
jemrobinson Aug 14, 2024
57622f3
:truck: Rename images folder
jemrobinson Aug 14, 2024
1fdfb7c
add list_blobs method to azure_sdk
craddm Aug 14, 2024
215b746
Change arguments for list_blobs method
craddm Aug 14, 2024
064fcb8
add config available command
craddm Aug 14, 2024
2664321
:recycle: Refactor Gitea and Git sections. Fix some broken dropdowns
jemrobinson Aug 14, 2024
d5ff32b
:truck: Convert dropdowns to footnotes
jemrobinson Aug 14, 2024
d136207
Catch empty lists
craddm Aug 14, 2024
948687d
:rotating_light: Fix linting
jemrobinson Aug 14, 2024
5bad3bd
:memo: Replace Sherlock Holmes examples
jemrobinson Aug 14, 2024
dd2c23b
:wrench: Ignore example.org links
jemrobinson Aug 14, 2024
5b9a216
:rotating_light: Fix CI errors
jemrobinson Aug 14, 2024
bcb7327
Return list of blob names
craddm Aug 14, 2024
def29e5
change test string back to working string
craddm Aug 14, 2024
81f666f
Fix linting errors
craddm Aug 14, 2024
d4a1513
add test of dsh config available command
craddm Aug 14, 2024
59f3dd9
use longer output list in test
craddm Aug 14, 2024
0ba8d29
Don't uninstall xfce4-screensaver
JimMadge Aug 14, 2024
308df52
Add additional tests for available command
craddm Aug 14, 2024
425a94f
:memo: Add tip about workspace switching
jemrobinson Aug 14, 2024
16ac589
:coffin: Remove commented-out references to /backup and /scratch
jemrobinson Aug 14, 2024
5ddb378
:memo: Rephrase statements about project end
jemrobinson Aug 14, 2024
b772c7a
:truck: Drop command line and git details in favour of links. Move bo…
jemrobinson Aug 14, 2024
c948a74
Check if SRE is deployed
craddm Aug 14, 2024
657140e
:memo: Add link to Gitea project boards
jemrobinson Aug 14, 2024
18727f7
Fix Guacamole menu command
JimMadge Aug 14, 2024
b5f3549
Merge pull request #2130 from jemrobinson/update-user-guide
jemrobinson Aug 14, 2024
7b3f61c
Merge remote-tracking branch 'origin/release-v5.0.0' into xfce4-scree…
JimMadge Aug 15, 2024
ace99c7
:bug: Use blob_client function everywhere blobs are needed in AzureSd…
jemrobinson Aug 15, 2024
afef71e
fix linting
craddm Aug 15, 2024
f40ed44
Add instructions to disable screensaver lock
JimMadge Aug 15, 2024
586828b
Update docs/source/roles/researcher/troubleshooting.md
JimMadge Aug 15, 2024
5048a65
Update docs/source/roles/researcher/troubleshooting.md
JimMadge Aug 15, 2024
f4a718e
Change guilabel to menuselection
JimMadge Aug 15, 2024
9c385d6
Remove guilabels
JimMadge Aug 15, 2024
d21423f
Add list and drop down
JimMadge Aug 15, 2024
022aba4
:white_check_mark: Fix tests
jemrobinson Aug 15, 2024
212cfb5
Update docs/source/roles/researcher/troubleshooting.md
JimMadge Aug 15, 2024
025d638
Update docs/source/roles/researcher/troubleshooting.md
JimMadge Aug 15, 2024
f3e09a0
Add blank lines around list
JimMadge Aug 15, 2024
849e95e
update storage accounts to use minimum tls version of 1.2
craddm Aug 15, 2024
2330733
Merge pull request #2128 from alan-turing-institute/xfce4-screensaver
JimMadge Aug 15, 2024
f14ae78
:recycle: Separate blob_service_client from blob_client
jemrobinson Aug 15, 2024
527f24a
use minimum tls version of 1.2 for storage account
craddm Aug 15, 2024
154c468
Merge remote-tracking branch 'upstream/release-v5.0.0' into list-sres
craddm Aug 15, 2024
65b42ec
Merge pull request #2132 from jemrobinson/blob-client-bug-fix
jemrobinson Aug 15, 2024
1aa31ee
Merge remote-tracking branch 'upstream/release-v5.0.0' into list-sres
craddm Aug 15, 2024
e781d73
Use blob_service_client function
craddm Aug 15, 2024
9d43ce2
Merge remote-tracking branch 'upstream/release-v5.0.0' into storage-tls
craddm Aug 15, 2024
de77d7c
:wrench: Switch to transaction-optimised file shares which have low t…
jemrobinson Aug 15, 2024
75ca76d
:wrench: Disable large file shares
jemrobinson Aug 15, 2024
66202c1
:wrench: Reduce file share quotas where possible
jemrobinson Aug 15, 2024
9ad64c5
:wrench: Drop down to Standard_LRS storage for config files
jemrobinson Aug 16, 2024
3b15802
Use storage minimum tls enum instead of string
craddm Aug 16, 2024
2e83327
:wrench: Add storage quota options to SRE config
jemrobinson Aug 16, 2024
c14da16
:loud_sound: Ensure validation errors are logged
jemrobinson Aug 16, 2024
cfe24c3
:wrench: Add a new config section to specify sizes of NFS file shares
jemrobinson Aug 16, 2024
591939c
:memo: Add note about why NFS file shares need premium storage
jemrobinson Aug 16, 2024
3d6ccdd
:white_check_mark: Fix linting and tests
jemrobinson Aug 16, 2024
583bd77
Merge pull request #2133 from craddm/storage-tls
JimMadge Aug 16, 2024
b3d8b12
fix test_available
craddm Aug 16, 2024
f77de0a
check for clearer string in output
craddm Aug 16, 2024
6c36116
Merge remote-tracking branch 'upstream/release-v5.0.0' into list-sres
craddm Aug 16, 2024
a8b818a
remove unused blob_client mock
craddm Aug 16, 2024
51d0a95
:wrench: Add HSTS rule to Application Gateway
jemrobinson Aug 16, 2024
d6ff112
:wrench: Add CSP rule to restrict some cross-site attacks
jemrobinson Aug 16, 2024
d843fd2
:wrench: Add Permissions-Policy rule to disable use of user device da…
jemrobinson Aug 16, 2024
9c4a318
:wrench: Add referrer-policy to block cross-origin resource sharing (…
jemrobinson Aug 16, 2024
662ef4a
:wrench: Hide server name as recommended in previous penetration tests
jemrobinson Aug 16, 2024
3e5dec8
:wrench: Block attempts to download additional files from the server …
jemrobinson Aug 16, 2024
d8f0995
:wrench: Block loading this content in an iframe (overlaps with Conte…
jemrobinson Aug 16, 2024
940c2ab
Prettier output
craddm Aug 16, 2024
b158021
Move header
craddm Aug 16, 2024
f5e3391
:white_check_mark: Update ApplicationGateway tests
jemrobinson Aug 16, 2024
1dae57c
:wrench: Disable CookieBasedAffinity which caused an SSLLabs warning …
jemrobinson Aug 16, 2024
bbc0b97
:wrench: Add connection draining which should prevent traffic being s…
jemrobinson Aug 16, 2024
d63d1a0
Merge pull request #2138 from jemrobinson/improve-entrypoint-security
JimMadge Aug 19, 2024
4a1375e
:wrench: Explicitly setup Ruby for markdown linting
jemrobinson Aug 18, 2024
524611c
:memo: Add instructions for enabling Application Gateway Basic SKU
jemrobinson Aug 18, 2024
7afd78c
:wrench: Drop Application Gateway to Basic SKU
jemrobinson Aug 18, 2024
6556e8f
Merge pull request #2116 from alan-turing-institute/bump_nexus_allowlist
JimMadge Aug 19, 2024
cb2da12
Merge pull request #2140 from jemrobinson/2124-reduce-application-gat…
jemrobinson Aug 19, 2024
0b43d1c
:wrench: Remove default sizes for storage_quota_gb to ensure that dep…
jemrobinson Aug 19, 2024
d7c8074
use pulumi config with no key
craddm Aug 19, 2024
6409b6d
Do not flag finding no configurations as an error
craddm Aug 19, 2024
a19e87b
Update tests
craddm Aug 19, 2024
57f9c17
:wrench: Pydantic now supports mutable default values by deep-copying…
jemrobinson Aug 19, 2024
b5e0876
:wrench: Use pydantic mypy plugin
jemrobinson Aug 19, 2024
20513c0
:white_check_mark: Add tests for ConfigSubsectionStorageQuotaGB
jemrobinson Aug 19, 2024
603aa62
:coffin: Drop default arguments for remote_desktop
jemrobinson Aug 19, 2024
d00e55c
Merge pull request #2136 from jemrobinson/2124-minimise-costs
jemrobinson Aug 19, 2024
e96aa57
Update data_safe_haven/commands/config.py
craddm Aug 19, 2024
7b6eb8c
Update data_safe_haven/commands/config.py
craddm Aug 19, 2024
dba4506
Remove unneeded file
JimMadge Aug 19, 2024
93d57dc
Update versioning document
JimMadge Aug 19, 2024
56c8ce6
:memo: Standardise use of YOUR_SRE_NAME
JimMadge Aug 19, 2024
2276718
:memo: Standardise use of menuselection
jemrobinson Aug 19, 2024
7bff9bb
Catch exceptions when pulumi command fails
craddm Aug 19, 2024
26ed31b
:memo: Update roles page
jemrobinson Aug 19, 2024
5c07f23
Fix typo
craddm Aug 19, 2024
1fbafc4
Merge remote-tracking branch 'upstream/release-v5.0.0' into list-sres
craddm Aug 19, 2024
2c0f345
:memo: Update notice about which release to use
jemrobinson Aug 19, 2024
94bc161
WIP: Restore old security checklist page
JimMadge Aug 19, 2024
1358cd6
Fix markdown linting
JimMadge Aug 19, 2024
9870823
Remove some v4 items
JimMadge Aug 19, 2024
2f09f5b
Update prerequisites
JimMadge Aug 19, 2024
1876bb6
Merge pull request #2129 from craddm/list-sres
JimMadge Aug 19, 2024
dfe629a
:goal_net: Catch an unhandled exception when Graph authentication tim…
jemrobinson Aug 19, 2024
f43521c
Merge pull request #2142 from jemrobinson/fix-graph-api-timeout-trace…
jemrobinson Aug 19, 2024
56c8767
Remove excessive bold text
JimMadge Aug 20, 2024
022b605
Update section 1
JimMadge Aug 20, 2024
ff24519
Correct cross-references
JimMadge Aug 20, 2024
331ac33
Update section 2
JimMadge Aug 20, 2024
1799902
Update section 3
JimMadge Aug 20, 2024
2e6887a
Fix typo
JimMadge Aug 20, 2024
2331c7f
Add reference to tier templating
JimMadge Aug 20, 2024
c73fd6e
:wrench: Add 'tier' argument to 'dsh config template' that sets some …
jemrobinson Aug 19, 2024
895f2db
:memo: Add instructions about starting from a tier
jemrobinson Aug 19, 2024
7fbcd53
:rotating_light: Fix linting
jemrobinson Aug 19, 2024
92f4e34
:rotating_light: Apply linting fixes
jemrobinson Aug 20, 2024
976b8db
Update section 4
JimMadge Aug 20, 2024
058ef41
Merge pull request #2143 from jemrobinson/tier-defaults
jemrobinson Aug 20, 2024
8d5a98f
Restructure prerequisites
JimMadge Aug 20, 2024
a9f0823
Add SSPR check
JimMadge Aug 20, 2024
7cc3d90
Merge remote-tracking branch 'origin/release-v5.0.0' into security_ch…
JimMadge Aug 20, 2024
4a917b4
Remove unneeded checks in section 1
JimMadge Aug 20, 2024
f7efad9
Fix typo
JimMadge Aug 20, 2024
06b0938
Update network isolation wording
JimMadge Aug 20, 2024
4120e4c
Correct verify statements
JimMadge Aug 20, 2024
2987184
Fix typo
JimMadge Aug 20, 2024
cbc53d0
Update checks
JimMadge Aug 20, 2024
1d83eb8
Improve check names
JimMadge Aug 20, 2024
8098f20
Add missing backtick
JimMadge Aug 20, 2024
0d9db35
Update public ip instructions
JimMadge Aug 20, 2024
258e891
Remove redundant test
JimMadge Aug 20, 2024
7ee43c2
Correct NSG name
JimMadge Aug 20, 2024
1a0f745
Update ssh instructions
JimMadge Aug 20, 2024
c41e8c3
Update resources with public IP addresses
JimMadge Aug 20, 2024
74a0eb6
Update copy paste instructions
JimMadge Aug 20, 2024
f87c564
Update ingress checks
JimMadge Aug 20, 2024
f8f5ee4
:memo: Update suggested Entra authentication methods
jemrobinson Aug 20, 2024
cf3bb99
:wrench: Only allow app-based authentication methods for signing in t…
jemrobinson Aug 20, 2024
84f65b6
Update egress section
JimMadge Aug 20, 2024
305a6c7
Remove software ingress checks
JimMadge Aug 20, 2024
b0b1fa0
Update package proxy checks
JimMadge Aug 20, 2024
0de23e8
Correct role name
JimMadge Aug 20, 2024
384108d
Correct role name
JimMadge Aug 20, 2024
ea948ee
Correct references
JimMadge Aug 20, 2024
bdefefb
:memo: Add user-setup instructions for TOTP apps
jemrobinson Aug 20, 2024
55e597b
Update figures
JimMadge Aug 20, 2024
63cb50b
Correct case of Guac copy/paste configuration
JimMadge Aug 20, 2024
fc114a6
Run lint:fmt
JimMadge Aug 20, 2024
88ba3b2
Correct splitlines call
JimMadge Aug 20, 2024
4960d79
Update allowed package example
JimMadge Aug 20, 2024
0d0e772
Add images
JimMadge Aug 20, 2024
81899de
Remove reference to old allow lists
JimMadge Aug 20, 2024
d8aaa84
Merge pull request #2149 from alan-turing-institute/copy_paste_string
JimMadge Aug 20, 2024
b178ddc
Correct image path
JimMadge Aug 20, 2024
fb74805
Remove check for copy/paste between workspaces
JimMadge Aug 20, 2024
1c01e66
Apply suggestions from code review
JimMadge Aug 20, 2024
f1eeb7f
Merge pull request #2141 from alan-turing-institute/security_checklist
JimMadge Aug 20, 2024
e38537d
Merge pull request #2147 from jemrobinson/2145-update-authentication-…
JimMadge Aug 20, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
✅ Add test for strip_ansi
  • Loading branch information
jemrobinson committed Aug 8, 2024
commit 13ec31d19321c8f49e29dd3307703b3af91254b0
23 changes: 22 additions & 1 deletion tests/functions/test_strings.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,12 @@
from freezegun import freeze_time

from data_safe_haven.exceptions import DataSafeHavenValueError
from data_safe_haven.functions import get_key_vault_name, json_safe, next_occurrence
from data_safe_haven.functions import (
get_key_vault_name,
json_safe,
next_occurrence,
strip_ansi,
)


class TestNextOccurrence:
Expand Down Expand Up @@ -74,3 +79,19 @@ def test_get_key_vault_name(value, expected):
)
def test_json_safe(value, expected):
assert json_safe(value) == expected


@pytest.mark.parametrize(
"value,expected",
[
("\x1b[38;5;13m\x1b[1mBold pink\x1b[0m text", "Bold pink text"),
("Plain text", "Plain text"),
("\033[3;mItalic\033[0m text", "Italic text"),
("\033[4;mUnderlined\033[0m text", "Underlined text"),
("\033[7;mReversed\033[0m text", "Reversed text"),
("\033[32;mGreen\033[0m text", "Green text"),
("\033[41;mRed bkg\033[0m text", "Red bkg text"),
],
)
def test_strip_ansi(value, expected):
assert strip_ansi(value) == expected