*/
package org.opendaylight.transportpce.networkmodel.util;
+import static org.hamcrest.CoreMatchers.containsString;
+import static org.hamcrest.CoreMatchers.either;
import static org.hamcrest.CoreMatchers.hasItem;
import static org.hamcrest.CoreMatchers.hasItems;
import static org.hamcrest.CoreMatchers.not;
import java.io.FileReader;
import java.io.IOException;
import java.io.Reader;
+import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import org.opendaylight.transportpce.networkmodel.dto.TopologyShard;
import org.opendaylight.transportpce.networkmodel.util.test.JsonUtil;
import org.opendaylight.transportpce.networkmodel.util.test.NetworkmodelTestUtil;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev200827.Network;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev200827.network.Nodes;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev200827.network.NodesBuilder;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev200827.network.nodes.Mapping;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev200827.network.nodes.MappingBuilder;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev200827.network.nodes.MappingKey;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev200827.network.nodes.NodeInfoBuilder;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev181130.Node1;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.common.types.rev181019.NodeTypes;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.types.rev181130.xpdr.odu.switching.pools.OduSwitchingPools;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.types.rev181130.xpdr.odu.switching.pools.odu.switching.pools.NonBlockingList;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev181130.OpenroadmLinkType;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev181130.OpenroadmNodeType;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev181130.OpenroadmTpType;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.otn.common.types.rev181130.ODU2e;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.otn.common.types.rev181130.ODU4;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130.Link1;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130.networks.network.node.SwitchingPools;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.port.types.rev181130.If100GE;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.port.types.rev181130.If100GEODU4;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.port.types.rev181130.If10GEODU2e;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.port.types.rev181130.IfOCHOTU4ODU4;
-import org.opendaylight.yang.gen.v1.http.transportpce.topology.rev200129.OtnLinkType;
-import org.opendaylight.yang.gen.v1.http.transportpce.topology.rev200129.TerminationPoint1;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.networkutils.rev220630.OtnLinkType;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220316.Network;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220316.mapping.Mapping;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220316.mapping.MappingBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220316.mapping.MappingKey;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220316.network.Nodes;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220316.network.NodesBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220316.network.nodes.NodeInfoBuilder;
+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.NodeTypes;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.types.rev201211.xpdr.odu.switching.pools.OduSwitchingPools;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.types.rev201211.xpdr.odu.switching.pools.odu.switching.pools.NonBlockingList;
+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.xpdr.tp.supported.interfaces.SupportedInterfaceCapability;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.otn.common.types.rev210924.ODU2;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.otn.common.types.rev210924.ODU2e;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.otn.common.types.rev210924.ODU4;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210.Link1;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210.networks.network.node.SwitchingPools;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.port.types.rev201211.If100GE;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.port.types.rev201211.If100GEODU4;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.port.types.rev201211.If10GE;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.port.types.rev201211.If10GEODU2;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.port.types.rev201211.If10GEODU2e;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.port.types.rev201211.IfOCH;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.port.types.rev201211.IfOCHOTU4ODU4;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226.networks.network.Node;
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.TpId;
private Nodes portMappingBad;
public OpenRoadmOtnTopologyTest() {
- try (Reader reader = new FileReader("src/test/resources/portMapping.json");
+ try (Reader reader = new FileReader("src/test/resources/portMapping.json", StandardCharsets.UTF_8);
JsonReader portMappingReader = new JsonReader(reader)) {
Network portMapping = (Network) JsonUtil.getInstance().getDataObjectFromJson(portMappingReader,
- QName.create("http://org/opendaylight/transportpce/portmapping", "2020-08-27", "network"));
+ QName.create("http://org/opendaylight/transportpce/portmapping", "2022-03-16", "network"));
for (Nodes nodes : portMapping.nonnullNodes().values()) {
if (nodes.getNodeId().equals("XPDR-A1")) {
this.portMappingTpdr = nodes;
assertEquals(
Uint16.valueOf(1),
node.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130.Node1.class)
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210.Node1.class)
.getXpdrAttributes()
.getXpdrNumber());
//tests list of TPs
assertEquals("XPDR1-CLIENT1", tps.get(0).getTpId().getValue());
assertEquals(
"XPDR1-NETWORK1",
- tps.get(0).augmentation(TerminationPoint1.class).getAssociatedConnectionMapPort());
+ tps.get(0)
+ .augmentation(TerminationPoint1.class)
+ .getAssociatedConnectionMapTp()
+ .iterator()
+ .next()
+ .getValue());
assertEquals(
"only If100GE interface capabitily expected",
1,
tps.get(0).augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getTpSupportedInterfaces()
.getSupportedInterfaceCapability()
.size());
assertEquals(
- If100GE.class.getName(),
+ If100GE.VALUE,
tps.get(0).augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getTpSupportedInterfaces().nonnullSupportedInterfaceCapability()
.values().stream().findFirst()
- .get().getIfCapType().getName());
+ .get().getIfCapType());
assertEquals(
"first TP must be of type client",
OpenroadmTpType.XPONDERCLIENT,
- tps.get(0).augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev181130
- .TerminationPoint1.class)
- .getTpType());
+ tps.get(0).augmentation(TerminationPoint1.class).getTpType());
//tests network tp
assertEquals("XPDR1-NETWORK1", tps.get(2).getTpId().getValue());
assertEquals(
"XPDR1-CLIENT1",
- tps.get(2).augmentation(TerminationPoint1.class).getAssociatedConnectionMapPort());
+ tps.get(2).augmentation(TerminationPoint1.class)
+ .getAssociatedConnectionMapTp()
+ .iterator()
+ .next()
+ .getValue());
assertEquals(
- "only IfOCHOTU4ODU4 interface capabitily expected",
+ "only IfOCH interface capabitily expected",
1,
tps.get(2).augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getTpSupportedInterfaces()
.getSupportedInterfaceCapability()
.size());
assertEquals(
- IfOCHOTU4ODU4.class.getName(),
+ IfOCH.VALUE,
tps.get(2).augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getTpSupportedInterfaces()
.getSupportedInterfaceCapability()
.values().stream().findFirst()
.get()
- .getIfCapType()
- .getName());
- assertEquals(
- "the rate should be ODU4",
- ODU4.class.getName(),
+ .getIfCapType());
+ assertNull(
+ "the rate should be null",
tps.get(2).augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getXpdrTpPortConnectionAttributes()
- .getRate()
- .getName());
+ .getRate());
assertEquals(
"third TP must be of type network",
OpenroadmTpType.XPONDERNETWORK,
- tps.get(2).augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev181130.TerminationPoint1.class)
- .getTpType());
+ tps.get(2).augmentation(TerminationPoint1.class).getTpType());
}
@Test
assertEquals(
OpenroadmLinkType.OTNLINK,
sortedLinks.get(0).augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev181130.Link1.class)
+ org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev211210.Link1.class)
.getLinkType());
assertEquals(
"opposite link must be present",
"OTU4-SPDRZ-XPDR1-XPDR1-NETWORK1toSPDRA-XPDR1-XPDR1-NETWORK1",
sortedLinks.get(0).augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev181130.Link1.class)
+ org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev211210.Link1.class)
.getOppositeLink()
.getValue());
assertEquals(
"otn link type should be OTU4",
OtnLinkType.OTU4,
sortedLinks.get(0).augmentation(
- org.opendaylight.yang.gen.v1.http.transportpce.topology.rev200129.Link1.class)
+ org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.networkutils.rev220630.Link1.class)
.getOtnLinkType());
}
public void createOtnLinksForODU4NormalTest() {
TopologyShard topoShard = OpenRoadmOtnTopology
.createOtnLinks(
- NetworkmodelTestUtil.createSuppOTNLinks(OtnLinkType.OTU4, 100000),
- NetworkmodelTestUtil.createTpList(false));
+ NetworkmodelTestUtil.createSuppOTNLinks(OtnLinkType.OTU4, Uint32.valueOf(100000)),
+ NetworkmodelTestUtil.createTpList(false), OtnLinkType.ODTU4);
assertNotNull("TopologyShard should never be null", topoShard);
assertNull("list of nodes should be null", topoShard.getNodes());
List<Link> sortedLinks = topoShard.getLinks().stream()
sortedLinks.get(2).augmentation(Link1.class).getUsedBandwidth());
assertEquals(
- "ODU4-SPDRA-XPDR1-XPDR1-NETWORK1toSPDRZ-XPDR1-XPDR1-NETWORK1",
+ "ODTU4-SPDRA-XPDR1-XPDR1-NETWORK1toSPDRZ-XPDR1-XPDR1-NETWORK1",
sortedLinks.get(0).getLinkId().getValue());
assertEquals(
- "ODU4-SPDRZ-XPDR1-XPDR1-NETWORK1toSPDRA-XPDR1-XPDR1-NETWORK1",
+ "ODTU4-SPDRZ-XPDR1-XPDR1-NETWORK1toSPDRA-XPDR1-XPDR1-NETWORK1",
sortedLinks.get(1).getLinkId().getValue());
assertEquals("SPDRA-XPDR1", sortedLinks.get(0).getSource().getSourceNode().getValue());
assertEquals("SPDRZ-XPDR1", sortedLinks.get(0).getDestination().getDestNode().getValue());
OpenroadmLinkType.OTNLINK,
sortedLinks.get(0)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev181130.Link1.class)
+ org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev211210.Link1.class)
.getLinkType());
assertEquals(
"opposite link must be present",
- "ODU4-SPDRZ-XPDR1-XPDR1-NETWORK1toSPDRA-XPDR1-XPDR1-NETWORK1",
+ "ODTU4-SPDRZ-XPDR1-XPDR1-NETWORK1toSPDRA-XPDR1-XPDR1-NETWORK1",
sortedLinks.get(0)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev181130.Link1.class)
+ org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev211210.Link1.class)
.getOppositeLink()
.getValue());
assertEquals(
"otn link type should be ODTU4",
OtnLinkType.ODTU4,
sortedLinks.get(0)
- .augmentation(
- org.opendaylight.yang.gen.v1.http.transportpce.topology.rev200129.Link1.class)
+ .augmentation(org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.networkutils.rev220630
+ .Link1.class)
.getOtnLinkType());
assertEquals("list of TPs should contain 2 updated TPs", 2, topoShard.getTps().size());
"after ODU4 creation, its termination point should contain a TsPool list",
topoShard.getTps().get(0)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getXpdrTpPortConnectionAttributes()
.getTsPool());
80,
topoShard.getTps().get(0)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getXpdrTpPortConnectionAttributes()
.getTsPool()
"after ODU4 creation, its termination point should contain a TpnPool list",
topoShard.getTps().get(0)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getXpdrTpPortConnectionAttributes()
.getOdtuTpnPool().values().stream().findFirst()
80,
topoShard.getTps().get(0)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getXpdrTpPortConnectionAttributes()
.getOdtuTpnPool().values().stream().findFirst()
@Test
public void createOtnLinksForODU4WhenOTU4HaveBadBWParamsTest() {
- List<Link> otu4Links = NetworkmodelTestUtil.createSuppOTNLinks(OtnLinkType.OTU4, 100000);
+ List<Link> otu4Links = NetworkmodelTestUtil.createSuppOTNLinks(OtnLinkType.OTU4, Uint32.valueOf(100000));
List<Link> otu4LinksWithBadBWParam = new ArrayList<>();
for (Link link : otu4Links) {
otu4LinksWithBadBWParam.add(new LinkBuilder(link).removeAugmentation(Link1.class).build());
}
TopologyShard topoShard =
- OpenRoadmOtnTopology.createOtnLinks(otu4LinksWithBadBWParam, NetworkmodelTestUtil.createTpList(false));
+ OpenRoadmOtnTopology.createOtnLinks(otu4LinksWithBadBWParam, NetworkmodelTestUtil.createTpList(false),
+ OtnLinkType.OTU4);
assertNotNull("TopologyShard should never be null", topoShard);
assertNull("list of nodes should be null", topoShard.getNodes());
assertNull("list of links should be null", topoShard.getLinks());
otu4LinksWithBadBWParam.clear();
topoShard =
OpenRoadmOtnTopology.createOtnLinks(
- NetworkmodelTestUtil.createSuppOTNLinks(OtnLinkType.OTU4, 99000),
- NetworkmodelTestUtil.createTpList(false));
+ NetworkmodelTestUtil.createSuppOTNLinks(OtnLinkType.OTU4, Uint32.valueOf(99000)),
+ NetworkmodelTestUtil.createTpList(false), OtnLinkType.OTU4);
assertNull("list of nodes should be null", topoShard.getNodes());
assertNull("list of links should be null", topoShard.getLinks());
assertNull("list of tps should be null", topoShard.getTps());
public void deleteOtnLinksForODU4NormalTest() {
TopologyShard topoShard =
OpenRoadmOtnTopology.deleteOtnLinks(
- NetworkmodelTestUtil.createSuppOTNLinks(OtnLinkType.OTU4, 0),
- NetworkmodelTestUtil.createTpList(true));
+ NetworkmodelTestUtil.createSuppOTNLinks(OtnLinkType.OTU4, Uint32.valueOf(0)),
+ NetworkmodelTestUtil.createTpList(true), OtnLinkType.OTU4);
assertNotNull("TopologyShard should never be null", topoShard);
assertEquals("list of links should contain 2 links", 2, topoShard.getLinks().size());
assertEquals(
"after ODU4 deletion, its termination points should not contain any TsPool list",
topoShard.getTps().get(0)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getXpdrTpPortConnectionAttributes()
.getTsPool());
"after ODU4 deletion, its termination points should not contain any TpnPool list",
topoShard.getTps().get(0)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getXpdrTpPortConnectionAttributes()
.getOdtuTpnPool());
@Test
public void deleteOtnLinksForODU4WhenOTU4HaveBadBWParamsTest() {
- List<Link> otu4Links = NetworkmodelTestUtil.createSuppOTNLinks(OtnLinkType.OTU4, 0);
+ List<Link> otu4Links = NetworkmodelTestUtil.createSuppOTNLinks(OtnLinkType.OTU4, Uint32.valueOf(0));
List<Link> otu4LinksWithBadBWParam = new ArrayList<>();
for (Link link : otu4Links) {
otu4LinksWithBadBWParam.add(new LinkBuilder(link).removeAugmentation(Link1.class).build());
}
TopologyShard topoShard =
- OpenRoadmOtnTopology.deleteOtnLinks(otu4LinksWithBadBWParam, NetworkmodelTestUtil.createTpList(true));
+ OpenRoadmOtnTopology.deleteOtnLinks(otu4LinksWithBadBWParam, NetworkmodelTestUtil.createTpList(true),
+ OtnLinkType.OTU4);
assertNotNull("TopologyShard should never be null", topoShard);
assertNull("list of nodes should be null", topoShard.getNodes());
assertNull("list of links should be null", topoShard.getLinks());
// tests update for 10G creation
TopologyShard topoShard =
OpenRoadmOtnTopology.updateOtnLinks(
- NetworkmodelTestUtil.createSuppOTNLinks(OtnLinkType.ODTU4, 100000),
+ NetworkmodelTestUtil.createSuppOTNLinks(OtnLinkType.ODTU4, Uint32.valueOf(100000)),
NetworkmodelTestUtil.createTpList(true),
- "10G", (short)1, (short)1, false);
+ Uint32.valueOf(10), (short)1, (short)1, (short)8, false);
assertNotNull("TopologyShard should never be null", topoShard);
assertNull("list of nodes should be null", topoShard.getNodes());
List<Link> sortedLinks = topoShard.getLinks().stream()
.sorted((l1, l2) -> l1.getLinkId().getValue().compareTo(l2.getLinkId().getValue()))
.collect(Collectors.toList());
assertEquals("list of links should contain 2 links", 2, sortedLinks.size());
- assertTrue(sortedLinks.get(0).getLinkId().getValue().startsWith("ODU4-"));
+ assertTrue(sortedLinks.get(0).getLinkId().getValue().startsWith("ODTU4-"));
assertEquals(
"after 10G creation, available BW of supported ODU4 should be 90000",
Uint32.valueOf(90000),
72,
topoShard.getTps().get(0)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getXpdrTpPortConnectionAttributes()
.getTsPool()
"trib slot 1-8 should no longer be present in Trib slot list",
topoShard.getTps().get(0)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getXpdrTpPortConnectionAttributes()
.getTsPool(),
"trib slot 9 should always be present in trib slot list",
topoShard.getTps().get(0)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getXpdrTpPortConnectionAttributes()
.getTsPool(),
79,
topoShard.getTps().get(0)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getXpdrTpPortConnectionAttributes()
.getOdtuTpnPool().values().stream().findFirst()
"trib port 1 should no longer be present",
topoShard.getTps().get(0)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getXpdrTpPortConnectionAttributes()
.getOdtuTpnPool().values().stream().findFirst()
// tests update for 10G deletion
sortedLinks.clear();
- topoShard = OpenRoadmOtnTopology.updateOtnLinks(topoShard.getLinks(), topoShard.getTps(), "10G", (short)1,
- (short)1, true);
+ topoShard = OpenRoadmOtnTopology.updateOtnLinks(topoShard.getLinks(), topoShard.getTps(), Uint32.valueOf(10),
+ (short)1, (short)1, (short)8, true);
sortedLinks = topoShard.getLinks().stream()
.sorted((l1, l2) -> l1.getLinkId().getValue().compareTo(l2.getLinkId().getValue()))
.collect(Collectors.toList());
assertEquals("list of links should contain 2 links", 2, sortedLinks.size());
- assertTrue(sortedLinks.get(0).getLinkId().getValue().startsWith("ODU4-"));
+ assertTrue(sortedLinks.get(0).getLinkId().getValue().startsWith("ODTU4-"));
assertEquals(
"after 10G deletion, available BW of supported ODU4 should be 100 000",
Uint32.valueOf(100000),
80,
topoShard.getTps().get(0)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getXpdrTpPortConnectionAttributes()
.getTsPool()
"after 10G deletion, trib slot list should contain items 1-8",
topoShard.getTps().get(0)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getXpdrTpPortConnectionAttributes()
.getTsPool(),
80,
topoShard.getTps().get(0)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getXpdrTpPortConnectionAttributes()
.getOdtuTpnPool().values().stream().findFirst()
"after 10G deletion, trib port list should contain items 1",
topoShard.getTps().get(0)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getXpdrTpPortConnectionAttributes()
.getOdtuTpnPool().values().stream().findFirst()
// tests update for 1G creation
TopologyShard topoShard =
OpenRoadmOtnTopology.updateOtnLinks(
- NetworkmodelTestUtil.createSuppOTNLinks(OtnLinkType.ODTU4, 100000),
+ NetworkmodelTestUtil.createSuppOTNLinks(OtnLinkType.ODTU4, Uint32.valueOf(100000)),
NetworkmodelTestUtil.createTpList(true),
- "1G", (short)1, (short)1, false);
+ Uint32.valueOf(1), (short)1, (short)1, (short)1, false);
assertNotNull("TopologyShard should never be null", topoShard);
assertNull("list of nodes should be null", topoShard.getNodes());
List<Link> sortedLinks = topoShard.getLinks().stream()
.sorted((l1, l2) -> l1.getLinkId().getValue().compareTo(l2.getLinkId().getValue()))
.collect(Collectors.toList());
assertEquals("list of links should contain 2 links", 2, sortedLinks.size());
- assertTrue(sortedLinks.get(0).getLinkId().getValue().startsWith("ODU4-"));
+ assertTrue(sortedLinks.get(0).getLinkId().getValue().startsWith("ODTU4-"));
assertEquals(
"after 1G creation, available BW of supported ODU4 should be 99000",
Uint32.valueOf(99000),
79,
topoShard.getTps().get(0)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getXpdrTpPortConnectionAttributes()
.getTsPool()
"trib slot 1 should no longer be present in Trib slot list",
topoShard.getTps().get(0)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getXpdrTpPortConnectionAttributes()
.getTsPool(),
"trib slot 2 should always be present in Trib slot list",
topoShard.getTps().get(0)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getXpdrTpPortConnectionAttributes().getTsPool(),
hasItem(Uint16.valueOf(2)));
79,
topoShard.getTps().get(0)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getXpdrTpPortConnectionAttributes()
.getOdtuTpnPool().values().stream().findFirst()
"trib port 1 should no longer be present in Trib port list",
topoShard.getTps().get(0)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getXpdrTpPortConnectionAttributes()
.getOdtuTpnPool().values().stream().findFirst()
OpenRoadmOtnTopology.updateOtnLinks(
topoShard.getLinks(),
topoShard.getTps(),
- "1G", (short)1, (short)1, true);
+ Uint32.valueOf(1), (short)1, (short)1, (short)1, true);
sortedLinks = topoShard.getLinks().stream()
.sorted((l1, l2) -> l1.getLinkId().getValue().compareTo(l2.getLinkId().getValue()))
.collect(Collectors.toList());
assertEquals("list of links should contain 2 links", 2, sortedLinks.size());
- assertTrue(sortedLinks.get(0).getLinkId().getValue().startsWith("ODU4-"));
+ assertTrue(sortedLinks.get(0).getLinkId().getValue().startsWith("ODTU4-"));
assertEquals(
"after 1G deletion, available BW of supported ODU4 should be 100 000",
Uint32.valueOf(100000),
80,
topoShard.getTps().get(0)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getXpdrTpPortConnectionAttributes()
.getTsPool()
"after 1G deletion, trib slot list should contain items 1 and 2",
topoShard.getTps().get(0)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getXpdrTpPortConnectionAttributes()
.getTsPool(),
80,
topoShard.getTps().get(0)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getXpdrTpPortConnectionAttributes()
.getOdtuTpnPool().values().stream().findFirst()
"after 1G deletion, trib port list should contain items 1",
topoShard.getTps().get(0)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getXpdrTpPortConnectionAttributes()
.getOdtuTpnPool().values().stream().findFirst()
@Test
public void updateOtnLinksForODU4WhenBWParamsNotPresentTest() {
- List<Link> odu4Links = NetworkmodelTestUtil.createSuppOTNLinks(OtnLinkType.ODTU4, 100000);
+ List<Link> odu4Links = NetworkmodelTestUtil.createSuppOTNLinks(OtnLinkType.ODTU4, Uint32.valueOf(100000));
List<Link> odu4LinksWithBadBWParam = new ArrayList<>();
for (Link link : odu4Links) {
odu4LinksWithBadBWParam.add(new LinkBuilder(link).removeAugmentation(Link1.class).build());
OpenRoadmOtnTopology.updateOtnLinks(
odu4LinksWithBadBWParam,
NetworkmodelTestUtil.createTpList(true),
- "1G", (short)1, (short)1, false);
+ Uint32.valueOf(1), (short)1, (short)1, (short)10, false);
assertNotNull("TopologyShard should never be null", topoShard);
assertNull("list of nodes should be null", topoShard.getNodes());
assertNull("list of links should be null", topoShard.getLinks());
@Test
public void updateOtnLinksForODU4WhenAvailBWNotSufficientTest() {
- List<Link> odu4LinksWithBadBWParam = NetworkmodelTestUtil.createSuppOTNLinks(OtnLinkType.ODTU4, 8000);
+ List<Link> odu4LinksWithBadBWParam = NetworkmodelTestUtil
+ .createSuppOTNLinks(OtnLinkType.ODTU4, Uint32.valueOf(8000));
TopologyShard topoShard =
OpenRoadmOtnTopology.updateOtnLinks(
odu4LinksWithBadBWParam,
NetworkmodelTestUtil.createTpList(true),
- "10G", (short)1, (short)1, false);
+ Uint32.valueOf(10), (short)1, (short)1, (short)10, false);
assertNotNull("TopologyShard should never be null", topoShard);
assertNull("list of nodes should be null", topoShard.getNodes());
assertNull("list of links should be null", topoShard.getLinks());
private void checkSpdrNode(Node node) {
Uint16 xpdrNb = node
- .augmentation(org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130.Node1.class)
+ .augmentation(org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210.Node1.class)
.getXpdrAttributes().getXpdrNumber();
assertEquals("SPDR-SA1-XPDR" + xpdrNb, node.getNodeId().getValue());
if (xpdrNb.equals(Uint16.valueOf(1))) {
checkSpdrSwitchingPools(
xpdrNb,
node.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130.Node1.class)
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210.Node1.class)
.getSwitchingPools());
List<TerminationPoint> tpList = node.augmentation(
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.Node1.class)
assertThat(
nbl.getTpList(),
containsInAnyOrder(new TpId("XPDR1-NETWORK1"),
- new TpId("XPDR1-CLIENT" + nb)));
+ new TpId("XPDR1-CLIENT" + nb)));
}
} else if (xpdrNb.equals(Uint16.valueOf(2))) {
assertEquals(
}
private void checkSpdrTpList(Uint16 xpdrNb, List<TerminationPoint> tpList) {
+ LOG.info("tpList = {}", tpList);
assertEquals(
"only IfOCHOTU4ODU4 interface capabitily expected",
- IfOCHOTU4ODU4.class,
+ IfOCHOTU4ODU4.VALUE,
tpList.get(4)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getTpSupportedInterfaces()
.getSupportedInterfaceCapability().values().stream().findFirst()
.getIfCapType());
assertEquals(
"the rate should be ODU4",
- ODU4.class,
+ ODU4.VALUE,
tpList.get(4)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getXpdrTpPortConnectionAttributes()
.getRate());
assertEquals(
"XPDR" + xpdrNb + "-NETWORK1",
tpList.get(4).getSupportingTerminationPoint().values().stream().findFirst()
- .get().getTpRef());
+ .get().getTpRef().getValue());
if (xpdrNb.equals(Uint16.valueOf(1))) {
assertEquals("should contain 5 TPs", 5, tpList.size());
assertEquals("XPDR1-CLIENT1", tpList.get(0).getTpId().getValue());
assertEquals("XPDR1-CLIENT2", tpList.get(1).getTpId().getValue());
assertEquals("XPDR1-NETWORK1", tpList.get(4).getTpId().getValue());
assertEquals(
- "only If10GEODU2e interface capabitily expected",
- If10GEODU2e.class,
- tpList.get(2)
+ "supported interface capability of tp-id XPDR1-CLIENT2 should contain 2 if-cap-type",
+ 2,
+ tpList.get(1)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getTpSupportedInterfaces()
- .getSupportedInterfaceCapability().values().stream().findFirst()
- .get()
- .getIfCapType());
+ .getSupportedInterfaceCapability().values().size());
assertEquals(
- "the rate should be ODU2e",
- ODU2e.class,
+ "supported interface capability of tp-id XPDR1-CLIENT3 should contain 3 if-cap-type",
+ 3,
tpList.get(2)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
+ .TerminationPoint1.class)
+ .getTpSupportedInterfaces()
+ .getSupportedInterfaceCapability().values().size());
+ List<SupportedInterfaceCapability> sicListClient1 = tpList.get(0)
+ .augmentation(
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
+ .TerminationPoint1.class)
+ .getTpSupportedInterfaces()
+ .getSupportedInterfaceCapability().values().stream().collect(Collectors.toList());
+ for (SupportedInterfaceCapability supportedInterfaceCapability : sicListClient1) {
+ assertThat("tp should have 2 if-cap-type: if-10GE-ODU2e, if-10GE-ODU2",
+ String.valueOf(supportedInterfaceCapability.getIfCapType()),
+ either(containsString(String.valueOf(If10GEODU2e.VALUE)))
+ .or(containsString(String.valueOf(If10GEODU2.VALUE))));
+ }
+ List<SupportedInterfaceCapability> sicListClient3 = tpList.get(3)
+ .augmentation(
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
+ .TerminationPoint1.class)
+ .getTpSupportedInterfaces()
+ .getSupportedInterfaceCapability().values().stream().collect(Collectors.toList());
+ for (SupportedInterfaceCapability supportedInterfaceCapability : sicListClient3) {
+ assertThat("tp should have 3 if-cap-type: if-10GE-ODU2e, if-10GE-ODU2, if-10GE",
+ String.valueOf(supportedInterfaceCapability.getIfCapType()),
+ either(containsString(String.valueOf(If10GEODU2e.VALUE)))
+ .or(containsString(String.valueOf(If10GEODU2.VALUE)))
+ .or(containsString(String.valueOf(If10GE.VALUE))));
+ }
+ assertThat("the rate should be ODU2 or ODU2e",
+ String.valueOf(tpList.get(2)
+ .augmentation(
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getXpdrTpPortConnectionAttributes()
- .getRate());
+ .getRate()),
+ either(containsString(String.valueOf(ODU2e.VALUE)))
+ .or(containsString(String.valueOf(ODU2.VALUE))));
assertEquals(
"TP should be of type client",
OpenroadmTpType.XPONDERCLIENT,
- tpList.get(2)
- .augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev181130
- .TerminationPoint1.class)
- .getTpType());
+ tpList.get(2).augmentation(TerminationPoint1.class).getTpType());
assertEquals(
"TP should be of type network",
OpenroadmTpType.XPONDERNETWORK,
- tpList.get(4)
- .augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev181130
- .TerminationPoint1.class)
- .getTpType());
+ tpList.get(4).augmentation(TerminationPoint1.class).getTpType());
} else if (xpdrNb.equals(Uint16.valueOf(2))) {
assertEquals("should contain 8 TPs", 8, tpList.size());
assertEquals("XPDR2-CLIENT1", tpList.get(0).getTpId().getValue());
assertEquals("XPDR2-NETWORK1", tpList.get(4).getTpId().getValue());
assertEquals("XPDR2-NETWORK2", tpList.get(5).getTpId().getValue());
assertEquals(
- "only If100GEODU4 interface capabitily expected",
- If100GEODU4.class,
- tpList.get(2)
+ "only IfOCHOTU4ODU4 interface capabitily expected",
+ IfOCHOTU4ODU4.VALUE,
+ tpList.get(5)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
.getTpSupportedInterfaces()
.getSupportedInterfaceCapability().values().stream().findFirst()
.get()
.getIfCapType());
assertEquals(
- "the rate should be ODU4",
- ODU4.class,
+ "supported interface capability of tp should contain 2 IfCapType",
+ 2,
tpList.get(2)
.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev181130
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
.TerminationPoint1.class)
- .getXpdrTpPortConnectionAttributes()
- .getRate());
+ .getTpSupportedInterfaces()
+ .getSupportedInterfaceCapability().values().size());
+ List<SupportedInterfaceCapability> sicListClient3 = tpList.get(2)
+ .augmentation(
+ org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210
+ .TerminationPoint1.class)
+ .getTpSupportedInterfaces()
+ .getSupportedInterfaceCapability().values().stream().collect(Collectors.toList());
+ for (SupportedInterfaceCapability supportedInterfaceCapability : sicListClient3) {
+ assertThat("tp should have 2 if-cap-type: if-100GE-ODU4, if-100GE",
+ String.valueOf(supportedInterfaceCapability.getIfCapType()),
+ either(containsString(String.valueOf(If100GEODU4.VALUE)))
+ .or(containsString(String.valueOf(If100GE.VALUE))));
+ }
assertEquals(
"TP should be of type client", OpenroadmTpType.XPONDERCLIENT,
- tpList.get(2)
- .augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev181130
- .TerminationPoint1.class)
- .getTpType());
+ tpList.get(2).augmentation(TerminationPoint1.class).getTpType());
assertEquals(
"TP should be of type network", OpenroadmTpType.XPONDERNETWORK,
- tpList.get(6)
- .augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev181130
- .TerminationPoint1.class)
- .getTpType());
+ tpList.get(6).augmentation(TerminationPoint1.class).getTpType());
}
}
}