X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=networkmodel%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Ftransportpce%2Fnetworkmodel%2Futil%2FOpenRoadmTopologyTest.java;h=4acee5cbda6f2b79394b0f1e47bd0f8be18f7c83;hb=56d1795b647693ec1d620d6aca2c4003e3b302ca;hp=e791bfa58e8aa6818af6a62fc6afbb26e8fea2da;hpb=56ad6406faba3227e19a6f609325c8b9dbaca3fb;p=transportpce.git diff --git a/networkmodel/src/test/java/org/opendaylight/transportpce/networkmodel/util/OpenRoadmTopologyTest.java b/networkmodel/src/test/java/org/opendaylight/transportpce/networkmodel/util/OpenRoadmTopologyTest.java index e791bfa58..4acee5cbd 100644 --- a/networkmodel/src/test/java/org/opendaylight/transportpce/networkmodel/util/OpenRoadmTopologyTest.java +++ b/networkmodel/src/test/java/org/opendaylight/transportpce/networkmodel/util/OpenRoadmTopologyTest.java @@ -42,16 +42,16 @@ import org.opendaylight.transportpce.common.fixedflex.GridConstant; import org.opendaylight.transportpce.common.network.NetworkTransactionService; import org.opendaylight.transportpce.networkmodel.dto.TopologyShard; import org.opendaylight.transportpce.networkmodel.util.test.NetworkmodelTestUtil; -import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210310.network.Nodes; -import org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev200529.Link1; -import org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev200529.Node1; -import org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev200529.TerminationPoint1; +import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220316.network.Nodes; +import org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev211210.Link1; +import org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev211210.Node1; +import org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev211210.TerminationPoint1; import org.opendaylight.yang.gen.v1.http.org.openroadm.device.types.rev191129.XpdrNodeTypes; -import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev200529.Link1Builder; -import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev200529.OpenroadmLinkType; -import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev200529.OpenroadmNodeType; -import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev200529.OpenroadmTpType; -import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev200529.available.freq.map.AvailFreqMaps; +import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev211210.Link1Builder; +import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev211210.OpenroadmLinkType; +import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev211210.OpenroadmNodeType; +import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev211210.OpenroadmTpType; +import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev211210.available.freq.map.AvailFreqMaps; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226.NetworkId; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226.Networks; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226.NodeId; @@ -61,6 +61,7 @@ import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226.networks.network.node.SupportingNode; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.LinkId; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.Network1; +import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.TpId; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.networks.network.Link; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.networks.network.LinkBuilder; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.networks.network.LinkKey; @@ -78,7 +79,7 @@ public class OpenRoadmTopologyTest { @Test public void createTopologyShardForDegreeTest() { - Nodes mappingNode = NetworkmodelTestUtil.createMappingForRdm("ROADMA01", "nodeA", 2, 0); + Nodes mappingNode = NetworkmodelTestUtil.createMappingForRdm("ROADMA01", "nodeA", 2, List.of()); TopologyShard topologyShard = OpenRoadmTopology.createTopologyShard(mappingNode); assertNotNull(topologyShard); assertEquals("Should contain 2 Degree nodes only", 2, topologyShard.getNodes().size()); @@ -97,19 +98,20 @@ public class OpenRoadmTopologyTest { assertEquals("Should contain 2 express links", 2, links.size()); assertEquals("ROADMA01-DEG1-DEG1-CTP-TXRXtoROADMA01-DEG2-DEG2-CTP-TXRX", links.get(0).getLinkId().getValue()); assertEquals("ROADMA01-DEG1", links.get(0).getSource().getSourceNode().getValue()); - assertEquals("DEG1-CTP-TXRX", links.get(0).getSource().getSourceTp()); + assertEquals("DEG1-CTP-TXRX", links.get(0).getSource().getSourceTp().getValue()); assertEquals("ROADMA01-DEG2", links.get(0).getDestination().getDestNode().getValue()); - assertEquals("DEG2-CTP-TXRX", links.get(0).getDestination().getDestTp()); + assertEquals("DEG2-CTP-TXRX", links.get(0).getDestination().getDestTp().getValue()); assertEquals("ROADMA01-DEG2-DEG2-CTP-TXRXtoROADMA01-DEG1-DEG1-CTP-TXRX", links.get(1).getLinkId().getValue()); assertEquals("ROADMA01-DEG2", links.get(1).getSource().getSourceNode().getValue()); - assertEquals("DEG2-CTP-TXRX", links.get(1).getSource().getSourceTp()); + assertEquals("DEG2-CTP-TXRX", links.get(1).getSource().getSourceTp().getValue()); assertEquals("ROADMA01-DEG1", links.get(1).getDestination().getDestNode().getValue()); - assertEquals("DEG1-CTP-TXRX", links.get(1).getDestination().getDestTp()); + assertEquals("DEG1-CTP-TXRX", links.get(1).getDestination().getDestTp().getValue()); } @Test public void createTopologyShardForSrgTest() { - Nodes mappingNode = NetworkmodelTestUtil.createMappingForRdm("ROADMA01", "nodeA", 0, 1); + Nodes mappingNode = NetworkmodelTestUtil.createMappingForRdm("ROADMA01", "nodeA", 0, + List.of(Integer.valueOf(1))); TopologyShard topologyShard = OpenRoadmTopology.createTopologyShard(mappingNode); assertNotNull(topologyShard); List nodes = topologyShard.getNodes(); @@ -118,9 +120,28 @@ public class OpenRoadmTopologyTest { checkSrgNode("1", nodes.get(0)); } + @Test + public void createTopologyShardForMultipleSrgTest() { + List srgNbs = List.of(Integer.valueOf(1), Integer.valueOf(2), Integer.valueOf(10), + Integer.valueOf(11)); + Nodes mappingNode = NetworkmodelTestUtil.createMappingForRdm("ROADMA01", "nodeA", 0, srgNbs); + TopologyShard topologyShard = OpenRoadmTopology.createTopologyShard(mappingNode); + assertNotNull(topologyShard); + List nodes = topologyShard.getNodes().stream() + .sorted((n1, n2) -> n1.getNodeId().getValue().compareTo(n2.getNodeId().getValue())) + .collect(Collectors.toList()); + assertEquals("Should contain 4 SRG nodes", 4, nodes.size()); + assertEquals("Should contain 0 link", 0, topologyShard.getLinks().size()); + checkSrgNode("1", nodes.get(0)); + checkSrgNode("10", nodes.get(1)); + checkSrgNode("11", nodes.get(2)); + checkSrgNode("2", nodes.get(3)); + } + @Test public void createTopologyShardForCompleteRdmNodeTest() { - Nodes mappingNode = NetworkmodelTestUtil.createMappingForRdm("ROADMA01", "nodeA", 2, 2); + Nodes mappingNode = NetworkmodelTestUtil.createMappingForRdm("ROADMA01", "nodeA", 2, + List.of(Integer.valueOf(1), Integer.valueOf(2))); TopologyShard topologyShard = OpenRoadmTopology.createTopologyShard(mappingNode); assertNotNull(topologyShard); assertEquals("Should contain 2 Deg and 2 SRG nodes", 4, topologyShard.getNodes().size()); @@ -181,7 +202,7 @@ public class OpenRoadmTopologyTest { @Ignore @Test public void createTopologyShardForRdmWithoutClliTest() { - Nodes mappingNode = NetworkmodelTestUtil.createMappingForRdm("ROADMA01", null, 2, 0); + Nodes mappingNode = NetworkmodelTestUtil.createMappingForRdm("ROADMA01", null, 2, List.of()); TopologyShard topologyShard = OpenRoadmTopology.createTopologyShard(mappingNode); assertNull("clli must not be null", topologyShard); } @@ -193,12 +214,13 @@ public class OpenRoadmTopologyTest { String srcTp = "DEG1-CTP-TXRX"; String destTp = "SRG1-CP-TXRX"; LinkId linkId = LinkIdUtil.buildLinkId(srcNode, srcTp, dstNode, destTp); - org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev200529.Link1 link1 = + org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev211210.Link1 link1 = new Link1Builder().build(); Link link = new LinkBuilder() .setLinkId(linkId) - .setSource(new SourceBuilder().setSourceNode(new NodeId(srcNode)).setSourceTp(srcTp).build()) - .setDestination(new DestinationBuilder().setDestNode(new NodeId(dstNode)).setDestTp(destTp).build()) + .setSource(new SourceBuilder().setSourceNode(new NodeId(srcNode)).setSourceTp(new TpId(srcTp)).build()) + .setDestination(new DestinationBuilder().setDestNode(new NodeId(dstNode)).setDestTp(new TpId(destTp)) + .build()) .addAugmentation(link1) .build(); InstanceIdentifier linkIID = InstanceIdentifier.builder(Networks.class).child(Network.class, @@ -271,10 +293,10 @@ public class OpenRoadmTopologyTest { assertEquals("ROADMA01", supportingNodes.get(1).getNodeRef().getValue()); assertEquals(OpenroadmNodeType.DEGREE, node.augmentation(Node1.class).getNodeType()); assertEquals(Uint16.valueOf(nodeNb), node.augmentation( - org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev200529.Node1.class) + org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev211210.Node1.class) .getDegreeAttributes().getDegreeNumber()); List availFreqMapsValues = new ArrayList<>(node.augmentation( - org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev200529.Node1.class) + org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev211210.Node1.class) .getDegreeAttributes().getAvailFreqMaps().values()); assertEquals(GridConstant.NB_OCTECTS, availFreqMapsValues.get(0).getFreqMap().length); byte[] byteArray = new byte[GridConstant.NB_OCTECTS]; @@ -304,7 +326,7 @@ public class OpenRoadmTopologyTest { assertEquals("ROADMA01", supportingNodes.get(1).getNodeRef().getValue()); assertEquals(OpenroadmNodeType.SRG, node.augmentation(Node1.class).getNodeType()); List availFreqMapsValues = new ArrayList<>(node.augmentation( - org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev200529.Node1.class) + org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev211210.Node1.class) .getSrgAttributes().getAvailFreqMaps().values()); assertEquals(GridConstant.NB_OCTECTS, availFreqMapsValues.get(0).getFreqMap().length); byte[] byteArray = new byte[GridConstant.NB_OCTECTS]; @@ -341,14 +363,19 @@ public class OpenRoadmTopologyTest { assertEquals(4, tps.size()); assertEquals("XPDR1-CLIENT1", tps.get(0).getTpId().getValue()); assertEquals(OpenroadmTpType.XPONDERCLIENT, tps.get(0).augmentation(TerminationPoint1.class).getTpType()); - assertEquals("XPDR1-NETWORK1", tps.get(0).augmentation( - org.opendaylight.yang.gen.v1.http.transportpce.topology.rev201019.TerminationPoint1.class) - .getAssociatedConnectionMapPort()); + assertEquals("XPDR1-NETWORK1", tps.get(0).augmentation(TerminationPoint1.class) + .getAssociatedConnectionMapTp() + .iterator() + .next() + .getValue()); assertEquals("XPDR1-NETWORK1", tps.get(2).getTpId().getValue()); assertEquals(OpenroadmTpType.XPONDERNETWORK, tps.get(2).augmentation(TerminationPoint1.class).getTpType()); assertEquals("XPDR1-CLIENT1", tps.get(2).augmentation( - org.opendaylight.yang.gen.v1.http.transportpce.topology.rev201019.TerminationPoint1.class) - .getAssociatedConnectionMapPort()); + TerminationPoint1.class) + .getAssociatedConnectionMapTp() + .iterator() + .next() + .getValue()); } private void checkOtnXpdrNode(Node node) {