new changes incorporated in serialization/deserialization factories
[openflowjava.git] / openflow-protocol-impl / src / test / java / org / opendaylight / openflowjava / protocol / impl / deserialization / factories / HelloMessageFactoryTest.java
index 5be0dc597913d8383daef7574cfb9a28020424bb..d98a661721ee33e6a5d33b0f192de96f442a9729 100644 (file)
@@ -1,11 +1,18 @@
 /* Copyright (C)2013 Pantheon Technologies, s.r.o. All rights reserved. */\r
 package org.opendaylight.openflowjava.protocol.impl.deserialization.factories;\r
 \r
+import java.util.ArrayList;\r
+import java.util.List;\r
+\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.opendaylight.openflow.common.types.rev130731.HelloElementType;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.HelloMessage;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.hello.Elements;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.hello.ElementsBuilder;\r
 \r
 /**\r
  * @author michal.polkorab\r
@@ -21,10 +28,33 @@ public class HelloMessageFactoryTest {
      */\r
     @Test\r
     public void test() {\r
-        ByteBuf bb = BufferHelper.buildBuffer();\r
+        ByteBuf bb = BufferHelper.buildBuffer("00 01 "+ //type\r
+                                              "00 00 00 11 "+//booelan element 1\r
+                                              "00 00 00 11"//booelan element 2\r
+                );\r
         HelloMessage builtByFactory = BufferHelper.decodeV13(\r
                 HelloMessageFactory.getInstance(), bb);\r
 \r
         BufferHelper.checkHeaderV13(builtByFactory);\r
+        Assert.assertEquals("Wrong type", createElement().get(0).getType().getIntValue(), builtByFactory.getElements().get(0).getType().getIntValue());\r
+    }\r
+    \r
+    private static List<Elements> createElement() {\r
+        ElementsBuilder elementsBuilder = new ElementsBuilder();\r
+        List<Elements> elementsList = new ArrayList<Elements>();\r
+        List<Boolean> booleanList = new ArrayList<Boolean>();\r
+        booleanList.add(true);\r
+        booleanList.add(false);\r
+        booleanList.add(false);\r
+        booleanList.add(false);\r
+        booleanList.add(true);\r
+        for (int i = 1; i < 60; i++) {\r
+            booleanList.add(false);\r
+        }\r
+        elementsBuilder.setType(HelloElementType.forValue(1));\r
+        elementsBuilder.setVersionBitmap(booleanList);\r
+        elementsList.add(elementsBuilder.build());\r
+        \r
+        return elementsList;\r
     }\r
 }\r