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)
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)