blob: 44b113704bf2522813f8e873934541e27dab3b19 [file] [log] [blame]
tome3489412014-08-29 02:30:38 -07001package org.onlab.graph;
2
tome3489412014-08-29 02:30:38 -07003import java.util.Set;
4
tom144de692014-08-29 11:38:44 -07005import static com.google.common.collect.ImmutableSet.of;
6
tome3489412014-08-29 02:30:38 -07007/**
8 * Base class for various graph-related tests.
9 */
10public class GraphTest {
11
12 static final TestVertex A = new TestVertex("A");
13 static final TestVertex B = new TestVertex("B");
14 static final TestVertex C = new TestVertex("C");
15 static final TestVertex D = new TestVertex("D");
16 static final TestVertex E = new TestVertex("E");
17 static final TestVertex F = new TestVertex("F");
18 static final TestVertex G = new TestVertex("G");
19 static final TestVertex H = new TestVertex("H");
tom2e1f0712014-08-29 13:32:00 -070020 static final TestVertex Z = new TestVertex("Z");
tome3489412014-08-29 02:30:38 -070021
22 protected Graph<TestVertex, TestEdge> g;
23
24 protected EdgeWeight<TestVertex, TestEdge> weight =
25 new EdgeWeight<TestVertex, TestEdge>() {
tomc53fa0d2014-08-29 11:57:11 -070026 @Override
27 public double weight(TestEdge edge) {
28 return edge.weight();
29 }
30 };
tome3489412014-08-29 02:30:38 -070031
32 protected void printPaths(Set<Path<TestVertex, TestEdge>> paths) {
33 for (Path p : paths) {
34 System.out.println(p);
35 }
36 }
37
38 protected Set<TestVertex> vertices() {
tom144de692014-08-29 11:38:44 -070039 return of(A, B, C, D, E, F, G, H);
tome3489412014-08-29 02:30:38 -070040 }
41
42 protected Set<TestEdge> edges() {
tom144de692014-08-29 11:38:44 -070043 return of(new TestEdge(A, B, 1), new TestEdge(A, C, 3),
44 new TestEdge(B, D, 2), new TestEdge(B, C, 1),
45 new TestEdge(B, E, 4), new TestEdge(C, E, 1),
46 new TestEdge(D, H, 5), new TestEdge(D, E, 1),
47 new TestEdge(E, F, 1), new TestEdge(F, D, 1),
48 new TestEdge(F, G, 1), new TestEdge(F, H, 1));
tome3489412014-08-29 02:30:38 -070049 }
50
51}