]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
bpo-46529: increase coverage of `typing.Union.__repr__` method (GH-30911)
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>
Wed, 26 Jan 2022 10:40:40 +0000 (02:40 -0800)
committerGitHub <noreply@github.com>
Wed, 26 Jan 2022 10:40:40 +0000 (02:40 -0800)
(cherry picked from commit d0c690b5f85c679de6059cf353fe0524e905530e)

Co-authored-by: Nikita Sobolev <mail@sobolevn.me>
Lib/test/test_typing.py

index f87832a631d499eae86f2e1519f214194120897d..f70311c95b24e46cae0a66a40b32329594d5acf6 100644 (file)
@@ -304,6 +304,15 @@ class UnionTests(BaseTestCase):
         u = Union[list[int], dict[str, float]]
         self.assertEqual(repr(u), 'typing.Union[list[int], dict[str, float]]')
 
+        u = Union[None, str]
+        self.assertEqual(repr(u), 'typing.Optional[str]')
+        u = Union[str, None]
+        self.assertEqual(repr(u), 'typing.Optional[str]')
+        u = Union[None, str, int]
+        self.assertEqual(repr(u), 'typing.Union[NoneType, str, int]')
+        u = Optional[str]
+        self.assertEqual(repr(u), 'typing.Optional[str]')
+
     def test_cannot_subclass(self):
         with self.assertRaises(TypeError):
             class C(Union):