X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Ftopologymanager%2Fimplementation%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Ftopologymanager%2Finternal%2FTopologyManagerImplTest.java;h=d1338bf6953909aff8ff1c4bea274001f9135e5c;hp=97966255a03db0b91b60a899764cd1de3b8e432b;hb=510f3bd2d25c0e667a60ff5ef18cfbd40534cec0;hpb=17e56497531f66554f6d533ef0f85ac7264f48fa diff --git a/opendaylight/topologymanager/implementation/src/test/java/org/opendaylight/controller/topologymanager/internal/TopologyManagerImplTest.java b/opendaylight/topologymanager/implementation/src/test/java/org/opendaylight/controller/topologymanager/internal/TopologyManagerImplTest.java index 97966255a0..d1338bf695 100644 --- a/opendaylight/topologymanager/implementation/src/test/java/org/opendaylight/controller/topologymanager/internal/TopologyManagerImplTest.java +++ b/opendaylight/topologymanager/implementation/src/test/java/org/opendaylight/controller/topologymanager/internal/TopologyManagerImplTest.java @@ -8,21 +8,11 @@ package org.opendaylight.controller.topologymanager.internal; -import java.net.InetAddress; -import java.net.UnknownHostException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.HashSet; -import java.util.Iterator; -import java.util.List; -import java.util.Map; -import java.util.Set; -import java.util.concurrent.ConcurrentMap; - import org.junit.Assert; import org.junit.Test; import org.opendaylight.controller.sal.core.Bandwidth; import org.opendaylight.controller.sal.core.ConstructionException; +import org.opendaylight.controller.sal.core.Description; import org.opendaylight.controller.sal.core.Edge; import org.opendaylight.controller.sal.core.Host; import org.opendaylight.controller.sal.core.Latency; @@ -32,13 +22,14 @@ import org.opendaylight.controller.sal.core.NodeConnector; import org.opendaylight.controller.sal.core.NodeConnector.NodeConnectorIDType; import org.opendaylight.controller.sal.core.Property; import org.opendaylight.controller.sal.core.State; +import org.opendaylight.controller.sal.core.TimeStamp; import org.opendaylight.controller.sal.core.UpdateType; import org.opendaylight.controller.sal.packet.address.EthernetAddress; import org.opendaylight.controller.sal.topology.TopoEdgeUpdate; -import org.opendaylight.controller.sal.utils.Status; -import org.opendaylight.controller.sal.utils.StatusCode; import org.opendaylight.controller.sal.utils.NodeConnectorCreator; import org.opendaylight.controller.sal.utils.NodeCreator; +import org.opendaylight.controller.sal.utils.Status; +import org.opendaylight.controller.sal.utils.StatusCode; import org.opendaylight.controller.switchmanager.ISwitchManager; import org.opendaylight.controller.switchmanager.SpanConfig; import org.opendaylight.controller.switchmanager.Subnet; @@ -47,6 +38,17 @@ import org.opendaylight.controller.switchmanager.Switch; import org.opendaylight.controller.switchmanager.SwitchConfig; import org.opendaylight.controller.topologymanager.TopologyUserLinkConfig; +import java.net.InetAddress; +import java.net.UnknownHostException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Iterator; +import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.concurrent.ConcurrentMap; + public class TopologyManagerImplTest { /** * Mockup of switch manager that only maintains existence of node @@ -55,7 +57,7 @@ public class TopologyManagerImplTest { private final class TestSwitchManager implements ISwitchManager { private final Set nodeSet = new HashSet(); private final Set nodeConnectorSet = - new HashSet(); + new HashSet(); private void addNodeConnectors(NodeConnector ... connectors) { for (NodeConnector nc: connectors) { @@ -69,9 +71,9 @@ public class TopologyManagerImplTest { private void addNodeConnectors(TopologyUserLinkConfig ... links) { for (TopologyUserLinkConfig link: links) { NodeConnector src = - NodeConnector.fromString(link.getSrcNodeConnector()); + NodeConnector.fromString(link.getSrcNodeConnector()); NodeConnector dst = - NodeConnector.fromString(link.getDstNodeConnector()); + NodeConnector.fromString(link.getDstNodeConnector()); addNodeConnectors(src, dst); } } @@ -292,6 +294,35 @@ public class TopologyManagerImplTest { public String getNodeDescription(Node node) { return null; } + + @Override + public Status removeControllerProperty(String propertyName){ + return null; + } + + @Override + public Set getConfiguredNotConnectedSwitches() { + // TODO Auto-generated method stub + return null; + } + + @Override + public Map getControllerProperties() { + // TODO Auto-generated method stub + return null; + } + + @Override + public Property getControllerProperty(String propertyName) { + // TODO Auto-generated method stub + return null; + } + + @Override + public Status setControllerProperty(Property property) { + // TODO Auto-generated method stub + return null; + } } /* @@ -485,13 +516,13 @@ public class TopologyManagerImplTest { Assert.assertTrue(topoManagerImpl.getUserLinks().isEmpty()); TopologyUserLinkConfig badlink1 = - new TopologyUserLinkConfig("bad1", "OF|1@OF|4", "OF|1@OF|5"); + new TopologyUserLinkConfig("bad1", "OF|1@OF|4", "OF|1@OF|5"); TopologyUserLinkConfig badlink2 = - new TopologyUserLinkConfig("bad2", "OF|10@OF|7", "OF|7@OF|13"); + new TopologyUserLinkConfig("bad2", "OF|10@OF|7", "OF|7@OF|13"); Assert.assertEquals(StatusCode.NOTFOUND, - topoManagerImpl.addUserLink(badlink1).getCode()); + topoManagerImpl.addUserLink(badlink1).getCode()); Assert.assertEquals(StatusCode.NOTFOUND, - topoManagerImpl.addUserLink(badlink2).getCode()); + topoManagerImpl.addUserLink(badlink2).getCode()); } @Test @@ -559,7 +590,7 @@ public class TopologyManagerImplTest { reverseLink[i] = new TopologyUserLinkConfig(name, dstNodeConnector, srcNodeConnector); Assert.assertEquals(StatusCode.NOTFOUND, - topoManagerImpl.addUserLink(link[i]).getCode()); + topoManagerImpl.addUserLink(link[i]).getCode()); swMgr.addNodeConnectors(link[i]); Assert.assertTrue(topoManagerImpl.addUserLink(link[i]).isSuccess()); } @@ -704,4 +735,35 @@ public class TopologyManagerImplTest { Assert.assertTrue(nodeNCmap.isEmpty()); } + + @Test + public void bug1348FixTest() throws ConstructionException { + TopologyManagerImpl topoManagerImpl = new TopologyManagerImpl(); + TestSwitchManager swMgr = new TestSwitchManager(); + topoManagerImpl.setSwitchManager(swMgr); + topoManagerImpl.nonClusterObjectCreate(); + + NodeConnector headnc1 = NodeConnectorCreator.createOFNodeConnector( + (short) 1, NodeCreator.createOFNode(1000L)); + NodeConnector tailnc1 = NodeConnectorCreator.createOFNodeConnector( + (short) 2, NodeCreator.createOFNode(2000L)); + Edge edge = new Edge(headnc1, tailnc1); + List updatedEdges = new ArrayList<>(); + Set edgeProps = new HashSet<>(); + edgeProps.add(new TimeStamp(System.currentTimeMillis(), "creation")); + edgeProps.add(new Latency(Latency.LATENCY100ns)); + edgeProps.add(new State(State.EDGE_UP)); + edgeProps.add(new Bandwidth(Bandwidth.BW100Gbps)); + edgeProps.add(new Description("Test edge")); + updatedEdges.add(new TopoEdgeUpdate(edge, edgeProps, UpdateType.CHANGED)); + + try { + topoManagerImpl.edgeUpdate(updatedEdges); + } catch (Exception e) { + Assert.fail("Exception was raised when trying to update edge properties: " + e.getMessage()); + } + + Assert.assertEquals(1, topoManagerImpl.getEdges().size()); + Assert.assertNotNull(topoManagerImpl.getEdges().get(edge)); + } }