Add and update test codes for Intent related codes

Change-Id: Idbd1e9978c1f9df0e2d19b15d108ff1f0b8d0c8b
diff --git a/src/test/java/net/onrc/onos/intent/MockNetworkGraph.java b/src/test/java/net/onrc/onos/intent/MockNetworkGraph.java
index 5ae7b13..9d85e6f 100644
--- a/src/test/java/net/onrc/onos/intent/MockNetworkGraph.java
+++ b/src/test/java/net/onrc/onos/intent/MockNetworkGraph.java
@@ -9,9 +9,15 @@
 import net.onrc.onos.ofcontroller.networkgraph.SwitchImpl;
 
 /**
+ * A mock class of NetworkGraph.
+ * This class should be used only by test codes.
+ *
  * @author Toshio Koide (t-koide@onlab.us)
  */
 public class MockNetworkGraph extends NetworkGraphImpl {
+	public static Long LOCAL_PORT = 0xFFFEL;
+	public SwitchImpl sw1, sw2, sw3, sw4;
+
 	class DetachableLinkImpl extends LinkImpl {
 		public DetachableLinkImpl(NetworkGraph graph, Port srcPort, Port dstPort) {
 			super(graph, srcPort, dstPort);
@@ -25,7 +31,6 @@
 		SwitchImpl sw = new SwitchImpl(this, switchId);
 		this.putSwitch(sw);
 		return sw;
-
 	}
 
 	public Link addLink(Long srcDpid, Long srcPortNo, Long dstDpid, Long dstPortNo) {
@@ -43,34 +48,41 @@
 		return links;
 	}
 
-	public void createSampleTopology() {
-		// add 10 switches (24 ports switch)
-		for (Long dpid=1L; dpid<10L; dpid++) {
-			SwitchImpl sw = (SwitchImpl) addSwitch(dpid);
-			for (Long j=1L; j<=24L; j++) {
-				sw.addPort(j);
-			}
-		}
+	/**
+	 * create sample topology of 4 switches and 5 bidirectional links.
+	 * <pre>
+	 * [1] --- [2]
+	 *  |    /  |
+	 *  |  /    |
+	 * [4] --- [3]
+	 * </pre>
+	 */
+	public void createSampleTopology1() {
+		sw1 = (SwitchImpl) addSwitch(1L);
+		sw1.addPort(LOCAL_PORT);
+		sw2 = (SwitchImpl) addSwitch(2L);
+		sw2.addPort(LOCAL_PORT);
+		sw3 = (SwitchImpl) addSwitch(3L);
+		sw3.addPort(LOCAL_PORT);
+		sw4 = (SwitchImpl) addSwitch(4L);
+		sw4.addPort(LOCAL_PORT);
 
-		// add loop path
-		addBidirectionalLinks(1L, 1L, 2L, 2L);
-		addBidirectionalLinks(2L, 1L, 3L, 2L);
-		addBidirectionalLinks(3L, 1L, 4L, 2L);
-		addBidirectionalLinks(4L, 1L, 5L, 2L);
-		addBidirectionalLinks(5L, 1L, 6L, 2L);
-		addBidirectionalLinks(6L, 1L, 7L, 2L);
-		addBidirectionalLinks(7L, 1L, 8L, 2L);
-		addBidirectionalLinks(8L, 1L, 9L, 2L);
-		addBidirectionalLinks(9L, 1L, 1L, 2L);
+		sw1.addPort(12L); // sw1 -> sw2
+		sw1.addPort(14L); // sw1 -> sw4
+		sw2.addPort(21L); // sw2 -> sw1
+		sw2.addPort(23L); // sw2 -> sw3
+		sw2.addPort(24L); // sw2 -> sw4
+		sw3.addPort(32L); // sw3 -> sw2
+		sw3.addPort(34L); // sw3 -> sw4
+		sw4.addPort(41L); // sw4 -> sw1
+		sw4.addPort(42L); // sw4 -> sw2
+		sw4.addPort(43L); // sw4 -> sw3
 
-		// add other links
-		addBidirectionalLinks(1L, 3L, 5L, 3L);
-		addBidirectionalLinks(2L, 4L, 5L, 4L);
-		addBidirectionalLinks(2L, 5L, 7L, 5L);
-		addBidirectionalLinks(3L, 6L, 7L, 6L);
-		addBidirectionalLinks(3L, 7L, 8L, 7L);
-		addBidirectionalLinks(3L, 8L, 9L, 8L);
-		addBidirectionalLinks(4L, 9l, 9L, 9L);
+		addBidirectionalLinks(1L, 12L, 2L, 21L);
+		addBidirectionalLinks(2L, 23L, 3L, 32L);
+		addBidirectionalLinks(3L, 34L, 4L, 43L);
+		addBidirectionalLinks(4L, 41L, 1L, 14L);
+		addBidirectionalLinks(2L, 24L, 4L, 42L);
 
 		// set capacity of all links to 1000Mbps
 		for (Link link: getLinks()) {