def test_bound_node_equality(graph): alice_1 = Node(name="Alice") alice_1.graph = graph alice_1.identity = 999 alice_2 = Node(name="Alice") alice_2.graph = alice_1.graph alice_2.identity = alice_1.identity assert alice_1 == alice_2
def test_node_hashes(graph): node_1 = Node("Person", name="Alice") node_1.graph = graph node_1.identity = 999 node_2 = Node("Person", name="Alice") node_2.graph = node_1.graph node_2.identity = node_1.identity assert node_1 is not node_2 assert hash(node_1) == hash(node_2)
def test_bound_node_equals_unbound_node_with_same_properties(graph): alice_1 = Node(name="Alice") alice_1.graph = graph alice_1.identity = 999 alice_2 = Node(name="Alice") assert set(alice_1.labels) == set(alice_2.labels) assert dict(alice_1) == dict(alice_2)
def test_can_graph_pull_node(graph): alice_1 = Node() alice_2 = Node("Person", name="Alice") graph.create(alice_2) assert set(alice_1.labels) == set() assert dict(alice_1) == {} alice_1.graph = alice_2.graph alice_1.identity = alice_2.identity graph.pull(alice_1) assert set(alice_1.labels) == set(alice_2.labels) assert dict(alice_1) == dict(alice_2)