def test_listwrapper_wraps(self): from kotti.sqla import NestedMutationDict from kotti.sqla import NestedMutationList wrapper = NestedMutationList( [{'name': 'andy', 'age': 77, 'children': []}]) changed = wrapper.changed = MagicMock() assert isinstance(wrapper[0], NestedMutationDict) assert isinstance(wrapper[0]['children'], NestedMutationList) assert changed.call_count == 0
def test_listwrapper_basics(self): from kotti.sqla import NestedMutationList data = [] wrapper = NestedMutationList(data) changed = wrapper.changed = MagicMock() wrapper.append(5) assert data == [5] assert wrapper == [5] assert wrapper[0] == 5 assert changed.call_count == 1 wrapper.insert(0, 33) assert data == [33, 5] assert wrapper[0] == 33 assert changed.call_count == 2 del wrapper[0] assert data == [5] assert wrapper[0] == 5 assert changed.call_count == 3
def test_listwrapper_wraps(self): from kotti.sqla import NestedMutationDict from kotti.sqla import NestedMutationList wrapper = NestedMutationList([{ "name": "andy", "age": 77, "children": [] }]) assert getattr(wrapper, "get", False) is False changed = wrapper.changed = MagicMock() assert isinstance(wrapper[0], NestedMutationDict) assert isinstance(wrapper[0]["children"], NestedMutationList) assert changed.call_count == 0
def test_listwrapper_changed(self): from kotti.sqla import NestedMutationList data = [] wrapper = NestedMutationList(data) changed = wrapper.changed = MagicMock() wrapper.append(5) assert data == [5] assert wrapper == [5] assert wrapper[0] == 5 assert changed.call_count == 1 wrapper.insert(0, 33) assert data == [33, 5] assert wrapper[0] == 33 assert changed.call_count == 2 del wrapper[0] assert data == [5] assert wrapper[0] == 5 assert changed.call_count == 3
def test_listwrapper_comparison(self): from kotti.sqla import NestedMutationList assert NestedMutationList({}) == NestedMutationList({}) assert (NestedMutationList(['ok']) == NestedMutationList(['ok']))