Skip to content

Commit ca55247

Browse files
[3.11] Remove raw asserts in test_typing.py (GH-104951) (#104979)
Remove raw asserts in test_typing.py (GH-104951) (cherry picked from commit 2cb4456) Co-authored-by: Jelle Zijlstra <[email protected]>
1 parent f585ed1 commit ca55247

File tree

1 file changed

+30
-22
lines changed

1 file changed

+30
-22
lines changed

Lib/test/test_typing.py

+30-22
Original file line numberDiff line numberDiff line change
@@ -5956,7 +5956,7 @@ def __len__(self):
59565956
return 0
59575957

59585958
self.assertEqual(len(MMC()), 0)
5959-
assert callable(MMC.update)
5959+
self.assertTrue(callable(MMC.update))
59605960
self.assertIsInstance(MMC(), typing.Mapping)
59615961

59625962
class MMB(typing.MutableMapping[KT, VT]):
@@ -6151,8 +6151,8 @@ def foo(a: A) -> Optional[BaseException]:
61516151
else:
61526152
return a()
61536153

6154-
assert isinstance(foo(KeyboardInterrupt), KeyboardInterrupt)
6155-
assert foo(None) is None
6154+
self.assertIsInstance(foo(KeyboardInterrupt), KeyboardInterrupt)
6155+
self.assertIsNone(foo(None))
61566156

61576157

61586158
class TestModules(TestCase):
@@ -6483,6 +6483,10 @@ def test_basics_functional_syntax(self):
64836483
self.assertEqual(Emp.__bases__, (dict,))
64846484
self.assertEqual(Emp.__annotations__, {'name': str, 'id': int})
64856485
self.assertEqual(Emp.__total__, True)
6486+
self.assertEqual(Emp.__required_keys__, {'name', 'id'})
6487+
self.assertIsInstance(Emp.__required_keys__, frozenset)
6488+
self.assertEqual(Emp.__optional_keys__, set())
6489+
self.assertIsInstance(Emp.__optional_keys__, frozenset)
64866490

64876491
def test_basics_keywords_syntax(self):
64886492
with self.assertWarns(DeprecationWarning):
@@ -6585,7 +6589,9 @@ def test_total(self):
65856589
self.assertEqual(D(x=1), {'x': 1})
65866590
self.assertEqual(D.__total__, False)
65876591
self.assertEqual(D.__required_keys__, frozenset())
6592+
self.assertIsInstance(D.__required_keys__, frozenset)
65886593
self.assertEqual(D.__optional_keys__, {'x'})
6594+
self.assertIsInstance(D.__optional_keys__, frozenset)
65896595

65906596
self.assertEqual(Options(), {})
65916597
self.assertEqual(Options(log_level=2), {'log_level': 2})
@@ -6597,8 +6603,10 @@ def test_optional_keys(self):
65976603
class Point2Dor3D(Point2D, total=False):
65986604
z: int
65996605

6600-
assert Point2Dor3D.__required_keys__ == frozenset(['x', 'y'])
6601-
assert Point2Dor3D.__optional_keys__ == frozenset(['z'])
6606+
self.assertEqual(Point2Dor3D.__required_keys__, frozenset(['x', 'y']))
6607+
self.assertIsInstance(Point2Dor3D.__required_keys__, frozenset)
6608+
self.assertEqual(Point2Dor3D.__optional_keys__, frozenset(['z']))
6609+
self.assertIsInstance(Point2Dor3D.__optional_keys__, frozenset)
66026610

66036611
def test_keys_inheritance(self):
66046612
class BaseAnimal(TypedDict):
@@ -6611,26 +6619,26 @@ class Animal(BaseAnimal, total=False):
66116619
class Cat(Animal):
66126620
fur_color: str
66136621

6614-
assert BaseAnimal.__required_keys__ == frozenset(['name'])
6615-
assert BaseAnimal.__optional_keys__ == frozenset([])
6616-
assert BaseAnimal.__annotations__ == {'name': str}
6622+
self.assertEqual(BaseAnimal.__required_keys__, frozenset(['name']))
6623+
self.assertEqual(BaseAnimal.__optional_keys__, frozenset([]))
6624+
self.assertEqual(BaseAnimal.__annotations__, {'name': str})
66176625

6618-
assert Animal.__required_keys__ == frozenset(['name'])
6619-
assert Animal.__optional_keys__ == frozenset(['tail', 'voice'])
6620-
assert Animal.__annotations__ == {
6626+
self.assertEqual(Animal.__required_keys__, frozenset(['name']))
6627+
self.assertEqual(Animal.__optional_keys__, frozenset(['tail', 'voice']))
6628+
self.assertEqual(Animal.__annotations__, {
66216629
'name': str,
66226630
'tail': bool,
66236631
'voice': str,
6624-
}
6632+
})
66256633

6626-
assert Cat.__required_keys__ == frozenset(['name', 'fur_color'])
6627-
assert Cat.__optional_keys__ == frozenset(['tail', 'voice'])
6628-
assert Cat.__annotations__ == {
6634+
self.assertEqual(Cat.__required_keys__, frozenset(['name', 'fur_color']))
6635+
self.assertEqual(Cat.__optional_keys__, frozenset(['tail', 'voice']))
6636+
self.assertEqual(Cat.__annotations__, {
66296637
'fur_color': str,
66306638
'name': str,
66316639
'tail': bool,
66326640
'voice': str,
6633-
}
6641+
})
66346642

66356643
def test_required_notrequired_keys(self):
66366644
self.assertEqual(NontotalMovie.__required_keys__,
@@ -6840,11 +6848,11 @@ class C(B[int]):
68406848
self.assertEqual(C.__total__, True)
68416849
self.assertEqual(C.__optional_keys__, frozenset(['b']))
68426850
self.assertEqual(C.__required_keys__, frozenset(['a', 'c']))
6843-
assert C.__annotations__ == {
6851+
self.assertEqual(C.__annotations__, {
68446852
'a': T,
68456853
'b': KT,
68466854
'c': int,
6847-
}
6855+
})
68486856
with self.assertRaises(TypeError):
68496857
C[str]
68506858

@@ -6859,11 +6867,11 @@ class Point3D(Point2DGeneric[T], Generic[T, KT]):
68596867
self.assertEqual(Point3D.__total__, True)
68606868
self.assertEqual(Point3D.__optional_keys__, frozenset())
68616869
self.assertEqual(Point3D.__required_keys__, frozenset(['a', 'b', 'c']))
6862-
assert Point3D.__annotations__ == {
6870+
self.assertEqual(Point3D.__annotations__, {
68636871
'a': T,
68646872
'b': T,
68656873
'c': KT,
6866-
}
6874+
})
68676875
self.assertEqual(Point3D[int, str].__origin__, Point3D)
68686876

68696877
with self.assertRaises(TypeError):
@@ -6890,11 +6898,11 @@ class WithImplicitAny(B):
68906898
self.assertEqual(WithImplicitAny.__total__, True)
68916899
self.assertEqual(WithImplicitAny.__optional_keys__, frozenset(['b']))
68926900
self.assertEqual(WithImplicitAny.__required_keys__, frozenset(['a', 'c']))
6893-
assert WithImplicitAny.__annotations__ == {
6901+
self.assertEqual(WithImplicitAny.__annotations__, {
68946902
'a': T,
68956903
'b': KT,
68966904
'c': int,
6897-
}
6905+
})
68986906
with self.assertRaises(TypeError):
68996907
WithImplicitAny[str]
69006908

0 commit comments

Comments
 (0)