コード例 #1
0
ファイル: test.py プロジェクト: pzeballos/python-bootcamp
 def test_duplicate_edge(self):
     g = Graph()
     g.addNode(Node('A'))
     g.addNode(Node('B'))
     g.addEdge(Edge(Node('A'), Node('B')))  # A --> B
     with self.assertRaises(ValueError) as context:
         g.addEdge(Edge(Node('A'),Node('B')))
     self.assertTrue('The edge (Node: A, Node: B) is already in the graph' in context.exception)
コード例 #2
0
ファイル: test.py プロジェクト: pzeballos/python-bootcamp
 def test_add_edge(self):
     g = Graph()
     n1 = Node('A')
     n2 = Node('B')
     g.addNode(n1)
     g.addNode(n2)
     g.addEdge(Edge(n1, n2))  # A --> B
     self.assertIn(n2, g.edges[n1])
     self.assertEqual([], g.edges[n2])
コード例 #3
0
ファイル: test.py プロジェクト: pzeballos/python-bootcamp
 def test_edge_added_from_to__non_existing_node(self):
     """Test case: Check when an edge is added from or to a non existing node
     """
     g = Graph()
     g.addNode(Node('A'))
     g.addNode(Node('B'))
     with self.assertRaises(ValueError) as context:
         g.addEdge(Edge(Node('A'), Node('D')))  # A --> D
         g.addEdge(Edge(Node('D'), Node('A')))  # D --> A
     self.assertTrue('Node: A and Node: D must be in the graph' in context.exception)
コード例 #4
0
ファイル: test.py プロジェクト: pzeballos/python-bootcamp
 def test_method_getitem_of_Graph(self):
     """Test case:
     * Nodes A, B. C, D. Neighbors of A: B and D
     """
     g = Graph()
     g.addNode(Node('A'))
     g.addNode(Node('B'))
     g.addNode(Node('C'))
     g.addNode(Node('D'))
     g.addEdge(Edge(Node('A'), Node('B')))  # A --> B
     g.addEdge(Edge(Node('A'), Node('D')))  # A --> D
     self.assertIn(Node('B'), g[Node('A')])
     self.assertIn(Node('D'), g[Node('A')])
コード例 #5
0
ファイル: test.py プロジェクト: pzeballos/python-bootcamp
 def test_edge_type_Edge(self):
     """Test case: Check that edge is a Edge object
     """
     g = Graph()
     with self.assertRaises(TypeError) as context:
         g.addEdge(('A','B'))