2 * Copyright (c) 2015 Cisco Systems, Inc. and others. All rights reserved.
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
8 package org.opendaylight.openflowplugin.impl.util;
10 import static org.junit.Assert.assertEquals;
11 import static org.mockito.Mockito.verify;
13 import org.junit.After;
14 import org.junit.Test;
15 import org.junit.runner.RunWith;
16 import org.mockito.Mock;
17 import org.mockito.Mockito;
18 import org.mockito.runners.MockitoJUnitRunner;
19 import org.opendaylight.openflowplugin.api.openflow.device.DeviceState;
20 import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeId;
21 import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.Nodes;
22 import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
23 import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.NodeKey;
24 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.Capabilities;
25 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.CapabilitiesV10;
26 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
27 import org.opendaylight.yangtools.yang.binding.KeyedInstanceIdentifier;
31 @RunWith(MockitoJUnitRunner.class)
32 public class DeviceStateUtilTest {
35 private DeviceState mockedDeviceState;
38 public void tearDown() {
39 Mockito.verifyNoMoreInteractions(mockedDeviceState);
43 public void setDeviceStateBasedOnV13CapabilitiesTest() {
44 final Capabilities dummyCapabilities = new Capabilities(false,false,false,false,false,false,false);
46 DeviceStateUtil.setDeviceStateBasedOnV13Capabilities(mockedDeviceState, dummyCapabilities);
48 verify(mockedDeviceState).setFlowStatisticsAvailable(false);
49 verify(mockedDeviceState).setTableStatisticsAvailable(false);
50 verify(mockedDeviceState).setPortStatisticsAvailable(false);
51 verify(mockedDeviceState).setQueueStatisticsAvailable(false);
52 verify(mockedDeviceState).setGroupAvailable(false);
56 public void setDeviceStateBasedOnV10CapabilitiesTest() {
57 CapabilitiesV10 dummyCapabilitiesV10 = new CapabilitiesV10(false, false, false, false, false, false, false, false);
59 DeviceStateUtil.setDeviceStateBasedOnV10Capabilities(mockedDeviceState, dummyCapabilitiesV10);
60 verify(mockedDeviceState).setFlowStatisticsAvailable(false);
61 verify(mockedDeviceState).setTableStatisticsAvailable(false);
62 verify(mockedDeviceState).setPortStatisticsAvailable(false);
63 verify(mockedDeviceState).setQueueStatisticsAvailable(false);
67 public void createNodeInstanceIdentifierTest() {
68 final NodeId nodeId = new NodeId("dummyId");
69 final KeyedInstanceIdentifier<Node, NodeKey> expectedII = InstanceIdentifier.create(Nodes.class).child(Node
70 .class, new NodeKey(nodeId));
72 final KeyedInstanceIdentifier<Node, NodeKey> nodeInstanceIdentifier = DeviceStateUtil
73 .createNodeInstanceIdentifier(nodeId);
74 assertEquals(expectedII, nodeInstanceIdentifier);