Esempio n. 1
0
    def test_edge_arithmetic(self):
        # don't really have to test weight, since that should be accounted for
        average_degree.increment_edge(1, 2, self.graph)
        self.num_edge_and_nodes_assert(2, 1, self.graph)
        average_degree.increment_edge(2, 3, self.graph)
        self.num_edge_and_nodes_assert(3, 2, self.graph)
        average_degree.increment_edge(4, 5, self.graph)
        self.num_edge_and_nodes_assert(5, 3, self.graph)

        # increment edge but not node
        average_degree.increment_edge(1, 4, self.graph)
        self.num_edge_and_nodes_assert(5, 4, self.graph)

        # this checks that incrementing an already existing edge doesn't do anything
        average_degree.increment_edge(1, 2, self.graph)
        self.num_edge_and_nodes_assert(5, 4, self.graph)

        # this checks decrementing weight > 1 edge doesn't remove anything
        average_degree.decrement_edge(1, 2, self.graph)
        self.num_edge_and_nodes_assert(5, 4, self.graph)

        # this checks decrementing weight = 1 DOES remove something
        average_degree.decrement_edge(2, 3, self.graph)
        self.num_edge_and_nodes_assert(4, 3, self.graph)

        # remove edge but not node
        average_degree.decrement_edge(1, 4, self.graph)
        self.num_edge_and_nodes_assert(4, 2, self.graph)

        # remove two nodes and one edge
        average_degree.decrement_edge(4, 5, self.graph)
        self.num_edge_and_nodes_assert(2, 1, self.graph)
Esempio n. 2
0
 def test_edge_errors(self):
     average_degree.increment_edge(1, 2, self.graph)
     self.assertRaises(TypeError, average_degree.decrement_edge, 1, 3, self.graph)
     average_degree.decrement_edge(1, 2, self.graph)
     self.assertRaises(TypeError, average_degree.decrement_edge, 1, 2, self.graph)