示例#1
0
class EdgePropertiesTests(unittest.TestCase):
    def setUp(self):
        self.graph = Graph(nodes = range(1, 10))
        self.graph.addedge((1, 2))
        self.graph.addedge((2, 3))
        self.graph.addedge((3, 1))
        self.graph.addedge((4, 5))

    def testIsolatedNode(self):
        nodes = self.graph.getedgesintonode(6)
        self.assertEqual(nodes, [])
        nodes = self.graph.getedgesoutofnode(6)
        self.assertEqual(nodes, [])

    def testNonIsolatedNode(self):
        nodes = self.graph.getedgesintonode(2)
        self.assertEqual(nodes, [(1, 2)])
        nodes = self.graph.getedgesoutofnode(2)
        self.assertEqual(nodes, [(2, 3)])

    def testAddEdge(self):
        self.graph.addedge((3, 5))
        self.assert_((3, 5) in self.graph.getedgesintonode(5))
        self.assert_((3, 5) in self.graph.getedgesoutofnode(3))
        self.assert_((3, 5) in self.graph.edges)

    def testRemoveEdge(self):
        self.graph.removeedge((1, 2))
        self.assert_((1, 2) not in self.graph.getedgesintonode(2))
        self.assert_((1, 2) not in self.graph.getedgesoutofnode(1))
        self.assert_((1, 2) not in self.graph.edges)
示例#2
0
class EdgesTests(unittest.TestCase):
    def setUp(self):
        self.graph = Graph(nodes = range(1, 10), edges = [(1,2)])

    def testLenWhenInitEdges(self):
        self.assertEqual(len(self.graph.edges), 1)

    def testInitNonEdges(self):
        self.assertRaises(AssertionError, Graph,
                          nodes = range(1, 10), edges = [(1,22)])

    def testLenWhenAddedEdge(self):
        previouslen = len(self.graph.edges)
        self.graph.addedge((2, 3))
        self.assertEqual(len(self.graph.edges), previouslen + 1)

    def testLenWhenNonAddedEdge(self):
        previouslen = len(self.graph.edges)
        self.graph.addedge((1, 2))
        self.assertEqual(len(self.graph.edges), previouslen)

    def testAddedEdge(self):
        self.graph.addedge((2, 3))
        self.assert_((2, 3) in self.graph.edges)

    def testErrorWhenAddingEdgeWithInvalidNode(self):
        self.assertRaises(AssertionError, self.graph.addedge, (1, 45))

    def testRemovedEdge(self):
        self.graph.removeedge((1, 2))
        self.assert_((1, 2) not in self.graph.edges)

    def testRemoveInvalidEdge(self):
        self.graph.removeedge((2, 3))
        self.assert_((2, 3) not in self.graph.edges)

    def testRemoveEdgeWithInvalidNode(self):
        self.graph.removeedge((2, 33))
        self.assert_((2, 33) not in self.graph.edges)