Bug 1764 - moved Session related interfaces to openflowplugin-api
[openflowplugin.git] / openflowplugin / src / test / java / org / opendaylight / openflowplugin / openflow / md / core / MessageFactoryTest.java
1 /**
2  * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
3  *
4  * This program and the accompanying materials are made available under the
5  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6  * and is available at http://www.eclipse.org/legal/epl-v10.html
7  */
8 package org.opendaylight.openflowplugin.openflow.md.core;
9
10
11 import org.junit.Assert;
12 import org.junit.Test;
13 import org.opendaylight.openflowplugin.api.openflow.md.core.ConnectionConductor;
14 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.HelloElementType;
15 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.HelloInput;
16 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.hello.Elements;
17
18 /**
19  * @author mirehak
20  *
21  */
22 public class MessageFactoryTest {
23
24     /**
25      * Test method for {@link org.opendaylight.openflowplugin.openflow.md.core.MessageFactory#createHelloInputWoElements(java.lang.Short, java.lang.Long)}.
26      */
27     @Test
28     public void testCreateHelloInputWoElements() {
29         short highestVersion = (short) 0x04;
30         long xid = 42L;
31         
32         HelloInput helloMsg = MessageFactory.createHelloInput(highestVersion, xid);
33         Assert.assertEquals(highestVersion, helloMsg.getVersion().shortValue());
34         Assert.assertEquals(xid, helloMsg.getXid().longValue());
35         Assert.assertNull(helloMsg.getElements());
36     }
37
38     /**
39      * Test method for {@link org.opendaylight.openflowplugin.openflow.md.core.MessageFactory#createHelloInputWithElements(java.lang.Short, java.lang.Long, java.util.List)}.
40      */
41     @Test
42     public void testCreateHelloInputWithElements() {
43         short highestVersion = (short) 0x04;
44         long xid = 42L;
45         Boolean[] expectedVersionBitmap = new Boolean[]{
46                 false, true, false, false, true};
47         
48         HelloInput helloMsg = MessageFactory.createHelloInput(highestVersion, xid, 
49                 ConnectionConductor.versionOrder);
50         Assert.assertEquals(highestVersion, helloMsg.getVersion().shortValue());
51         Assert.assertEquals(xid, helloMsg.getXid().longValue());
52         Assert.assertEquals(1, helloMsg.getElements().size());
53         Elements actualElement = helloMsg.getElements().get(0);
54         Assert.assertEquals(HelloElementType.VERSIONBITMAP, actualElement.getType());
55         Assert.assertArrayEquals(expectedVersionBitmap, actualElement.getVersionBitmap().toArray(new Boolean[0]));
56     }
57
58 }