diff options
-rw-r--r-- | Lib/test/test_typing.py | 15 | ||||
-rw-r--r-- | Lib/typing.py | 4 |
2 files changed, 8 insertions, 11 deletions
diff --git a/Lib/test/test_typing.py b/Lib/test/test_typing.py index bcffdc8..0e28655 100644 --- a/Lib/test/test_typing.py +++ b/Lib/test/test_typing.py @@ -415,6 +415,12 @@ class TypeVarTupleTests(BaseTestCase): if not string.endswith(tail): self.fail(f"String {string!r} does not end with {tail!r}") + def test_name(self): + Ts = TypeVarTuple('Ts') + self.assertEqual(Ts.__name__, 'Ts') + Ts2 = TypeVarTuple('Ts2') + self.assertEqual(Ts2.__name__, 'Ts2') + def test_instance_is_equal_to_itself(self): Ts = TypeVarTuple('Ts') self.assertEqual(Ts, Ts) @@ -509,15 +515,6 @@ class TypeVarTupleTests(BaseTestCase): self.assertEqual(repr(Unpack[tuple[Unpack[Ts]]]), '*tuple[*Ts]') self.assertEqual(repr(Unpack[Tuple[Unpack[Ts]]]), '*typing.Tuple[*Ts]') - def test_repr_is_correct(self): - Ts = TypeVarTuple('Ts') - self.assertEqual(repr(Ts), 'Ts') - self.assertEqual(repr(Unpack[Ts]), '*Ts') - self.assertEqual(repr(tuple[Unpack[Ts]]), 'tuple[*Ts]') - self.assertEqual(repr(Tuple[Unpack[Ts]]), 'typing.Tuple[*Ts]') - self.assertEqual(repr(Unpack[tuple[Unpack[Ts]]]), '*tuple[*Ts]') - self.assertEqual(repr(Unpack[Tuple[Unpack[Ts]]]), '*typing.Tuple[*Ts]') - def test_variadic_class_repr_is_correct(self): Ts = TypeVarTuple('Ts') class A(Generic[Unpack[Ts]]): pass diff --git a/Lib/typing.py b/Lib/typing.py index e861362..f0e8490 100644 --- a/Lib/typing.py +++ b/Lib/typing.py @@ -939,13 +939,13 @@ class TypeVarTuple(_Final, _Immutable, _root=True): """ def __init__(self, name): - self._name = name + self.__name__ = name def __iter__(self): yield Unpack[self] def __repr__(self): - return self._name + return self.__name__ def __typing_subst__(self, arg): raise AssertionError |