def test_add_node(self): """ Test adding nodes to a graph. """ g = Graph() g.nodes.append( Node(ID="node1") ) g.add_node("node2") g.add_node( Node("node3") ) self.assertEqual(len(g), 3)
def test_add_nonstring_nodes(self): """ Test adding nodes with non-string names. """ g = Graph() n = g.add_node(6) self.assertEqual(n.ID, "6") n = g.add_node(3.14) self.assertEqual(n.ID, "3.14") self.assertEqual(len(g), 2)
def test_delete_node(self): """ Test removing a node from a graph. """ g = Graph() added1 = g.add_node("node1") added2 = g.add_node("node2") self.assertEqual(len(g.nodes), 2) g.delete_node("node1") g.delete_node(added2) self.assertEqual(len(g.nodes), 0)
def test_add_equal_nodes(self): """ Test adding nodes with existing names. """ g = Graph() g.add_node("a", label="test1") g.add_node("a", fixedsize=True) g.add_node("a", label="test2", shape="circle") self.assertEqual(len(g), 1) n = g.get_node("a") self.assertTrue(n.fixedsize) self.assertEqual(n.label, "test2") self.assertEqual(n.shape, "circle")
self._on_close( info ) else: self._on_close( info ) #------------------------------------------------------------------------------ # Stand-alone call: #------------------------------------------------------------------------------ if __name__ == "__main__": import sys logger = logging.getLogger() logger.addHandler(logging.StreamHandler(sys.stdout)) logger.setLevel(logging.DEBUG) graph = Graph(ID="G") # sg1 = Subgraph(ID="SG1") # graph.subgraphs.append(sg1) # sg2 = Subgraph(ID="SG2") # sg1.subgraphs.append(sg2) # # n1 = Node(ID="N1") # sg2.nodes = [n1] graph.add_node("node1") graph.add_node("node2") view_model = GraphViewModel(model=graph) view_model.configure_traits() # EOF -------------------------------------------------------------------------