2 * Copyright (c) 2013 Pantheon Technologies s.r.o. and others. All rights reserved.
\r
4 * This program and the accompanying materials are made available under the
\r
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
\r
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
\r
9 package org.opendaylight.openflowjava.protocol.ext.deserialization;
\r
11 import io.netty.buffer.ByteBuf;
\r
12 import io.netty.buffer.UnpooledByteBufAllocator;
\r
14 import org.junit.Assert;
\r
15 import org.junit.Test;
\r
16 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.ExperimenterRelatedTableFeatureProperty;
\r
17 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.TableFeaturesPropType;
\r
18 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.table.features.properties.grouping.TableFeatureProperties;
\r
21 * @author michal.polkorab
\r
24 public class OF13TableFeaturesExperimenterDeserializerTest {
\r
27 * Testing of {@link OF13TableFeaturesExperimenterDeserializer} for correct translation into POJO
\r
28 * @throws Exception
\r
31 public void testExperimenter() {
\r
32 ByteBuf buffer = UnpooledByteBufAllocator.DEFAULT.buffer();
\r
33 buffer.writeShort(65534);
\r
34 buffer.writeShort(16);
\r
35 buffer.writeInt(256);
\r
36 buffer.writeInt(546);
\r
37 byte[] data = new byte[]{1, 2, 3, 4};
\r
38 buffer.writeBytes(data);
\r
40 OF13TableFeaturesExperimenterDeserializer deserializer =
\r
41 new OF13TableFeaturesExperimenterDeserializer();
\r
42 TableFeatureProperties message = deserializer.deserialize(buffer);
\r
44 Assert.assertEquals("Wrong type", TableFeaturesPropType.OFPTFPTEXPERIMENTER, message.getType());
\r
45 ExperimenterRelatedTableFeatureProperty property =
\r
46 message.getAugmentation(ExperimenterRelatedTableFeatureProperty.class);
\r
47 Assert.assertEquals("Wrong experimenter", 256, property.getExperimenter().intValue());
\r
48 Assert.assertEquals("Wrong exp-type", 546, property.getExpType().intValue());
\r
49 Assert.assertArrayEquals("Wrong data", data, property.getData());
\r
53 * Testing of {@link OF13TableFeaturesExperimenterDeserializer} for correct translation into POJO
\r
54 * @throws Exception
\r
57 public void testExperimenterWithoutData() {
\r
58 ByteBuf buffer = UnpooledByteBufAllocator.DEFAULT.buffer();
\r
59 buffer.writeShort(65534);
\r
60 buffer.writeShort(12);
\r
61 buffer.writeInt(256);
\r
62 buffer.writeInt(546);
\r
64 OF13TableFeaturesExperimenterDeserializer deserializer =
\r
65 new OF13TableFeaturesExperimenterDeserializer();
\r
66 TableFeatureProperties message = deserializer.deserialize(buffer);
\r
68 Assert.assertEquals("Wrong type", TableFeaturesPropType.OFPTFPTEXPERIMENTER, message.getType());
\r
69 ExperimenterRelatedTableFeatureProperty property =
\r
70 message.getAugmentation(ExperimenterRelatedTableFeatureProperty.class);
\r
71 Assert.assertEquals("Wrong experimenter", 256, property.getExperimenter().intValue());
\r
72 Assert.assertEquals("Wrong exp-type", 546, property.getExpType().intValue());
\r
73 Assert.assertNull("Unexpected data", property.getData());
\r
77 * Testing of {@link OF13TableFeaturesExperimenterDeserializer} for correct translation into POJO
\r
78 * @throws Exception
\r
81 public void testExperimenterMiss() {
\r
82 ByteBuf buffer = UnpooledByteBufAllocator.DEFAULT.buffer();
\r
83 buffer.writeShort(65535);
\r
84 buffer.writeShort(16);
\r
85 buffer.writeInt(256);
\r
86 buffer.writeInt(546);
\r
87 byte[] data = new byte[]{1, 2, 3, 4};
\r
88 buffer.writeBytes(data);
\r
90 OF13TableFeaturesExperimenterDeserializer deserializer =
\r
91 new OF13TableFeaturesExperimenterDeserializer();
\r
92 TableFeatureProperties message = deserializer.deserialize(buffer);
\r
94 Assert.assertEquals("Wrong type", TableFeaturesPropType.OFPTFPTEXPERIMENTERMISS, message.getType());
\r
95 ExperimenterRelatedTableFeatureProperty property =
\r
96 message.getAugmentation(ExperimenterRelatedTableFeatureProperty.class);
\r
97 Assert.assertEquals("Wrong experimenter", 256, property.getExperimenter().intValue());
\r
98 Assert.assertEquals("Wrong exp-type", 546, property.getExpType().intValue());
\r
99 Assert.assertArrayEquals("Wrong data", data, property.getData());
\r
103 * Testing of {@link OF13TableFeaturesExperimenterDeserializer} for correct translation into POJO
\r
104 * @throws Exception
\r
107 public void testExperimenterMissWithoutData() {
\r
108 ByteBuf buffer = UnpooledByteBufAllocator.DEFAULT.buffer();
\r
109 buffer.writeShort(65535);
\r
110 buffer.writeShort(12);
\r
111 buffer.writeInt(256);
\r
112 buffer.writeInt(546);
\r
114 OF13TableFeaturesExperimenterDeserializer deserializer =
\r
115 new OF13TableFeaturesExperimenterDeserializer();
\r
116 TableFeatureProperties message = deserializer.deserialize(buffer);
\r
118 Assert.assertEquals("Wrong type", TableFeaturesPropType.OFPTFPTEXPERIMENTERMISS, message.getType());
\r
119 ExperimenterRelatedTableFeatureProperty property =
\r
120 message.getAugmentation(ExperimenterRelatedTableFeatureProperty.class);
\r
121 Assert.assertEquals("Wrong experimenter", 256, property.getExperimenter().intValue());
\r
122 Assert.assertEquals("Wrong exp-type", 546, property.getExpType().intValue());
\r
123 Assert.assertNull("Unexpected data", property.getData());
\r