summaryrefslogtreecommitdiffstats
path: root/framework/src/onos/providers/openflow/device/src/test/java/org/onosproject/provider/of/device/impl/OpenFlowDeviceProviderTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/onos/providers/openflow/device/src/test/java/org/onosproject/provider/of/device/impl/OpenFlowDeviceProviderTest.java')
-rw-r--r--framework/src/onos/providers/openflow/device/src/test/java/org/onosproject/provider/of/device/impl/OpenFlowDeviceProviderTest.java403
1 files changed, 0 insertions, 403 deletions
diff --git a/framework/src/onos/providers/openflow/device/src/test/java/org/onosproject/provider/of/device/impl/OpenFlowDeviceProviderTest.java b/framework/src/onos/providers/openflow/device/src/test/java/org/onosproject/provider/of/device/impl/OpenFlowDeviceProviderTest.java
deleted file mode 100644
index d0838bb8..00000000
--- a/framework/src/onos/providers/openflow/device/src/test/java/org/onosproject/provider/of/device/impl/OpenFlowDeviceProviderTest.java
+++ /dev/null
@@ -1,403 +0,0 @@
-/*
- * Copyright 2014-2015 Open Networking Laboratory
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.onosproject.provider.of.device.impl;
-
-import com.google.common.collect.HashMultimap;
-import com.google.common.collect.ImmutableSet;
-import com.google.common.collect.Lists;
-import com.google.common.collect.Multimap;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-import org.onosproject.cfg.ComponentConfigAdapter;
-import org.onosproject.net.DefaultDevice;
-import org.onosproject.net.Device;
-import org.onosproject.net.DeviceId;
-import org.onosproject.net.MastershipRole;
-import org.onosproject.net.device.DeviceDescription;
-import org.onosproject.net.device.DeviceProvider;
-import org.onosproject.net.device.DeviceProviderRegistry;
-import org.onosproject.net.device.DeviceProviderService;
-import org.onosproject.net.device.PortDescription;
-import org.onosproject.net.device.PortStatistics;
-import org.onosproject.net.provider.ProviderId;
-import org.onosproject.openflow.controller.Dpid;
-import org.onosproject.openflow.controller.OpenFlowController;
-import org.onosproject.openflow.controller.OpenFlowEventListener;
-import org.onosproject.openflow.controller.OpenFlowSwitch;
-import org.onosproject.openflow.controller.OpenFlowSwitchListener;
-import org.onosproject.openflow.controller.PacketListener;
-import org.onosproject.openflow.controller.RoleState;
-import org.projectfloodlight.openflow.protocol.OFFactory;
-import org.projectfloodlight.openflow.protocol.OFMessage;
-import org.projectfloodlight.openflow.protocol.OFPortDesc;
-import org.projectfloodlight.openflow.protocol.OFPortReason;
-import org.projectfloodlight.openflow.protocol.OFPortStatus;
-import org.projectfloodlight.openflow.protocol.ver10.OFFactoryVer10;
-import org.projectfloodlight.openflow.types.OFPort;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import static org.junit.Assert.*;
-import static org.onosproject.net.Device.Type.SWITCH;
-import static org.onosproject.net.MastershipRole.*;
-
-public class OpenFlowDeviceProviderTest {
-
- private static final ProviderId PID = new ProviderId("of", "test");
- private static final DeviceId DID1 = DeviceId.deviceId("of:0000000000000001");
- private static final Dpid DPID1 = Dpid.dpid(DID1.uri());
-
- private static final OFPortDesc PD1 = portDesc(1);
- private static final OFPortDesc PD2 = portDesc(2);
- private static final OFPortDesc PD3 = portDesc(3);
-
- private static final List<OFPortDesc> PLIST = Lists.newArrayList(PD1, PD2);
-
- private static final Device DEV1 =
- new DefaultDevice(PID, DID1, SWITCH, "", "", "", "", null);
-
- private static final TestOpenFlowSwitch SW1 = new TestOpenFlowSwitch();
-
- private final OpenFlowDeviceProvider provider = new OpenFlowDeviceProvider();
- private final TestDeviceRegistry registry = new TestDeviceRegistry();
- private final TestController controller = new TestController();
-
- @Before
- public void startUp() {
- provider.providerRegistry = registry;
- provider.controller = controller;
- provider.cfgService = new ComponentConfigAdapter();
- controller.switchMap.put(DPID1, SW1);
- provider.activate(null);
- assertNotNull("provider should be registered", registry.provider);
- assertNotNull("listener should be registered", controller.listener);
- assertEquals("devices not added", 1, registry.connected.size());
- assertEquals("ports not added", 2, registry.ports.get(DID1).size());
- }
-
- @After
- public void tearDown() {
- provider.deactivate(null);
- assertNull("listener should be removed", controller.listener);
- provider.controller = null;
- provider.providerRegistry = null;
- }
-
- @Test
- public void roleChanged() {
- provider.roleChanged(DID1, MASTER);
- assertEquals("Should be MASTER", RoleState.MASTER, controller.roleMap.get(DPID1));
- provider.roleChanged(DID1, STANDBY);
- assertEquals("Should be EQUAL", RoleState.EQUAL, controller.roleMap.get(DPID1));
- provider.roleChanged(DID1, NONE);
- assertEquals("Should be SLAVE", RoleState.SLAVE, controller.roleMap.get(DPID1));
- }
-
- @Test
- public void triggerProbe() {
-
- }
-
- @Test
- public void switchRemoved() {
- controller.listener.switchRemoved(DPID1);
- assertTrue("device not removed", registry.connected.isEmpty());
- }
-
- @Test
- public void portChanged() {
- OFPortStatus stat = SW1.factory().buildPortStatus()
- .setReason(OFPortReason.ADD)
- .setDesc(PD3)
- .build();
- controller.listener.portChanged(DPID1, stat);
- assertNotNull("never went throught the provider service", registry.descr);
- assertEquals("port status unhandled", 3, registry.ports.get(DID1).size());
- }
-
- @Test
- public void receivedRoleReply() {
- // check translation capabilities
- controller.listener.receivedRoleReply(DPID1, RoleState.MASTER, RoleState.MASTER);
- assertEquals("wrong role reported", DPID1, registry.roles.get(MASTER));
- controller.listener.receivedRoleReply(DPID1, RoleState.EQUAL, RoleState.MASTER);
- assertEquals("wrong role reported", DPID1, registry.roles.get(STANDBY));
- controller.listener.receivedRoleReply(DPID1, RoleState.SLAVE, RoleState.MASTER);
- assertEquals("wrong role reported", DPID1, registry.roles.get(NONE));
- }
-
- private static OFPortDesc portDesc(int port) {
- OFPortDesc.Builder builder = OFFactoryVer10.INSTANCE.buildPortDesc();
- builder.setPortNo(OFPort.of(port));
-
- return builder.build();
- }
-
- private class TestDeviceRegistry implements DeviceProviderRegistry {
- DeviceProvider provider;
-
- Set<DeviceId> connected = new HashSet<>();
- Multimap<DeviceId, PortDescription> ports = HashMultimap.create();
- PortDescription descr = null;
- Map<MastershipRole, Dpid> roles = new HashMap<>();
-
- @Override
- public DeviceProviderService register(DeviceProvider provider) {
- this.provider = provider;
- return new TestProviderService();
- }
-
- @Override
- public void unregister(DeviceProvider provider) {
- }
-
- @Override
- public Set<ProviderId> getProviders() {
- return null;
- }
-
- private class TestProviderService implements DeviceProviderService {
-
- @Override
- public DeviceProvider provider() {
- return null;
- }
-
- @Override
- public void deviceConnected(DeviceId deviceId,
- DeviceDescription deviceDescription) {
- connected.add(deviceId);
- }
-
- @Override
- public void deviceDisconnected(DeviceId deviceId) {
- connected.remove(deviceId);
- ports.removeAll(deviceId);
- }
-
- @Override
- public void updatePorts(DeviceId deviceId,
- List<PortDescription> portDescriptions) {
- for (PortDescription p : portDescriptions) {
- ports.put(deviceId, p);
- }
- }
-
- @Override
- public void portStatusChanged(DeviceId deviceId,
- PortDescription portDescription) {
- ports.put(deviceId, portDescription);
- descr = portDescription;
- }
-
- @Override
- public void receivedRoleReply(DeviceId deviceId,
- MastershipRole requested, MastershipRole response) {
- roles.put(requested, Dpid.dpid(deviceId.uri()));
- }
-
- @Override
- public void updatePortStatistics(DeviceId deviceId, Collection<PortStatistics> portStatistics) {
-
- }
-
- }
- }
-
- private class TestController implements OpenFlowController {
- OpenFlowSwitchListener listener = null;
- Map<Dpid, RoleState> roleMap = new HashMap<Dpid, RoleState>();
- Map<Dpid, OpenFlowSwitch> switchMap = new HashMap<Dpid, OpenFlowSwitch>();
-
- @Override
- public Iterable<OpenFlowSwitch> getSwitches() {
- return switchMap.values();
- }
-
- @Override
- public Iterable<OpenFlowSwitch> getMasterSwitches() {
- return ImmutableSet.of();
- }
-
- @Override
- public Iterable<OpenFlowSwitch> getEqualSwitches() {
- return null;
- }
-
- @Override
- public OpenFlowSwitch getSwitch(Dpid dpid) {
- return switchMap.get(dpid);
- }
-
- @Override
- public OpenFlowSwitch getMasterSwitch(Dpid dpid) {
- return null;
- }
-
- @Override
- public OpenFlowSwitch getEqualSwitch(Dpid dpid) {
-
- return null;
- }
-
- @Override
- public void addListener(OpenFlowSwitchListener listener) {
- this.listener = listener;
- }
-
- @Override
- public void removeListener(OpenFlowSwitchListener listener) {
- this.listener = null;
- }
-
- @Override
- public void addPacketListener(int priority, PacketListener listener) {
- }
-
- @Override
- public void removePacketListener(PacketListener listener) {
- }
-
- @Override
- public void addEventListener(OpenFlowEventListener listener) {
- }
-
- @Override
- public void removeEventListener(OpenFlowEventListener listener) {
- }
-
- @Override
- public void write(Dpid dpid, OFMessage msg) {
- }
-
- @Override
- public void processPacket(Dpid dpid, OFMessage msg) {
- }
-
- @Override
- public void setRole(Dpid dpid, RoleState role) {
- roleMap.put(dpid, role);
- }
- }
-
- private static class TestOpenFlowSwitch implements OpenFlowSwitch {
-
- RoleState state;
- List<OFMessage> sent = new ArrayList<OFMessage>();
- OFFactory factory = OFFactoryVer10.INSTANCE;
-
- @Override
- public void sendMsg(OFMessage msg) {
- sent.add(msg);
- }
-
- @Override
- public void sendMsg(List<OFMessage> msgs) {
- }
-
- @Override
- public void handleMessage(OFMessage fromSwitch) {
- }
-
- @Override
- public void setRole(RoleState role) {
- state = role;
- }
-
- @Override
- public RoleState getRole() {
- return state;
- }
-
- @Override
- public List<OFPortDesc> getPorts() {
- return PLIST;
- }
-
- @Override
- public OFFactory factory() {
- return factory;
- }
-
- @Override
- public String getStringId() {
- return null;
- }
-
- @Override
- public long getId() {
- return DPID1.value();
- }
-
- @Override
- public String manufacturerDescription() {
- return null;
- }
-
- @Override
- public String datapathDescription() {
- return null;
- }
-
- @Override
- public String hardwareDescription() {
- return null;
- }
-
- @Override
- public String softwareDescription() {
- return null;
- }
-
- @Override
- public String serialNumber() {
- return null;
- }
-
- @Override
- public boolean isConnected() {
- return true;
- }
-
- @Override
- public void disconnectSwitch() {
- }
-
- @Override
- public Device.Type deviceType() {
- return Device.Type.SWITCH;
- }
-
- @Override
- public void returnRoleReply(RoleState requested, RoleState response) {
- }
-
- @Override
- public String channelId() {
- return "1.2.3.4:1";
- }
-
- }
-
-}