265 lines
6 KiB
Python
265 lines
6 KiB
Python
import pytest
|
|
|
|
|
|
@pytest.mark.usefixtures("state")
|
|
def test_read_outgoing_node_none(state):
|
|
b = state.create_node()
|
|
assert b is not None
|
|
|
|
l = state.read_outgoing(b)
|
|
assert l is not None
|
|
assert set(l) == set([])
|
|
|
|
|
|
@pytest.mark.usefixtures("state")
|
|
def test_read_outgoing_node_one(state):
|
|
a = state.create_node()
|
|
b = state.create_node()
|
|
c = state.create_edge(a, b)
|
|
assert a is not None
|
|
assert b is not None
|
|
assert c is not None
|
|
|
|
l = state.read_outgoing(a)
|
|
assert l is not None
|
|
assert set(l) == set([c])
|
|
|
|
l = state.read_outgoing(b)
|
|
assert l is not None
|
|
assert set(l) == set([])
|
|
|
|
|
|
@pytest.mark.usefixtures("state")
|
|
def test_read_outgoing_node_multi(state):
|
|
a = state.create_node()
|
|
b = state.create_node()
|
|
c = state.create_edge(a, b)
|
|
d = state.create_edge(a, b)
|
|
e = state.create_edge(a, b)
|
|
assert a is not None
|
|
assert b is not None
|
|
assert c is not None
|
|
assert d is not None
|
|
assert e is not None
|
|
|
|
l = state.read_outgoing(a)
|
|
assert l is not None
|
|
assert set(l) == set([c, d, e])
|
|
|
|
l = state.read_outgoing(b)
|
|
assert l is not None
|
|
assert set(l) == set([])
|
|
|
|
|
|
@pytest.mark.usefixtures("state")
|
|
def test_read_outgoing_node_multi_others_unaffected(state):
|
|
a = state.create_node()
|
|
b = state.create_node()
|
|
c = state.create_edge(a, b)
|
|
d = state.create_edge(a, b)
|
|
e = state.create_edge(a, b)
|
|
assert a is not None
|
|
assert b is not None
|
|
assert c is not None
|
|
assert d is not None
|
|
assert e is not None
|
|
|
|
f = state.create_node()
|
|
assert f is not None
|
|
|
|
l = state.read_outgoing(a)
|
|
assert l is not None
|
|
assert set(l) == set([c, d, e])
|
|
|
|
l = state.read_outgoing(b)
|
|
assert l is not None
|
|
assert set(l) == set([])
|
|
|
|
l = state.read_outgoing(f)
|
|
assert l is not None
|
|
assert set(l) == set([])
|
|
|
|
|
|
@pytest.mark.usefixtures("state")
|
|
def test_read_outgoing_edge_none(state):
|
|
a = state.create_node()
|
|
b = state.create_node()
|
|
c = state.create_edge(a, b)
|
|
assert a is not None
|
|
assert b is not None
|
|
assert c is not None
|
|
|
|
l = state.read_outgoing(c)
|
|
assert l is not None
|
|
assert set(l) == set([])
|
|
|
|
|
|
@pytest.mark.usefixtures("state")
|
|
def test_read_outgoing_edge_one(state):
|
|
a = state.create_node()
|
|
b = state.create_node()
|
|
c = state.create_edge(a, b)
|
|
d = state.create_edge(c, a)
|
|
assert a is not None
|
|
assert b is not None
|
|
assert c is not None
|
|
assert d is not None
|
|
|
|
l = state.read_outgoing(c)
|
|
assert l is not None
|
|
assert set(l) == set([d])
|
|
|
|
l = state.read_outgoing(d)
|
|
assert l is not None
|
|
assert set(l) == set([])
|
|
|
|
|
|
@pytest.mark.usefixtures("state")
|
|
def test_read_outgoing_edge_multi(state):
|
|
a = state.create_node()
|
|
b = state.create_node()
|
|
c = state.create_edge(a, b)
|
|
d = state.create_edge(c, a)
|
|
e = state.create_edge(c, b)
|
|
f = state.create_edge(c, d)
|
|
assert a is not None
|
|
assert b is not None
|
|
assert c is not None
|
|
assert d is not None
|
|
assert e is not None
|
|
assert f is not None
|
|
|
|
l = state.read_outgoing(c)
|
|
assert l is not None
|
|
assert set(l) == set([d, e, f])
|
|
|
|
l = state.read_outgoing(d)
|
|
assert l is not None
|
|
assert set(l) == set([])
|
|
|
|
l = state.read_outgoing(e)
|
|
assert l is not None
|
|
assert set(l) == set([])
|
|
|
|
l = state.read_outgoing(f)
|
|
assert l is not None
|
|
assert set(l) == set([])
|
|
|
|
|
|
@pytest.mark.usefixtures("state")
|
|
def test_read_outgoing_nodevalue_none(state):
|
|
b = state.create_nodevalue(1)
|
|
assert b is not None
|
|
|
|
l = state.read_outgoing(b)
|
|
assert l is not None
|
|
assert set(l) == set([])
|
|
|
|
|
|
@pytest.mark.usefixtures("state")
|
|
def test_read_outgoing_nodevalue_one(state):
|
|
a = state.create_nodevalue(1)
|
|
b = state.create_node()
|
|
c = state.create_edge(a, b)
|
|
assert a is not None
|
|
assert b is not None
|
|
assert c is not None
|
|
|
|
l = state.read_outgoing(a)
|
|
assert l is not None
|
|
assert set(l) == set([c])
|
|
|
|
l = state.read_outgoing(b)
|
|
assert l is not None
|
|
assert set(l) == set([])
|
|
|
|
|
|
@pytest.mark.usefixtures("state")
|
|
def test_read_outgoing_nodevalue_multi(state):
|
|
a = state.create_nodevalue(1)
|
|
b = state.create_node()
|
|
c = state.create_edge(a, b)
|
|
d = state.create_edge(a, b)
|
|
e = state.create_edge(a, b)
|
|
assert a is not None
|
|
assert b is not None
|
|
assert c is not None
|
|
assert d is not None
|
|
assert e is not None
|
|
|
|
l = state.read_outgoing(a)
|
|
assert l is not None
|
|
assert set(l) == set([c, d, e])
|
|
|
|
l = state.read_outgoing(b)
|
|
assert l is not None
|
|
assert set(l) == set([])
|
|
|
|
|
|
@pytest.mark.usefixtures("state")
|
|
def test_read_outgoing_nodevalue_multi_others_unaffected(state):
|
|
a = state.create_nodevalue(1)
|
|
b = state.create_node()
|
|
c = state.create_edge(a, b)
|
|
d = state.create_edge(a, b)
|
|
e = state.create_edge(a, b)
|
|
assert a is not None
|
|
assert b is not None
|
|
assert c is not None
|
|
assert d is not None
|
|
assert e is not None
|
|
|
|
f = state.create_nodevalue(1)
|
|
assert f is not None
|
|
|
|
l = state.read_outgoing(a)
|
|
assert l is not None
|
|
assert set(l) == set([c, d, e])
|
|
|
|
l = state.read_outgoing(b)
|
|
assert l is not None
|
|
assert set(l) == set([])
|
|
|
|
l = state.read_outgoing(f)
|
|
assert l is not None
|
|
assert set(l) == set([])
|
|
|
|
|
|
@pytest.mark.usefixtures("state")
|
|
def test_read_outgoing_node_deleted(state):
|
|
b = state.create_node()
|
|
assert b is not None
|
|
|
|
n = state.delete_node(b)
|
|
assert n is None
|
|
|
|
l = state.read_outgoing(b)
|
|
assert l is None
|
|
|
|
|
|
@pytest.mark.usefixtures("state")
|
|
def test_read_outgoing_nodevalue_deleted(state):
|
|
b = state.create_nodevalue(1)
|
|
assert b is not None
|
|
|
|
n = state.delete_node(b)
|
|
assert n is None
|
|
|
|
l = state.read_outgoing(b)
|
|
assert l is None
|
|
|
|
|
|
@pytest.mark.usefixtures("state")
|
|
def test_read_outgoing_edge_deleted(state):
|
|
a = state.create_node()
|
|
b = state.create_node()
|
|
c = state.create_edge(a, b)
|
|
assert a is not None
|
|
assert b is not None
|
|
assert c is not None
|
|
|
|
n = state.delete_edge(c)
|
|
assert n is None
|
|
|
|
l = state.read_outgoing(c)
|
|
assert l is None
|