"Added more deserialization factories & their unit tests"
[openflowjava.git] / openflow-protocol-impl / src / test / java / org / opendaylight / openflowjava / protocol / impl / deserialization / factories / PortStatusMessageFactoryTest.java
index 2100a5a4e7a13648a46f610c9aa2ff14610ee194..39a12076fa87196e1d63d16619c4fb6da5822d25 100644 (file)
@@ -4,8 +4,13 @@ package org.opendaylight.openflowjava.protocol.impl.deserialization.factories;
 \r
 import io.netty.buffer.ByteBuf;\r
 \r
+import org.junit.Assert;\r
 import org.junit.Test;\r
 import org.opendaylight.openflowjava.protocol.impl.util.BufferHelper;\r
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev100924.MacAddress;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.PortConfig;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.PortFeatures;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.PortState;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.PortStatusMessage;\r
 \r
 /**\r
@@ -19,11 +24,43 @@ public class PortStatusMessageFactoryTest {
      */\r
     @Test\r
     public void test(){\r
-        ByteBuf bb = BufferHelper.buildBuffer("01 00 00 00 00 00 00 00");\r
+        ByteBuf bb = BufferHelper.buildBuffer("01 " + //reason \r
+                                              "00 00 00 00 00 00 00 " + //padding\r
+                                              "00 01 02 03 " + //port no\r
+                                              "00 00 00 00 " + //padding in ofp_port1\r
+                                              "08 00 27 00 B0 EB " + //mac address\r
+                                              "00 00 " + //padding in ofp_port2\r
+                                              "00 00 00 0a " + //port config\r
+                                              "00 00 00 05 " + //port state\r
+                                              "00 00 00 81 " + //current features\r
+                                              "00 00 00 81 " + //advertised features\r
+                                              "00 00 00 81 " + //supported features\r
+                                              "00 00 00 81 " + //peer features\r
+                                              "00 00 00 81 " + //curr speed\r
+                                              "00 00 00 80" //max speed\r
+                                              );\r
         \r
         PortStatusMessage builtByFactory = BufferHelper.decodeV13(PortStatusMessageFactory.getInstance(), bb);\r
         \r
         BufferHelper.checkHeaderV13(builtByFactory);\r
-        //Assert.assertEquals("Wrong reason", 0x01, builtByFactory.getReason());\r
+        Assert.assertEquals("Wrong reason", 0x01, builtByFactory.getReason().getIntValue());\r
+        Assert.assertEquals("Wrong portNumber", 66051L, builtByFactory.getPortNo().longValue());\r
+        Assert.assertEquals("Wrong macAddress", new MacAddress("08002700B0EB"), builtByFactory.getHwAddr());\r
+        Assert.assertEquals("Wrong portConfig", new PortConfig(false, true, false, true), builtByFactory.getConfig());\r
+        Assert.assertEquals("Wrong portState", new PortState(true, false, true), builtByFactory.getState());\r
+        Assert.assertEquals("Wrong portFeatures", new PortFeatures(true, false, false, false,\r
+                                             false, false, false, true, false, false, false, false, \r
+                                             false, false, false, false), builtByFactory.getCurrentFeatures());\r
+        Assert.assertEquals("Wrong portFeatures", new PortFeatures(true, false, false, false,\r
+                                             false, false, false, true, false, false, false, false, \r
+                                             false, false, false, false), builtByFactory.getAdvertisedFeatures());\r
+        Assert.assertEquals("Wrong portFeatures", new PortFeatures(true, false, false, false,\r
+                                             false, false, false, true, false, false, false, false, \r
+                                             false, false, false, false), builtByFactory.getSupportedFeatures());\r
+        Assert.assertEquals("Wrong portFeatures", new PortFeatures(true, false, false, false,\r
+                                             false, false, false, true, false, false, false, false, \r
+                                             false, false, false, false), builtByFactory.getSupportedFeatures());\r
+        Assert.assertEquals("Wrong currSpeed", 129L, builtByFactory.getCurrSpeed().longValue());\r
+        Assert.assertEquals("Wrong maxSpeed", 128L, builtByFactory.getMaxSpeed().longValue());\r
     }\r
 }\r