fa94c278a8e3fe3fe787c0a41fb7cbfdc05954a1
[openflowjava.git] / openflow-protocol-impl / src / test / java / org / opendaylight / openflowjava / protocol / impl / deserialization / factories / PacketInMessageFactoryTest.java
1 /* Copyright (C)2013 Pantheon Technologies, s.r.o. All rights reserved. */\r
2 package org.opendaylight.openflowjava.protocol.impl.deserialization.factories;\r
3 \r
4 import io.netty.buffer.ByteBuf;\r
5 \r
6 import org.junit.Assert;\r
7 import org.junit.Test;\r
8 import org.opendaylight.openflowjava.protocol.impl.util.BufferHelper;\r
9 import org.opendaylight.openflowjava.protocol.impl.util.ByteBufUtils;\r
10 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.TableId;\r
11 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.PacketInMessage;\r
12 \r
13 /**\r
14  * @author timotej.kubas\r
15  *\r
16  */\r
17 public class PacketInMessageFactoryTest {\r
18 \r
19     /**\r
20      * Testing {@link PacketInMessageFactory} for correct translation into POJO\r
21      */\r
22     @Test\r
23     public void test(){\r
24         ByteBuf bb = BufferHelper.buildBuffer("00 01 02 03 01 02 01 04 00 01 02 03 04 05 06 07 00 00 01 02 03 04");\r
25         PacketInMessage builtByFactory = BufferHelper.decodeV13(PacketInMessageFactory.getInstance(), bb); \r
26         \r
27         BufferHelper.checkHeaderV13(builtByFactory);\r
28         \r
29         Assert.assertEquals("Wrong bufferID", 0x00010203L, builtByFactory.getBufferId().longValue());\r
30         Assert.assertEquals("Wrong totalLen", 0x0102, builtByFactory.getTotalLen().intValue());\r
31         Assert.assertEquals("Wrong reason", 0x01, builtByFactory.getReason().shortValue());\r
32         Assert.assertEquals("Wrong tableID", new TableId((long) 4), builtByFactory.getTableId());\r
33         Assert.assertEquals("Wrong cookie", 0x0001020304050607L, builtByFactory.getCookie().longValue());\r
34         Assert.assertArrayEquals("Wrong data", ByteBufUtils.hexStringToBytes("01 02 03 04"), builtByFactory.getData());\r
35     }\r
36 }\r