/** * Copyright (c) 2016 Cisco Systems, Inc. and others. All rights reserved. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ package org.opendaylight.openflowjava.nx.api; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; import org.junit.Test; public class NiciraActionDeserializerKeyTest { NiciraActionDeserializerKey niciraActionDeserializerKey; private static final short VERSION = 4; /** * If SUBTYPE is not Uint16 exception should be thrown */ @Test(expected = IllegalArgumentException.class) public void niciraActionDeserializerKeyTest1() { niciraActionDeserializerKey = new NiciraActionDeserializerKey(VERSION, -10); } /** * If SUBTYPE is Uint16 it should be set and version should be set also */ @Test public void niciraActionDeserializerKeyTest2() { niciraActionDeserializerKey = new NiciraActionDeserializerKey(VERSION, 10); assertEquals(VERSION, niciraActionDeserializerKey.getVersion()); assertEquals(10, niciraActionDeserializerKey.getSubtype()); } @Test public void hashCodeTest() { niciraActionDeserializerKey = new NiciraActionDeserializerKey(VERSION, 10); assertEquals(1275, niciraActionDeserializerKey.hashCode()); } /** * If input param obj is null FALSE should be returned */ @Test public void equalsTest1() { Object obj = null; niciraActionDeserializerKey = new NiciraActionDeserializerKey(VERSION, 10); assertFalse(niciraActionDeserializerKey.equals(obj)); } /** * If input param obj is NOT null but is different class FALSE should be returned */ @Test public void equalsTest2() { Object obj = new Object(); niciraActionDeserializerKey = new NiciraActionDeserializerKey(VERSION, 10); assertFalse(niciraActionDeserializerKey.equals(obj)); } /** * If input param obj is same class but has different SUBTYPE value FALSE should be returned */ @Test public void equalsTest3() { NiciraActionDeserializerKey obj = new NiciraActionDeserializerKey(VERSION, 9); niciraActionDeserializerKey = new NiciraActionDeserializerKey(VERSION, 10); assertFalse(niciraActionDeserializerKey.equals(obj)); } /** * If input param obj is same class but has different VERSION value FALSE should be returned */ @Test public void equalsTest4() { NiciraActionDeserializerKey obj = new NiciraActionDeserializerKey((short)5, 10); niciraActionDeserializerKey = new NiciraActionDeserializerKey(VERSION, 10); assertFalse(niciraActionDeserializerKey.equals(obj)); } /** * If input param obj is absolutely same TRUE should be returned */ @Test public void equalsTest5() { NiciraActionDeserializerKey obj = new NiciraActionDeserializerKey(VERSION, 10); niciraActionDeserializerKey = new NiciraActionDeserializerKey(VERSION, 10); assertTrue(niciraActionDeserializerKey.equals(obj)); } /** * If input param obj is same instance TRUE should be returned */ @Test public void equalsTest6() { niciraActionDeserializerKey = new NiciraActionDeserializerKey(VERSION, 10); assertTrue(niciraActionDeserializerKey.equals(niciraActionDeserializerKey)); } @Test public void toStringTest() { niciraActionDeserializerKey = new NiciraActionDeserializerKey(VERSION, 10); String shouldBe = new String("NiciraActionDeserializerKey [version=4, subtype=10]"); assertEquals(shouldBe, niciraActionDeserializerKey.toString()); } }