def test_add_invalid_branches(self): graph = MagicMock(Graph) graph2 = MagicMock(Graph) node = Node(graph) self.assertEqual(graph, node.graph) b1 = MagicMock(Branch) b1.graph = graph2 b1.end = node def add_ingoing(): node.add_ingoing_branch(b1) self.assertRaises(ValueError, add_ingoing) b2 = MagicMock(Branch) b2.graph = graph2 b2.start = node def add_outgoing(): node.add_outgoing_branch(b2) self.assertRaises(ValueError, add_outgoing) b1.graph = graph b1.start = MagicMock(Node) b1.end = MagicMock(Node) b2.graph = graph b2.start = MagicMock(Node) b2.end = MagicMock(Node) self.assertRaises(ValueError, add_ingoing) self.assertRaises(ValueError, add_outgoing) node.graph = None b1.start = node b1.end = node b2.start = node b2.end = node self.assertRaises(ValueError, add_ingoing) self.assertRaises(ValueError, add_outgoing) node.graph = graph add_ingoing() add_outgoing() self.assertRaises(ValueError, add_ingoing) self.assertRaises(ValueError, add_outgoing)
def test_set_graph(self): graph = MagicMock(Graph) node = Node(graph) self.assertEqual(graph, node.graph) graph2 = MagicMock(Graph) def set_graph(): node.graph = graph2 self.assertRaises(ValueError, set_graph) node.graph = None self.assertIsNone(node.graph) node.graph = graph2 self.assertEqual(graph2, node.graph)