summaryrefslogtreecommitdiff
path: root/Lib/test
diff options
context:
space:
mode:
authorPablo Galindo <Pablogsal@gmail.com>2021-06-24 16:09:57 +0100
committerGitHub <noreply@github.com>2021-06-24 16:09:57 +0100
commit0acc258fe6f0ec200ca2f6f9294adbf52a244802 (patch)
treecf584ea88a0cbe1c7518fe7436ad3521335b7554 /Lib/test
parentb19f45533942e4ad7ddf9d2d94f8b87c6f746bce (diff)
downloadcpython-git-0acc258fe6f0ec200ca2f6f9294adbf52a244802.tar.gz
bpo-44456: Improve the syntax error when mixing keyword and positional patterns (GH-26793)
Diffstat (limited to 'Lib/test')
-rw-r--r--Lib/test/test_syntax.py24
1 files changed, 24 insertions, 0 deletions
diff --git a/Lib/test/test_syntax.py b/Lib/test/test_syntax.py
index e0d0445a83..ad5656bac6 100644
--- a/Lib/test/test_syntax.py
+++ b/Lib/test/test_syntax.py
@@ -1240,6 +1240,30 @@ Corner-cases that used to crash:
... ...
Traceback (most recent call last):
SyntaxError: invalid pattern target
+
+ >>> match ...:
+ ... case Foo(z=1, y=2, x):
+ ... ...
+ Traceback (most recent call last):
+ SyntaxError: positional patterns follow keyword patterns
+
+ >>> match ...:
+ ... case Foo(a, z=1, y=2, x):
+ ... ...
+ Traceback (most recent call last):
+ SyntaxError: positional patterns follow keyword patterns
+
+ >>> match ...:
+ ... case Foo(z=1, x, y=2):
+ ... ...
+ Traceback (most recent call last):
+ SyntaxError: positional patterns follow keyword patterns
+
+ >>> match ...:
+ ... case C(a=b, c, d=e, f, g=h, i, j=k, ...):
+ ... ...
+ Traceback (most recent call last):
+ SyntaxError: positional patterns follow keyword patterns
"""
import re