| with (open("bla.txt")): |
| pass |
| |
| with (open("bla.txt")), (open("bla.txt")): |
| pass |
| |
| with (open("bla.txt") as f): |
| pass |
| |
| # Remove brackets within alias expression |
| with (open("bla.txt")) as f: |
| pass |
| |
| # Remove brackets around one-line context managers |
| with (open("bla.txt") as f, (open("x"))): |
| pass |
| |
| with ((open("bla.txt")) as f, open("x")): |
| pass |
| |
| with (CtxManager1() as example1, CtxManager2() as example2): |
| ... |
| |
| # Brackets remain when using magic comma |
| with (CtxManager1() as example1, CtxManager2() as example2,): |
| ... |
| |
| # Brackets remain for multi-line context managers |
| with (CtxManager1() as example1, CtxManager2() as example2, CtxManager2() as example2, CtxManager2() as example2, CtxManager2() as example2): |
| ... |
| |
| # Don't touch assignment expressions |
| with (y := open("./test.py")) as f: |
| pass |
| |
| # Deeply nested examples |
| # N.B. Multiple brackets are only possible |
| # around the context manager itself. |
| # Only one brackets is allowed around the |
| # alias expression or comma-delimited context managers. |
| with (((open("bla.txt")))): |
| pass |
| |
| with (((open("bla.txt")))), (((open("bla.txt")))): |
| pass |
| |
| with (((open("bla.txt")))) as f: |
| pass |
| |
| with ((((open("bla.txt")))) as f): |
| pass |
| |
| with ((((CtxManager1()))) as example1, (((CtxManager2()))) as example2): |
| ... |
| |
| # regression tests for #3678 |
| with (a, *b): |
| pass |
| |
| with (a, (b, *c)): |
| pass |
| |
| with (a for b in c): |
| pass |
| |
| with (a, (b for c in d)): |
| pass |
| |
| # output |
| with open("bla.txt"): |
| pass |
| |
| with open("bla.txt"), open("bla.txt"): |
| pass |
| |
| with open("bla.txt") as f: |
| pass |
| |
| # Remove brackets within alias expression |
| with open("bla.txt") as f: |
| pass |
| |
| # Remove brackets around one-line context managers |
| with open("bla.txt") as f, open("x"): |
| pass |
| |
| with open("bla.txt") as f, open("x"): |
| pass |
| |
| with CtxManager1() as example1, CtxManager2() as example2: |
| ... |
| |
| # Brackets remain when using magic comma |
| with ( |
| CtxManager1() as example1, |
| CtxManager2() as example2, |
| ): |
| ... |
| |
| # Brackets remain for multi-line context managers |
| with ( |
| CtxManager1() as example1, |
| CtxManager2() as example2, |
| CtxManager2() as example2, |
| CtxManager2() as example2, |
| CtxManager2() as example2, |
| ): |
| ... |
| |
| # Don't touch assignment expressions |
| with (y := open("./test.py")) as f: |
| pass |
| |
| # Deeply nested examples |
| # N.B. Multiple brackets are only possible |
| # around the context manager itself. |
| # Only one brackets is allowed around the |
| # alias expression or comma-delimited context managers. |
| with open("bla.txt"): |
| pass |
| |
| with open("bla.txt"), open("bla.txt"): |
| pass |
| |
| with open("bla.txt") as f: |
| pass |
| |
| with open("bla.txt") as f: |
| pass |
| |
| with CtxManager1() as example1, CtxManager2() as example2: |
| ... |
| |
| # regression tests for #3678 |
| with (a, *b): |
| pass |
| |
| with a, (b, *c): |
| pass |
| |
| with (a for b in c): |
| pass |
| |
| with a, (b for c in d): |
| pass |