@@ -1726,8 +1726,7 @@ class C(Generic[T]): pass
17261726 self .assertEqual (get_args (Unpack ), ())
17271727 self .assertEqual (get_args (Callable [Concatenate [int , P ], int ]),
17281728 (Concatenate [int , P ], int ))
1729- with self .subTest ("Concatenate[int, ...]" ):
1730- self .assertEqual (get_args (Callable [Concatenate [int , ...], int ]),
1729+ self .assertEqual (get_args (Callable [Concatenate [int , ...], int ]),
17311730 (Concatenate [int , ...], int ))
17321731
17331732
@@ -5377,32 +5376,20 @@ class MyClass: ...
53775376 def test_valid_uses (self ):
53785377 P = ParamSpec ('P' )
53795378 T = TypeVar ('T' )
5380-
5381- C1 = Callable [Concatenate [int , P ], int ]
5382- C2 = Callable [Concatenate [int , T , P ], T ]
5383- self .assertEqual (C1 .__origin__ , C2 .__origin__ )
5384- self .assertNotEqual (C1 , C2 )
5385-
5386- with self .subTest ("typing.Callable with Ellipsis" ):
5387- C3 = Callable [Concatenate [int , ...], int ]
5388- C4 = Callable [Concatenate [int , T , ...], T ]
5389- self .assertEqual (C3 .__origin__ , C4 .__origin__ )
5390- self .assertNotEqual (C3 , C4 )
5391-
5392- @skipUnless (TYPING_3_9_0 , "Needs PEP 585" )
5393- def test_pep585_collections_callable (self ):
5394- P = ParamSpec ('P' )
5395- T = TypeVar ('T' )
5396- # Test collections.abc.Callable too.
5397- C5 = collections .abc .Callable [Concatenate [int , P ], int ]
5398- C6 = collections .abc .Callable [Concatenate [int , T , P ], T ]
5399- self .assertEqual (C5 .__origin__ , C6 .__origin__ )
5400- self .assertNotEqual (C5 , C6 )
5401-
5402- C7 = collections .abc .Callable [Concatenate [int , ...], int ]
5403- C8 = collections .abc .Callable [Concatenate [int , T , ...], T ]
5404- self .assertEqual (C7 .__origin__ , C8 .__origin__ )
5405- self .assertNotEqual (C7 , C8 )
5379+ for callable_variant in (Callable , collections .abc .Callable ):
5380+ with self .subTest (callable_variant = callable_variant ):
5381+ if not TYPING_3_9_0 and callable_variant is collections .abc .Callable :
5382+ self .skipTest ("Needs PEP 585" )
5383+
5384+ C1 = callable_variant [Concatenate [int , P ], int ]
5385+ C2 = callable_variant [Concatenate [int , T , P ], T ]
5386+ self .assertEqual (C1 .__origin__ , C2 .__origin__ )
5387+ self .assertNotEqual (C1 , C2 )
5388+
5389+ C3 = callable_variant [Concatenate [int , ...], int ]
5390+ C4 = callable_variant [Concatenate [int , T , ...], T ]
5391+ self .assertEqual (C3 .__origin__ , C4 .__origin__ )
5392+ self .assertNotEqual (C3 , C4 )
54065393
54075394 def test_invalid_uses (self ):
54085395 P = ParamSpec ('P' )
@@ -5435,7 +5422,7 @@ def test_invalid_use(self):
54355422 ):
54365423 Concatenate [(str ,), P ]
54375424
5438- @skipUnless (TYPING_3_11_0 or ( 3 , 10 , 0 ) <= sys . version_info < ( 3 , 10 , 2 ) ,
5425+ @skipUnless (TYPING_3_11_0 ,
54395426 "Cannot be backported to <=3.9. See issue #48"
54405427 "Cannot use ... with typing._ConcatenateGenericAlias after 3.10.2" )
54415428 def test_alias_subscription_with_ellipsis (self ):
0 commit comments