bpo-42128: Structural Pattern Matching (PEP 634) (GH-22917)
Co-authored-by: Guido van Rossum <guido@python.org>
Co-authored-by: Talin <viridia@gmail.com>
Co-authored-by: Pablo Galindo <pablogsal@gmail.com>
diff --git a/Lib/test/test_dataclasses.py b/Lib/test/test_dataclasses.py
index 8887eb6..0bfed41 100644
--- a/Lib/test/test_dataclasses.py
+++ b/Lib/test/test_dataclasses.py
@@ -3375,5 +3375,21 @@ class Date(A):
self.assertRaisesRegex(TypeError, msg, Date)
+class TestMatchArgs(unittest.TestCase):
+ def test_match_args(self):
+ @dataclass
+ class C:
+ a: int
+ self.assertEqual(C(42).__match_args__, ('a',))
+
+ def test_explicit_match_args(self):
+ ma = []
+ @dataclass
+ class C:
+ a: int
+ __match_args__ = ma
+ self.assertIs(C(42).__match_args__, ma)
+
+
if __name__ == '__main__':
unittest.main()