Skip to content

Commit 83751bb

Browse files
gh-104089: catch DeprecationWarning in test_fstring (#104137)
Co-authored-by: Alex Waygood <[email protected]>
1 parent 6ab4636 commit 83751bb

File tree

1 file changed

+12
-5
lines changed

1 file changed

+12
-5
lines changed

Lib/test/test_fstring.py

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -980,11 +980,18 @@ def test_roundtrip_raw_quotes(self):
980980
self.assertEqual(fr'\"\'\"\'', '\\"\\\'\\"\\\'')
981981

982982
def test_fstring_backslash_before_double_bracket(self):
983-
self.assertEqual(f'\{{\}}', '\\{\\}')
984-
self.assertEqual(f'\{{', '\\{')
985-
self.assertEqual(f'\{{{1+1}', '\\{2')
986-
self.assertEqual(f'\}}{1+1}', '\\}2')
987-
self.assertEqual(f'{1+1}\}}', '2\\}')
983+
deprecated_cases = [
984+
(r"f'\{{\}}'", '\\{\\}'),
985+
(r"f'\{{'", '\\{'),
986+
(r"f'\{{{1+1}'", '\\{2'),
987+
(r"f'\}}{1+1}'", '\\}2'),
988+
(r"f'{1+1}\}}'", '2\\}')
989+
]
990+
for case, expected_result in deprecated_cases:
991+
with self.subTest(case=case, expected_result=expected_result):
992+
with self.assertWarns(DeprecationWarning):
993+
result = eval(case)
994+
self.assertEqual(result, expected_result)
988995
self.assertEqual(fr'\{{\}}', '\\{\\}')
989996
self.assertEqual(fr'\{{', '\\{')
990997
self.assertEqual(fr'\{{{1+1}', '\\{2')

0 commit comments

Comments
 (0)