mirror of
https://github.com/python/cpython.git
synced 2025-07-23 11:15:24 +00:00
gh-129093: Fix f-string debug text sometimes getting cut off when expression contains !
(#129159)
This commit is contained in:
parent
01bcf13a1c
commit
767cf70844
3 changed files with 21 additions and 3 deletions
|
@ -1757,5 +1757,23 @@ print(f'''{{
|
|||
for s in ["", "some string"]:
|
||||
self.assertEqual(get_code(f"'{s}'"), get_code(f"f'{s}'"))
|
||||
|
||||
def test_gh129093(self):
|
||||
self.assertEqual(f'{1==2=}', '1==2=False')
|
||||
self.assertEqual(f'{1 == 2=}', '1 == 2=False')
|
||||
self.assertEqual(f'{1!=2=}', '1!=2=True')
|
||||
self.assertEqual(f'{1 != 2=}', '1 != 2=True')
|
||||
|
||||
self.assertEqual(f'{(1) != 2=}', '(1) != 2=True')
|
||||
self.assertEqual(f'{(1*2) != (3)=}', '(1*2) != (3)=True')
|
||||
|
||||
self.assertEqual(f'{1 != 2 == 3 != 4=}', '1 != 2 == 3 != 4=False')
|
||||
self.assertEqual(f'{1 == 2 != 3 == 4=}', '1 == 2 != 3 == 4=False')
|
||||
|
||||
self.assertEqual(f'{f'{1==2=}'=}', "f'{1==2=}'='1==2=False'")
|
||||
self.assertEqual(f'{f'{1 == 2=}'=}', "f'{1 == 2=}'='1 == 2=False'")
|
||||
self.assertEqual(f'{f'{1!=2=}'=}', "f'{1!=2=}'='1!=2=True'")
|
||||
self.assertEqual(f'{f'{1 != 2=}'=}', "f'{1 != 2=}'='1 != 2=True'")
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue