Skip to content

Commit 6812586

Browse files
committed
reduced tests and no longer based on TypeAliasType
1 parent ae699f2 commit 6812586

File tree

1 file changed

+12
-20
lines changed

1 file changed

+12
-20
lines changed

src/test_typing_extensions.py

Lines changed: 12 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -5785,44 +5785,36 @@ def test_substitution(self):
57855785
with self.subTest("Check substitution result"):
57865786
self.assertIs(unpacked_str, str)
57875787

5788-
@skipUnless(TYPING_3_11_0, "Needs Issue #103 first")
5788+
@skipUnless(TYPING_3_11_0, "Needs Issue #103 for <3.11")
57895789
def test_nested_unpack(self):
57905790
T = TypeVar('T')
57915791
Ts = TypeVarTuple("Ts")
5792-
Variadic = TypeAliasType("Variadic", Tuple[int, Unpack[Ts]], type_params=(Ts,))
5793-
# Tuple[int, Tuple[str, int]]
5792+
Variadic = Tuple[int, Unpack[Ts]]
5793+
# Tuple[int, int, Tuple[str, int]]
57945794
direct_subscription = Variadic[int, Tuple[str, int]]
5795-
# Tuple[int, Tuple[*Ts, int]]
5795+
# Tuple[int, int, Tuple[*Ts, int]]
57965796
TupleAliasTs = Variadic[int, Tuple[Unpack[Ts], int]]
57975797

57985798
# if this fails all below are likely to fail too
5799-
# Tuple[int, Tuple[str, int]]
5799+
# Tuple[int, int, Tuple[str, int]]
58005800
recursive_unpack = TupleAliasTs[str]
58015801
self.assertEqual(direct_subscription, recursive_unpack)
5802-
self.assertEqual(get_args(recursive_unpack), (int, Tuple[str, int]))
5802+
self.assertEqual(get_args(recursive_unpack), (int, int, Tuple[str, int]))
58035803

58045804
TupleAliasTsT = Variadic[Tuple[Unpack[Ts], T]]
5805-
with self.subTest("Two type vars"):
5806-
# Tuple[int, Tuple[List[str], object]]
5807-
nested_tuple_A = TupleAliasTsT[List[str], object]
5808-
nested_tuple_A_unpack = TupleAliasTsT[Unpack[Tuple[List[str]]], object]
5809-
self.assertEqual(nested_tuple_A, nested_tuple_A_unpack)
5810-
self.assertEqual(get_args(nested_tuple_A), (Tuple[List[str], object],))
5811-
5812-
with self.subTest("With Callable and Unpack"):
5813-
# Tuple[int, (str, int) -> object]
5814-
CallableAliasTsT = Variadic[Callable[[Unpack[Ts]], T]]
5815-
callable_fully_subscripted = CallableAliasTsT[Unpack[Tuple[str, int]], object]
5816-
self.assertEqual(get_args(callable_fully_subscripted), (Callable[[str, int], object],))
5817-
58185805
# Equivalent Forms
58195806
with self.subTest("Equivalence of variadic arguments"):
58205807
nested_tuple_bare = TupleAliasTsT[str, int, object]
58215808
self.assertEqual(nested_tuple_bare, TupleAliasTsT[Unpack[Tuple[str, int, object]]])
58225809
self.assertEqual(nested_tuple_bare, TupleAliasTsT[Unpack[Tuple[str, int]], object])
58235810
self.assertEqual(nested_tuple_bare, TupleAliasTsT[Unpack[Tuple[str]], Unpack[Tuple[int]], object])
5824-
self.assertEqual(get_args(nested_tuple_bare), (Tuple[str, int, object],))
5811+
self.assertEqual(get_args(nested_tuple_bare), (int, Tuple[str, int, object],))
58255812

5813+
with self.subTest("With Callable and Unpack"):
5814+
# Tuple[int, (str, int) -> object]
5815+
CallableAliasTsT = Variadic[Callable[[Unpack[Ts]], T]]
5816+
callable_fully_subscripted = CallableAliasTsT[Unpack[Tuple[str, int]], object]
5817+
self.assertEqual(get_args(callable_fully_subscripted), (int, Callable[[str, int], object],))
58265818

58275819
class TypeVarTupleTests(BaseTestCase):
58285820

0 commit comments

Comments
 (0)