mirror of
https://github.com/python/cpython.git
synced 2025-08-04 00:48:58 +00:00
bpo-40334: Allow trailing comma in parenthesised context managers (GH-19964)
This commit is contained in:
parent
441416c9a0
commit
99db2a1db7
3 changed files with 79 additions and 7 deletions
|
@ -1,7 +1,7 @@
|
|||
# Python test set -- part 1, grammar.
|
||||
# This just tests whether the parser accepts them all.
|
||||
|
||||
from test.support import check_syntax_error, check_syntax_warning
|
||||
from test.support import check_syntax_error, check_syntax_warning, use_old_parser
|
||||
import inspect
|
||||
import unittest
|
||||
import sys
|
||||
|
@ -1694,6 +1694,70 @@ class GrammarTests(unittest.TestCase):
|
|||
with manager() as x, manager():
|
||||
pass
|
||||
|
||||
if not use_old_parser():
|
||||
test_cases = [
|
||||
"""if 1:
|
||||
with (
|
||||
manager()
|
||||
):
|
||||
pass
|
||||
""",
|
||||
"""if 1:
|
||||
with (
|
||||
manager() as x
|
||||
):
|
||||
pass
|
||||
""",
|
||||
"""if 1:
|
||||
with (
|
||||
manager() as (x, y),
|
||||
manager() as z,
|
||||
):
|
||||
pass
|
||||
""",
|
||||
"""if 1:
|
||||
with (
|
||||
manager(),
|
||||
manager()
|
||||
):
|
||||
pass
|
||||
""",
|
||||
"""if 1:
|
||||
with (
|
||||
manager() as x,
|
||||
manager() as y
|
||||
):
|
||||
pass
|
||||
""",
|
||||
"""if 1:
|
||||
with (
|
||||
manager() as x,
|
||||
manager()
|
||||
):
|
||||
pass
|
||||
""",
|
||||
"""if 1:
|
||||
with (
|
||||
manager() as x,
|
||||
manager() as y,
|
||||
manager() as z,
|
||||
):
|
||||
pass
|
||||
""",
|
||||
"""if 1:
|
||||
with (
|
||||
manager() as x,
|
||||
manager() as y,
|
||||
manager(),
|
||||
):
|
||||
pass
|
||||
""",
|
||||
]
|
||||
for case in test_cases:
|
||||
with self.subTest(case=case):
|
||||
compile(case, "<string>", "exec")
|
||||
|
||||
|
||||
def test_if_else_expr(self):
|
||||
# Test ifelse expressions in various cases
|
||||
def _checkeval(msg, ret):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue