def assign(value_key: Any, val: ValueNode) -> None: assert val._get_parent() is None v = val v._set_parent(self) v._set_key(value_key) _update_types(v, self._metadata.element_type, None) self.__dict__["_content"][value_key] = v
def test_eq(node: ValueNode, value: Any, expected: Any) -> None: assert (node == value) == expected assert (node != value) != expected assert (value == node) == expected assert (value != node) != expected # Check hash except for unhashable types (dict/list). if not isinstance(value, (dict, list)): assert (node.__hash__() == value.__hash__()) == expected
def test_eq(node: ValueNode, value: Any, expected: Any) -> None: assert (node == value) == expected assert (node != value) != expected assert (value == node) == expected assert (value != node) != expected assert (node.__hash__() == value.__hash__()) == expected
def test_illegal_assignment(node: ValueNode, value: Any) -> None: with pytest.raises(ValidationError): node._set_value(value)
def assign(value_key: Any, val: ValueNode) -> None: assert val._get_parent() is None v = val v._set_parent(self) v._set_key(value_key) self.__dict__["_content"][value_key] = v