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.rev210425.network.Nodes;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220114.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.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;
@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());
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<Node> nodes = topologyShard.getNodes();
checkSrgNode("1", nodes.get(0));
}
+ @Test
+ public void createTopologyShardForMultipleSrgTest() {
+ List<Integer> 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<Node> 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());
@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);
}
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<Link> linkIID = InstanceIdentifier.builder(Networks.class).child(Network.class,
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)
+ org.opendaylight.yang.gen.v1.http.transportpce.topology.rev220123.TerminationPoint1.class)
.getAssociatedConnectionMapPort());
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)
+ org.opendaylight.yang.gen.v1.http.transportpce.topology.rev220123.TerminationPoint1.class)
.getAssociatedConnectionMapPort());
}