asserting type

This commit is contained in:
John Lancaster
2026-02-22 18:28:33 -06:00
parent 0e58dc7a86
commit 406024d990
2 changed files with 16 additions and 2 deletions

3
.gitignore vendored
View File

@@ -8,3 +8,6 @@ wheels/
# Virtual environments
.venv
*.ipynb

View File

@@ -1,3 +1,4 @@
from hooked_containers import events as e
from hooked_containers.mapping import HookedMapping
@@ -25,14 +26,24 @@ class TestHookedMapping:
class TestMappingOps:
def test_setitem(self):
added = []
m = HookedMapping({}, lambda e: added.append(e.item))
def hook(event: e.ChangeEvent):
assert isinstance(event, e.AddItemEvent)
added.append(event.item)
m = HookedMapping({}, hook)
m["a"] = 1
assert m._data == {"a": 1}
assert added == [1]
def test_nested_setitem(self):
added = []
m = HookedMapping({"a": {}}, lambda e: added.append(e.item))
def hook(event: e.ChangeEvent):
assert isinstance(event, e.AddItemEvent)
added.append(event.item)
m = HookedMapping({"a": {}}, hook)
m["a"]["x"] = 1
assert m._data == {"a": {"x": 1}}
assert added == [1]