File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -1366,10 +1366,10 @@ class A: pass
13661366 class B (typing .Generic [T ]): pass
13671367 class C (B [int ]): pass
13681368 class D (B [str ], float ): pass
1369- self .assertIsNone (types .get_original_bases (A ))
1369+ self .assertEqual (types .get_original_bases (A ), ( object , ))
13701370 self .assertEqual (types .get_original_bases (B ), (typing .Generic [T ],))
13711371 self .assertEqual (types .get_original_bases (C ), (B [int ],))
1372- self .assertIsNone (types .get_original_bases (int ))
1372+ self .assertEqual (types .get_original_bases (int ), ( object , ))
13731373 self .assertEqual (types .get_original_bases (D ), (B [str ], float ))
13741374
13751375 class E (list [T ]): pass
@@ -1383,6 +1383,9 @@ class G(typing.NamedTuple):
13831383
13841384 self .assertIs (types .get_original_bases (G )[0 ], typing .NamedTuple )
13851385
1386+ with self .assertRaises (TypeError ):
1387+ types .get_original_bases (object ())
1388+
13861389 # Many of the following tests are derived from test_descr.py
13871390 def test_prepare_class (self ):
13881391 # Basic test of metaclass derivation
Original file line number Diff line number Diff line change @@ -163,12 +163,15 @@ class Baz(list[str]): ...
163163 get_original_bases(Baz) == (list[str],)
164164 get_original_bases(int) == None
165165 """
166- if isinstance (cls , type ):
166+ try :
167+ return cls .__orig_bases__
168+ except AttributeError :
167169 try :
168- return cls .__orig_bases__
170+ return cls .__bases__
169171 except AttributeError :
170- pass
171- return None
172+ raise TypeError (
173+ f'Expected an instance of type, not { type (cls ).__name__ !r} '
174+ ) from None
172175
173176
174177class DynamicClassAttribute :
You can’t perform that action at this time.
0 commit comments