mirror of
https://github.com/python/cpython.git
synced 2025-08-03 00:23:06 +00:00
bpo-42059: Fix required/optional keys for TypedDict(..., total=False) (GH-22736) (GH-23747)
(cherry picked from commit 67b769f515
)
Co-authored-by: Alex Grönholm <alex.gronholm@nextday.fi>
This commit is contained in:
parent
20bc40ef44
commit
dbb00062dc
3 changed files with 7 additions and 2 deletions
|
@ -3891,10 +3891,14 @@ class TypedDictTests(BaseTestCase):
|
|||
self.assertEqual(D(), {})
|
||||
self.assertEqual(D(x=1), {'x': 1})
|
||||
self.assertEqual(D.__total__, False)
|
||||
self.assertEqual(D.__required_keys__, frozenset())
|
||||
self.assertEqual(D.__optional_keys__, {'x'})
|
||||
|
||||
self.assertEqual(Options(), {})
|
||||
self.assertEqual(Options(log_level=2), {'log_level': 2})
|
||||
self.assertEqual(Options.__total__, False)
|
||||
self.assertEqual(Options.__required_keys__, frozenset())
|
||||
self.assertEqual(Options.__optional_keys__, {'log_level', 'log_path'})
|
||||
|
||||
def test_optional_keys(self):
|
||||
class Point2Dor3D(Point2D, total=False):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue