Skip to content

Commit 01af2b0

Browse files
[3.12] Remove raw asserts in test_typing.py (GH-104951) (#104978)
Remove raw asserts in test_typing.py (GH-104951) (cherry picked from commit 2cb4456) Co-authored-by: Jelle Zijlstra <[email protected]>
1 parent 3158b4d commit 01af2b0

File tree

1 file changed

+30
-22
lines changed

1 file changed

+30
-22
lines changed

Lib/test/test_typing.py

Lines changed: 30 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -6474,7 +6474,7 @@ def __len__(self):
64746474
return 0
64756475

64766476
self.assertEqual(len(MMC()), 0)
6477-
assert callable(MMC.update)
6477+
self.assertTrue(callable(MMC.update))
64786478
self.assertIsInstance(MMC(), typing.Mapping)
64796479

64806480
class MMB(typing.MutableMapping[KT, VT]):
@@ -6669,8 +6669,8 @@ def foo(a: A) -> Optional[BaseException]:
66696669
else:
66706670
return a()
66716671

6672-
assert isinstance(foo(KeyboardInterrupt), KeyboardInterrupt)
6673-
assert foo(None) is None
6672+
self.assertIsInstance(foo(KeyboardInterrupt), KeyboardInterrupt)
6673+
self.assertIsNone(foo(None))
66746674

66756675

66766676
class TestModules(TestCase):
@@ -7017,6 +7017,10 @@ def test_basics_functional_syntax(self):
70177017
self.assertEqual(Emp.__bases__, (dict,))
70187018
self.assertEqual(Emp.__annotations__, {'name': str, 'id': int})
70197019
self.assertEqual(Emp.__total__, True)
7020+
self.assertEqual(Emp.__required_keys__, {'name', 'id'})
7021+
self.assertIsInstance(Emp.__required_keys__, frozenset)
7022+
self.assertEqual(Emp.__optional_keys__, set())
7023+
self.assertIsInstance(Emp.__optional_keys__, frozenset)
70207024

70217025
def test_basics_keywords_syntax(self):
70227026
with self.assertWarns(DeprecationWarning):
@@ -7119,7 +7123,9 @@ def test_total(self):
71197123
self.assertEqual(D(x=1), {'x': 1})
71207124
self.assertEqual(D.__total__, False)
71217125
self.assertEqual(D.__required_keys__, frozenset())
7126+
self.assertIsInstance(D.__required_keys__, frozenset)
71227127
self.assertEqual(D.__optional_keys__, {'x'})
7128+
self.assertIsInstance(D.__optional_keys__, frozenset)
71237129

71247130
self.assertEqual(Options(), {})
71257131
self.assertEqual(Options(log_level=2), {'log_level': 2})
@@ -7131,8 +7137,10 @@ def test_optional_keys(self):
71317137
class Point2Dor3D(Point2D, total=False):
71327138
z: int
71337139

7134-
assert Point2Dor3D.__required_keys__ == frozenset(['x', 'y'])
7135-
assert Point2Dor3D.__optional_keys__ == frozenset(['z'])
7140+
self.assertEqual(Point2Dor3D.__required_keys__, frozenset(['x', 'y']))
7141+
self.assertIsInstance(Point2Dor3D.__required_keys__, frozenset)
7142+
self.assertEqual(Point2Dor3D.__optional_keys__, frozenset(['z']))
7143+
self.assertIsInstance(Point2Dor3D.__optional_keys__, frozenset)
71367144

71377145
def test_keys_inheritance(self):
71387146
class BaseAnimal(TypedDict):
@@ -7145,26 +7153,26 @@ class Animal(BaseAnimal, total=False):
71457153
class Cat(Animal):
71467154
fur_color: str
71477155

7148-
assert BaseAnimal.__required_keys__ == frozenset(['name'])
7149-
assert BaseAnimal.__optional_keys__ == frozenset([])
7150-
assert BaseAnimal.__annotations__ == {'name': str}
7156+
self.assertEqual(BaseAnimal.__required_keys__, frozenset(['name']))
7157+
self.assertEqual(BaseAnimal.__optional_keys__, frozenset([]))
7158+
self.assertEqual(BaseAnimal.__annotations__, {'name': str})
71517159

7152-
assert Animal.__required_keys__ == frozenset(['name'])
7153-
assert Animal.__optional_keys__ == frozenset(['tail', 'voice'])
7154-
assert Animal.__annotations__ == {
7160+
self.assertEqual(Animal.__required_keys__, frozenset(['name']))
7161+
self.assertEqual(Animal.__optional_keys__, frozenset(['tail', 'voice']))
7162+
self.assertEqual(Animal.__annotations__, {
71557163
'name': str,
71567164
'tail': bool,
71577165
'voice': str,
7158-
}
7166+
})
71597167

7160-
assert Cat.__required_keys__ == frozenset(['name', 'fur_color'])
7161-
assert Cat.__optional_keys__ == frozenset(['tail', 'voice'])
7162-
assert Cat.__annotations__ == {
7168+
self.assertEqual(Cat.__required_keys__, frozenset(['name', 'fur_color']))
7169+
self.assertEqual(Cat.__optional_keys__, frozenset(['tail', 'voice']))
7170+
self.assertEqual(Cat.__annotations__, {
71637171
'fur_color': str,
71647172
'name': str,
71657173
'tail': bool,
71667174
'voice': str,
7167-
}
7175+
})
71687176

71697177
def test_required_notrequired_keys(self):
71707178
self.assertEqual(NontotalMovie.__required_keys__,
@@ -7394,11 +7402,11 @@ class C(B[int]):
73947402
self.assertEqual(C.__total__, True)
73957403
self.assertEqual(C.__optional_keys__, frozenset(['b']))
73967404
self.assertEqual(C.__required_keys__, frozenset(['a', 'c']))
7397-
assert C.__annotations__ == {
7405+
self.assertEqual(C.__annotations__, {
73987406
'a': T,
73997407
'b': KT,
74007408
'c': int,
7401-
}
7409+
})
74027410
with self.assertRaises(TypeError):
74037411
C[str]
74047412

@@ -7413,11 +7421,11 @@ class Point3D(Point2DGeneric[T], Generic[T, KT]):
74137421
self.assertEqual(Point3D.__total__, True)
74147422
self.assertEqual(Point3D.__optional_keys__, frozenset())
74157423
self.assertEqual(Point3D.__required_keys__, frozenset(['a', 'b', 'c']))
7416-
assert Point3D.__annotations__ == {
7424+
self.assertEqual(Point3D.__annotations__, {
74177425
'a': T,
74187426
'b': T,
74197427
'c': KT,
7420-
}
7428+
})
74217429
self.assertEqual(Point3D[int, str].__origin__, Point3D)
74227430

74237431
with self.assertRaises(TypeError):
@@ -7444,11 +7452,11 @@ class WithImplicitAny(B):
74447452
self.assertEqual(WithImplicitAny.__total__, True)
74457453
self.assertEqual(WithImplicitAny.__optional_keys__, frozenset(['b']))
74467454
self.assertEqual(WithImplicitAny.__required_keys__, frozenset(['a', 'c']))
7447-
assert WithImplicitAny.__annotations__ == {
7455+
self.assertEqual(WithImplicitAny.__annotations__, {
74487456
'a': T,
74497457
'b': KT,
74507458
'c': int,
7451-
}
7459+
})
74527460
with self.assertRaises(TypeError):
74537461
WithImplicitAny[str]
74547462

0 commit comments

Comments
 (0)