def make_a_simplegraph():
    nodes = (Node(5), Node("woo"), Node(object()), Node("pikachu"))
    nodes[0].pointers.append(nodes[1])
    nodes[0].pointers.append(nodes[2])
    nodes[1].pointers.append(nodes[2])
    nodes[2].pointers.append(nodes[3])
    nodes[3].pointers.append(nodes[1])
    nodes[3].pointers.append(nodes[0])
    return SimpleGraph(nodes)
Esempio n. 2
0
    def test_LinkedList_remove(self):
        l1 = LinkedList()
        l1.insert(0)
        l1.insert(1)
        l1.insert(2)

        Node3 = Node(3)
        with self.assertRaises(ValueError):
            l1.remove(Node3)
            l1.remove_val(3)

        self.assertEqual(l1.size(), 3)
        Node2 = l1.search(2)
        l1.remove(Node2)
        self.assertEqual(l1.size(), 2)
        Node0 = l1.search(0)
        l1.remove(Node0)
        self.assertEqual(l1.size(), 1)
        Node1 = l1.search(1)
        l1.remove(Node1)
        self.assertEqual(l1.size(), 0)

        with self.assertRaises(ValueError):
            l1.remove(Node1)
            l1.remove(Node0)
            l1.remove(Node2)
            l1.remove_val(1)
            l1.remove_val(0)
            l1.remove_val(2)
def test_adjacent():
    g = make_a_simplegraph()
    node = g.nodes()[2]
    helper = Node("helper")
    g.add_node(helper)
    assert not g.adjacent(helper, node)
    g.add_edge(helper, node)
    assert g.adjacent(helper, node)
def test_neighbors():
    g = make_a_simplegraph()
    node = g.nodes()[2]
    helper = Node("helper")
    g.add_node(helper)
    assert node not in g.neighbors(helper)
    g.add_edge(helper, node)
    assert node in g.neighbors(helper)
def test_del_edge():
    g = make_a_simplegraph()
    node = g.nodes()[2]
    helper = Node("helper")
    g.add_node(helper)
    g.add_edge(helper, node)
    assert (helper, node) in g.edges()
    g.del_edge(helper, node)
    assert (helper, node) not in g.edges()
Esempio n. 6
0
    def test_IterNode(self):
        i1 = IterNode(None)
        self.assertIsNone(i1.cur)

        with self.assertRaises(StopIteration):
            i1.next()

        Node0 = Node(0)
        i2 = IterNode(Node0)
        self.assertIsNotNone(i2.cur)
        Node1 = i2.next()
        self.assertEqual(Node0, Node1)

        with self.assertRaises(StopIteration):
            i2.next()
Esempio n. 7
0
 def test_Node___init__(self):
     Node0 = Node(0)
     self.assertEqual(Node0.val, 0)
     self.assertIsNone(Node0.link)
def test_has_node():
    g = make_a_simplegraph()
    node = g.nodes()[0]
    assert g.has_node(node)
    assert not g.has_node(Node("Nope"))
def test_add_node():
    g = make_a_simplegraph()
    node = Node("Me!")
    g.add_node(node)
    assert node in g.nodes()