[ONOS-3222] Implement toString method for each Packet class

Change-Id: I17d72338d4202117d08b3dca9463be35a87a0c1e
diff --git a/utils/misc/src/test/java/org/onlab/packet/ndp/NeighborAdvertisementTest.java b/utils/misc/src/test/java/org/onlab/packet/ndp/NeighborAdvertisementTest.java
index d537251..6b03ca9 100644
--- a/utils/misc/src/test/java/org/onlab/packet/ndp/NeighborAdvertisementTest.java
+++ b/utils/misc/src/test/java/org/onlab/packet/ndp/NeighborAdvertisementTest.java
@@ -15,6 +15,7 @@
  */
 package org.onlab.packet.ndp;
 
+import org.apache.commons.lang3.StringUtils;
 import org.junit.BeforeClass;
 import org.junit.Test;
 import org.onlab.packet.DeserializationException;
@@ -25,10 +26,7 @@
 import java.nio.ByteBuffer;
 
 import static org.hamcrest.Matchers.is;
-import static org.junit.Assert.assertArrayEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertThat;
-import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.*;
 
 /**
  * Tests for class {@link NeighborAdvertisement}.
@@ -137,4 +135,18 @@
         assertTrue(na1.equals(na1));
         assertFalse(na1.equals(na2));
     }
+
+    /**
+     * Tests toString.
+     */
+    @Test
+    public void testToStringNA() throws Exception {
+        NeighborAdvertisement na = deserializer.deserialize(bytePacket, 0, bytePacket.length);
+        String str = na.toString();
+
+        assertTrue(StringUtils.contains(str, "routerFlag=" + (byte) 1));
+        assertTrue(StringUtils.contains(str, "solicitedFlag=" + (byte) 1));
+        assertTrue(StringUtils.contains(str, "overrideFlag=" + (byte) 1));
+        // TODO: need to handle TARGET_ADDRESS
+    }
 }
diff --git a/utils/misc/src/test/java/org/onlab/packet/ndp/NeighborSolicitationTest.java b/utils/misc/src/test/java/org/onlab/packet/ndp/NeighborSolicitationTest.java
index 03e57f5e..6f8c9da 100644
--- a/utils/misc/src/test/java/org/onlab/packet/ndp/NeighborSolicitationTest.java
+++ b/utils/misc/src/test/java/org/onlab/packet/ndp/NeighborSolicitationTest.java
@@ -25,10 +25,7 @@
 import java.nio.ByteBuffer;
 
 import static org.hamcrest.Matchers.is;
-import static org.junit.Assert.assertArrayEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertThat;
-import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.*;
 
 /**
  * Tests for class {@link NeighborSolicitation}.
@@ -131,4 +128,15 @@
         assertTrue(ns1.equals(ns1));
         assertFalse(ns1.equals(ns2));
     }
+
+    /**
+     * Tests toString.
+     */
+    @Test
+    public void testToStringNS() throws Exception {
+        NeighborSolicitation ns = deserializer.deserialize(bytePacket, 0, bytePacket.length);
+        String str = ns.toString();
+
+        // TODO: need to handle TARGET_ADDRESS and Options
+    }
 }
diff --git a/utils/misc/src/test/java/org/onlab/packet/ndp/RedirectTest.java b/utils/misc/src/test/java/org/onlab/packet/ndp/RedirectTest.java
index 3115714..e70da7c 100644
--- a/utils/misc/src/test/java/org/onlab/packet/ndp/RedirectTest.java
+++ b/utils/misc/src/test/java/org/onlab/packet/ndp/RedirectTest.java
@@ -144,4 +144,15 @@
         assertTrue(rd1.equals(rd1));
         assertFalse(rd1.equals(rd2));
     }
+
+    /**
+     * Tests toString.
+     */
+    @Test
+    public void testToStringRedirect() throws Exception {
+        Redirect rd = deserializer.deserialize(bytePacket, 0, bytePacket.length);
+        String str = rd.toString();
+
+        // TODO: need to handle TARGET_ADDRESS and DESTINATION_ADDRESS
+    }
 }
diff --git a/utils/misc/src/test/java/org/onlab/packet/ndp/RouterAdvertisementTest.java b/utils/misc/src/test/java/org/onlab/packet/ndp/RouterAdvertisementTest.java
index ede1574..014f36e 100644
--- a/utils/misc/src/test/java/org/onlab/packet/ndp/RouterAdvertisementTest.java
+++ b/utils/misc/src/test/java/org/onlab/packet/ndp/RouterAdvertisementTest.java
@@ -15,6 +15,7 @@
  */
 package org.onlab.packet.ndp;
 
+import org.apache.commons.lang3.StringUtils;
 import org.junit.BeforeClass;
 import org.junit.Test;
 import org.onlab.packet.DeserializationException;
@@ -137,4 +138,22 @@
         assertTrue(ra1.equals(ra1));
         assertFalse(ra1.equals(ra2));
     }
+
+    /**
+     * Tests toString.
+     */
+    @Test
+    public void testToStringRA() throws Exception {
+        RouterAdvertisement ra = deserializer.deserialize(bytePacket, 0, bytePacket.length);
+        String str = ra.toString();
+
+        assertTrue(StringUtils.contains(str, "currentHopLimit=" + (byte) 3));
+        assertTrue(StringUtils.contains(str, "mFlag=" + (byte) 1));
+        assertTrue(StringUtils.contains(str, "oFlag=" + (byte) 1));
+        assertTrue(StringUtils.contains(str, "routerLifetime=" + (short) 0x258));
+        assertTrue(StringUtils.contains(str, "reachableTime=" + 0x3e8));
+        assertTrue(StringUtils.contains(str, "retransmitTimer=" + 0x1f4));
+
+        // TODO: need to handle options
+    }
 }
diff --git a/utils/misc/src/test/java/org/onlab/packet/ndp/RouterSolicitationTest.java b/utils/misc/src/test/java/org/onlab/packet/ndp/RouterSolicitationTest.java
index e3b5686..b562f38 100644
--- a/utils/misc/src/test/java/org/onlab/packet/ndp/RouterSolicitationTest.java
+++ b/utils/misc/src/test/java/org/onlab/packet/ndp/RouterSolicitationTest.java
@@ -24,10 +24,7 @@
 import java.nio.ByteBuffer;
 
 import static org.hamcrest.Matchers.is;
-import static org.junit.Assert.assertArrayEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertThat;
-import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.*;
 
 /**
  * Tests for class {@link RouterSolicitation}.
@@ -111,4 +108,15 @@
         assertTrue(rs1.equals(rs1));
         assertFalse(rs1.equals(rs2));
     }
+
+    /**
+     * Tests toString.
+     */
+    @Test
+    public void testToStringRS() throws Exception {
+        RouterSolicitation rs = deserializer.deserialize(bytePacket, 0, bytePacket.length);
+        String str = rs.toString();
+
+        // TODO: need to handle Options
+    }
 }