示例#1
0
 def test_length_4_undirected(self):
     g = graph.cycle(4, directed=False)
     edges = [(0, 1), (1, 0), (1, 2), (2, 1), (2, 3), (3, 2), (3, 0), (0, 3)]
     self.assertEqual(g.vertices, [0, 1, 2, 3])
     self.assertEqual(g.edges, edges)
     for vertex, neighbors in [(0, (1, 3)), (1, (0, 2)), (2, (1, 3)), (3, (0, 2))]:
         self.assertEqual(set(g.out_vertices(vertex)), set(neighbors))
     for vertex, neighbors in [(0, (1, 3)), (1, (0, 2)), (2, (1, 3)), (3, (0, 2))]:
         self.assertEqual(set(g.in_vertices(vertex)), set(neighbors))
示例#2
0
 def test_length_4_directed(self):
     g = graph.cycle(4, directed=True)
     self.assertEqual(g.vertices, [0, 1, 2, 3])
     self.assertEqual(g.edges, [(0, 1), (1, 2), (2, 3), (3, 0)])
     self.assertEqual(g.out_vertices(0), [1])
     self.assertEqual(g.out_vertices(1), [2])
     self.assertEqual(g.out_vertices(2), [3])
     self.assertEqual(g.out_vertices(3), [0])
     self.assertEqual(g.in_vertices(0), [3])
     self.assertEqual(g.in_vertices(1), [0])
     self.assertEqual(g.in_vertices(2), [1])
     self.assertEqual(g.in_vertices(3), [2])
示例#3
0
 def test_length_4_directed(self):
     g = graph.cycle(4, directed=True)
     self.assertEqual(g.vertices, [0, 1, 2, 3])
     self.assertEqual(g.edges, [(0, 1), (1, 2), (2, 3), (3, 0)])
     self.assertEqual(g.out_vertices(0), [1])
     self.assertEqual(g.out_vertices(1), [2])
     self.assertEqual(g.out_vertices(2), [3])
     self.assertEqual(g.out_vertices(3), [0])
     self.assertEqual(g.in_vertices(0), [3])
     self.assertEqual(g.in_vertices(1), [0])
     self.assertEqual(g.in_vertices(2), [1])
     self.assertEqual(g.in_vertices(3), [2])
示例#4
0
 def test_cycle(self):
     g = graph.cycle(1, directed=False)
     self.assertEqual(g.vertices(), [0])
     self.assertEqual(g.edges(), [(0, 0)])
     self.assertEqual(g.directed, False)
     g = graph.cycle(1, directed=True)
     self.assertEqual(g.vertices(), [0])
     self.assertEqual(g.edges(), [(0, 0)])
     self.assertEqual(g.directed, True)
     g = graph.cycle(2, directed=True)
     self.assertEqual(g.vertices(), [0, 1])
     self.assertEqual(g.edges(), [(0, 1), (1, 0)])
     g = graph.cycle(2, directed=False)
     self.assertEqual(g.vertices(), [0, 1])
     self.assertEqual(g.edges(), [(0, 1), (1, 0)])
     g = graph.cycle(3, directed=True)
     self.assertEqual(g.vertices(), [0, 1, 2])
     self.assertEqual(g.edges(), [(0, 1), (1, 2), (2, 0)])
     g = graph.cycle(3, directed=False)
     edges = [(0, 1), (1, 0), (1, 2), (2, 1), (2, 0), (0, 2)]
     self.assertEqual(g.vertices(), [0, 1, 2])
     self.assertEqual(g.edges(), edges)
     g = graph.cycle(4, directed=True)
     self.assertEqual(g.vertices(), [0, 1, 2, 3])
     self.assertEqual(g.edges(), [(0, 1), (1, 2), (2, 3), (3, 0)])
     self.assertEqual(g.out_vertices(0), [1])
     self.assertEqual(g.out_vertices(1), [2])
     self.assertEqual(g.out_vertices(2), [3])
     self.assertEqual(g.out_vertices(3), [0])
     self.assertEqual(g.in_vertices(0), [3])
     self.assertEqual(g.in_vertices(1), [0])
     self.assertEqual(g.in_vertices(2), [1])
     self.assertEqual(g.in_vertices(3), [2])
     g = graph.cycle(4, directed=False)
     edges = [(0, 1), (1, 0), (1, 2), (2, 1),
              (2, 3), (3, 2), (3, 0), (0, 3)]
     self.assertEqual(g.vertices(), [0, 1, 2, 3])
     self.assertEqual(g.edges(), edges)
     for vertex, neighbors in [
         (0, (1, 3)), (1, (0, 2)), (2, (1, 3)), (3, (0, 2))]:
         self.assertEqual(set(g.out_vertices(vertex)), set(neighbors))
     for vertex, neighbors in [
         (0, (1, 3)), (1, (0, 2)), (2, (1, 3)), (3, (0, 2))]:
         self.assertEqual(set(g.in_vertices(vertex)), set(neighbors))
示例#5
0
 def test_length_3_undirected(self):
     g = graph.cycle(3, directed=False)
     edges = [(0, 1), (1, 0), (1, 2), (2, 1), (2, 0), (0, 2)]
     self.assertEqual(g.vertices, [0, 1, 2])
     self.assertEqual(g.edges, edges)
示例#6
0
 def test_length_3_directed(self):
     g = graph.cycle(3, directed=True)
     self.assertEqual(g.vertices, [0, 1, 2])
     self.assertEqual(g.edges, [(0, 1), (1, 2), (2, 0)])
示例#7
0
 def test_length_2_undirected(self):
     g = graph.cycle(2, directed=False)
     self.assertEqual(g.vertices, [0, 1])
     self.assertEqual(g.edges, [(0, 1), (1, 0)])
示例#8
0
 def test_length_1_undirected(self):
     g = graph.cycle(1, directed=False)
     self.assertEqual(g.vertices, [0])
     self.assertEqual(g.edges, [(0, 0)])
     self.assertEqual(g.directed, False)
示例#9
0
 def test_length_1_directed(self):
     g = graph.cycle(1, directed=True)
     self.assertEqual(g.vertices, [0])
     self.assertEqual(g.edges, [(0, 0)])
     self.assertEqual(g.directed, True)
示例#10
0
 def test_length_3_undirected(self):
     g = graph.cycle(3, directed=False)
     edges = [(0, 1), (1, 0), (1, 2), (2, 1), (2, 0), (0, 2)]
     self.assertEqual(g.vertices, [0, 1, 2])
     self.assertEqual(g.edges, edges)
示例#11
0
 def test_length_3_directed(self):
     g = graph.cycle(3, directed=True)
     self.assertEqual(g.vertices, [0, 1, 2])
     self.assertEqual(g.edges, [(0, 1), (1, 2), (2, 0)])
示例#12
0
 def test_length_2_undirected(self):
     g = graph.cycle(2, directed=False)
     self.assertEqual(g.vertices, [0, 1])
     self.assertEqual(g.edges, [(0, 1), (1, 0)])