def test_access(self) -> None: proxy = Proxy() proxy.nested.value path = _get_ops(proxy) self.assertEqual(path, [GetAttr("nested"), GetAttr("value")])
def test_empty(self) -> None: proxy = Proxy() path = _get_ops(proxy) self.assertEqual(path, [])
def test_getitem(self) -> None: proxy = Proxy() proxy.nested.value[1] path = _get_ops(proxy) self.assertEqual(path, [GetAttr("nested"), GetAttr("value"), GetItem(1)])
def test_set_multiple(self) -> None: proxy = Proxy() proxy.value1 = 1 proxy.value2 = 2 self.assertEqual(_get_ops(proxy), [SetAttr('value1', 1), SetAttr('value2', 2)])
def test_nested_set(self) -> None: proxy = Proxy() proxy.nested.value = 12 self.assertEqual(_get_ops(proxy), [GetAttr('nested'), SetAttr('value', 12)])
def test_set(self) -> None: proxy = Proxy() proxy.value = 5 self.assertEqual(_get_ops(proxy), [SetAttr('value', 5)])
def __get_ops(self, proxy: typing.Any) -> typing.List[PropertyOp]: return _get_ops(proxy)