Exemplo n.º 1
0
def test_0d():
    """Everything is one."""

    g = SimpleGraph()
    g.add_link(23, 23)
    groups = g.get_groups()
    assert groups == [[23]]
Exemplo n.º 2
0
def test_single_link_same_type():
    """A single link (same type)"""

    g = SimpleGraph()
    g.add_link('x ', ' y')
    groups = _sort_groups(g.get_groups())
    assert groups == [[' y', 'x ']]
Exemplo n.º 3
0
def test_single_link_same_type():
    """A single link (same type)"""

    g = SimpleGraph()
    g.add_link('x ', ' y')
    groups = _sort_groups(g.get_groups())
    assert groups == [[' y', 'x ']]
Exemplo n.º 4
0
def test_0d():
    """Everything is one."""

    g = SimpleGraph()
    g.add_link(23, 23)
    groups = g.get_groups()
    assert groups == [[23]]
Exemplo n.º 5
0
def test_0d_really():
    """Everything is one even if we like to repeat."""

    g = SimpleGraph()
    g.add_link(' ', ' ')
    g.add_link(' ', ' ')
    groups = g.get_groups()
    assert groups == [[' ']]
Exemplo n.º 6
0
def test_0d_really():
    """Everything is one even if we like to repeat."""

    g = SimpleGraph()
    g.add_link(' ', ' ')
    g.add_link(' ', ' ')
    groups = g.get_groups()
    assert groups == [[' ']]
Exemplo n.º 7
0
def test_single_link_diff_type():
    """A single link with different types for the nodes"""

    g = SimpleGraph()
    g.add_link(' x ', True)

    # can not sort this list, so explicitly check
    groups = g.get_groups()
    assert len(groups) == 1
    assert len(groups[0]) == 2
    assert ' x ' in groups[0]
    assert True in groups[0]
Exemplo n.º 8
0
def test_single_link_diff_type():
    """A single link with different types for the nodes"""

    g = SimpleGraph()
    g.add_link(' x ', True)

    # can not sort this list, so explicitly check
    groups = g.get_groups()
    assert len(groups) == 1
    assert len(groups[0]) == 2
    assert ' x ' in groups[0]
    assert True in groups[0]
Exemplo n.º 9
0
def test_odd_nodes_connected():
    """Connect up nodes of different types"""

    g = SimpleGraph()
    g.add_link(True, 5)
    g.add_link(5, False)

    groups = g.get_groups()
    assert len(groups) == 1
    assert len(groups[0]) == 3
    assert True in groups[0]
    assert False in groups[0]
    assert 5 in groups[0]
Exemplo n.º 10
0
def test_no_pairs():
    """no pairs"""

    g = SimpleGraph()

    for i in range(5, 11):
        g.add_link(i, i)

    groups = g.get_groups()
    assert len(groups) == 6

    vs = _sort_groups(groups)
    assert vs == [[5], [6], [7], [8], [9], [10]], vs
Exemplo n.º 11
0
def test_odd_nodes_connected():
    """Connect up nodes of different types"""

    g = SimpleGraph()
    g.add_link(True, 5)
    g.add_link(5, False)

    groups = g.get_groups()
    assert len(groups) == 1
    assert len(groups[0]) == 3
    assert True in groups[0]
    assert False in groups[0]
    assert 5 in groups[0]
Exemplo n.º 12
0
def test_no_pairs():
    """no pairs"""

    g = SimpleGraph()

    for i in range(5, 11):
        g.add_link(i, i)

    groups = g.get_groups()
    assert len(groups) == 6

    vs = _sort_groups(groups)
    assert vs == [[5], [6], [7], [8], [9], [10]], vs
Exemplo n.º 13
0
def test_one_pair(n1, n2):
    """one pair"""

    g = SimpleGraph()

    for i in range(5, 11):
        g.add_link(i, i)

    g.add_link(n1, n2)

    groups = g.get_groups()
    assert len(groups) == 5

    vs = _sort_groups(groups)
    assert vs == [[5], [6], [7], [8, 9], [10]], vs
Exemplo n.º 14
0
def test_one_pair(n1, n2):
    """one pair"""

    g = SimpleGraph()

    for i in range(5, 11):
        g.add_link(i, i)

    g.add_link(n1, n2)

    groups = g.get_groups()
    assert len(groups) == 5

    vs = _sort_groups(groups)
    assert vs == [[5], [6], [7], [8, 9], [10]], vs
Exemplo n.º 15
0
def test_two_pairs(n1, n2, m1, m2):
    """two pairs"""

    g = SimpleGraph()

    for i in range(5, 11):
        g.add_link(i, i)

    g.add_link(n1, n2)
    g.add_link(m1, m2)

    groups = g.get_groups()
    assert len(groups) == 4

    vs = _sort_groups(groups)
    assert vs == [[5], [6], [7, 8, 9], [10]], vs
Exemplo n.º 16
0
def test_two_pairs(n1, n2, m1, m2):
    """two pairs"""

    g = SimpleGraph()

    for i in range(5, 11):
        g.add_link(i, i)

    g.add_link(n1, n2)
    g.add_link(m1, m2)

    groups = g.get_groups()
    assert len(groups) == 4

    vs = _sort_groups(groups)
    assert vs == [[5], [6], [7, 8, 9], [10]], vs
Exemplo n.º 17
0
def test_odd_nodes_unconnected():
    """Self link plus another link, unconnected (and test node types)"""

    g = SimpleGraph()
    g.add_link('', '')
    g.add_link(300, 2)

    # can not sort this list, so explicitly check
    groups = g.get_groups()
    assert len(groups) == 2
    g1 = groups[0]
    g2 = groups[1]

    def pred1(g):
        """Is the group the ''->'' link?"""
        return len(g) == 1 and g[0] == ''

    def pred2(g):
        """Is the group the 2->300 link?"""
        return len(g) == 2 and 2 in g and 300 in g

    assert (pred1(g1) and pred2(g2)) or (pred1(g2) and pred2(g1))
Exemplo n.º 18
0
def test_odd_nodes_unconnected():
    """Self link plus another link, unconnected (and test node types)"""

    g = SimpleGraph()
    g.add_link('', '')
    g.add_link(300, 2)

    # can not sort this list, so explicitly check
    groups = g.get_groups()
    assert len(groups) == 2
    g1 = groups[0]
    g2 = groups[1]

    def pred1(g):
        """Is the group the ''->'' link?"""
        return len(g) == 1 and g[0] == ''

    def pred2(g):
        """Is the group the 2->300 link?"""
        return len(g) == 2 and 2 in g and 300 in g

    assert (pred1(g1) and pred2(g2)) or (pred1(g2) and pred2(g1))
Exemplo n.º 19
0
def test_empty():
    """No nodes."""

    g = SimpleGraph()
    groups = g.get_groups()
    assert groups == []
Exemplo n.º 20
0
def test_empty():
    """No nodes."""

    g = SimpleGraph()
    groups = g.get_groups()
    assert groups == []