Skip to content

Commit be70dbb

Browse files
feat(test): add test for 2 base dict subclass
1 parent 830ea39 commit be70dbb

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

mypyc/test-data/run-dicts.test

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -265,6 +265,9 @@ class MyDict(dict):
265265
else:
266266
return super().setdefault(k, v) + 10
267267

268+
class MyComplexDict(Dict, MyDict):
269+
pass
270+
268271
def test_dict_keys() -> None:
269272
d: Dict[str, Optional[int]] = {'a': 1, 'b': 2}
270273
assert list(d.keys()) == ['a', 'b']
@@ -273,6 +276,10 @@ def test_dict_subclass_keys() -> None:
273276
d = MyDict({'a': 1, 'b': 2})
274277
assert list(d.keys()) == ['a', 'b']
275278

279+
def test_dict_subclass_complex_keys() -> None:
280+
d = MyComplexDict({'a': 1, 'b': 2})
281+
assert list(d.keys()) == ['a', 'b']
282+
276283
def test_dict_values() -> None:
277284
d: Dict[str, Optional[int]] = {'a': 1, 'b': 2}
278285
assert list(d.values()) == [1, 2]
@@ -281,6 +288,10 @@ def test_dict_subclass_values() -> None:
281288
d = MyDict({'a': 1, 'b': 2})
282289
assert list(d.values()) == [1, 2]
283290

291+
def test_dict_subclass_complex_values() -> None:
292+
d = MyComplexDict({'a': 1, 'b': 2})
293+
assert list(d.values()) == [1, 2]
294+
284295
def test_dict_items() -> None:
285296
d: Dict[str, Optional[int]] = {'a': 1, 'b': 2}
286297
assert list(d.items()) == [('a', 1), ('b', 2)]
@@ -289,6 +300,10 @@ def test_dict_subclass_items() -> None:
289300
d = MyDict({'a': 1, 'b': 2})
290301
assert list(d.items()) == [('a', 1), ('b', 2)]
291302

303+
def test_dict_subclass_complex_items() -> None:
304+
d = MyComplexDict({'a': 1, 'b': 2})
305+
assert list(d.items()) == [('a', 1), ('b', 2)]
306+
292307
def test_dict_setdefault() -> None:
293308
d: Dict[str, Optional[int]] = {'a': 1, 'b': 2}
294309
assert d.setdefault('a', 2) == 1

0 commit comments

Comments
 (0)