more tests
This commit is contained in:
@@ -99,6 +99,14 @@ class TestDAGSetCallbacks:
|
||||
assert len(added) == 1
|
||||
|
||||
def test_on_remove_callback(self) -> None:
|
||||
removed: list[int] = []
|
||||
s = DAGSetView({1, 2, 3})
|
||||
s.on_remove = lambda v: removed.append(v)
|
||||
s.remove(2)
|
||||
assert 2 in removed
|
||||
assert len(removed) == 1
|
||||
|
||||
def test_on_discard_callback(self) -> None:
|
||||
removed: list[int] = []
|
||||
s = DAGSetView({1, 2, 3})
|
||||
s.on_remove = lambda v: removed.append(v)
|
||||
@@ -136,6 +144,26 @@ class TestDAGSetCallbacks:
|
||||
assert 2 in removed
|
||||
assert 3 in removed
|
||||
|
||||
def test_iand_triggers_callbacks(self) -> None:
|
||||
removed: list[int] = []
|
||||
s = DAGSetView({1, 2, 3, 4})
|
||||
s.on_remove = lambda v: removed.append(v)
|
||||
s &= {2, 3}
|
||||
assert 1 in removed
|
||||
assert 4 in removed
|
||||
assert len(removed) == 2
|
||||
|
||||
def test_ixor_triggers_callbacks(self) -> None:
|
||||
added: list[int] = []
|
||||
removed: list[int] = []
|
||||
s = DAGSetView({1, 2, 3})
|
||||
s.on_add = lambda v: added.append(v)
|
||||
s.on_remove = lambda v: removed.append(v)
|
||||
s ^= {3, 4, 5}
|
||||
assert 3 in removed
|
||||
assert 4 in added
|
||||
assert 5 in added
|
||||
|
||||
|
||||
class TestDAGSetInPlaceOperators:
|
||||
"""Test in-place set operators."""
|
||||
|
||||
Reference in New Issue
Block a user