summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_typing.py
diff options
context:
space:
mode:
Diffstat (limited to 'Lib/test/test_typing.py')
-rw-r--r--Lib/test/test_typing.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/Lib/test/test_typing.py b/Lib/test/test_typing.py
index b696447..169b92b 100644
--- a/Lib/test/test_typing.py
+++ b/Lib/test/test_typing.py
@@ -3691,6 +3691,26 @@ class NewTypeTests(BaseTestCase):
class D(UserName):
pass
+ def test_or(self):
+ UserId = NewType('UserId', int)
+
+ self.assertEqual(UserId | int, Union[UserId, int])
+ self.assertEqual(int | UserId, Union[int, UserId])
+
+ self.assertEqual(get_args(UserId | int), (UserId, int))
+ self.assertEqual(get_args(int | UserId), (int, UserId))
+
+ def test_special_attrs(self):
+ UserId = NewType('UserId', int)
+
+ self.assertEqual(UserId.__name__, 'UserId')
+ self.assertEqual(UserId.__qualname__, 'UserId')
+ self.assertEqual(UserId.__module__, __name__)
+
+ def test_repr(self):
+ UserId = NewType('UserId', int)
+
+ self.assertEqual(repr(UserId), f'{__name__}.UserId')
class NamedTupleTests(BaseTestCase):
class NestedEmployee(NamedTuple):