+ public void testInitSrgTps() {
+
+ pceOpticalNode = new PceOpticalNode(node,
+ OpenroadmNodeType.ROADM, new NodeId("optical"), ServiceFormat.OMS, "test");
+ pceOpticalNode.initSrgTps();
+ pceOpticalNode.initXndrTps();
+ pceOpticalNode.initWLlist();
+ Assert.assertFalse(pceOpticalNode.isValid());
+ Assert.assertFalse(pceOpticalNode.checkWL(12));
+ Assert.assertTrue(pceOpticalNode.checkTP("testTP"));
+ Assert.assertNull(pceOpticalNode.getAvailableTribPorts());
+ Assert.assertNull(pceOpticalNode.getAvailableTribPorts());
+ Assert.assertNull(pceOpticalNode.getXpdrClient("test"));
+ }
+
+ @Test
+ public void testInitXndrTpSrgTypes() {
+ NodeBuilder node1Builder = getNodeBuilder(geSupportingNodes(), OpenroadmTpType.XPONDERNETWORK);
+ Node specificNode = node1Builder.build();
+ pceOpticalNode = new PceOpticalNode(specificNode,
+ OpenroadmNodeType.SRG, new NodeId("optical"), ServiceFormat.OMS, "test");
+ pceOpticalNode.initWLlist();
+ }
+
+ @Test
+ public void testInitXndrTpDegTypes() {
+ pceOpticalNode = new PceOpticalNode(node,
+ OpenroadmNodeType.DEGREE, new NodeId("optical"), ServiceFormat.OMS, "test");
+ pceOpticalNode.initWLlist();
+ }
+
+ @Test
+ public void testInitXndrTpXpondrTypes() {
+ pceOpticalNode = new PceOpticalNode(node,
+ OpenroadmNodeType.XPONDER, new NodeId("optical"), ServiceFormat.OMS, "test");
+ pceOpticalNode.initWLlist();
+ }
+
+ @Test
+ public void testInitWLlist() {
+ pceOpticalNode = new PceOpticalNode(node,
+ OpenroadmNodeType.ROADM, new NodeId("optical"), ServiceFormat.OMS, "test");
+ pceOpticalNode.initXndrTps();
+ }
+
+ @Test
+ public void testGetRdmSrgClient() {
+ NodeBuilder node1Builder = getNodeBuilder(geSupportingNodes(), OpenroadmTpType.SRGTXRXPP);
+ Node specificNode = node1Builder.build();
+ pceOpticalNode = new PceOpticalNode(specificNode,
+ OpenroadmNodeType.ROADM, new NodeId("optical"), ServiceFormat.OMS, "test");
+ pceOpticalNode.initSrgTps();
+ pceOpticalNode.getRdmSrgClient("7");
+ }
+
+ @Test
+ public void testGetRdmSrgClientEmpty() {
+ NodeBuilder node1Builder = getNodeBuilderEmpty(geSupportingNodes(), OpenroadmTpType.SRGTXRXPP);
+ Node specificNode = node1Builder.build();
+ pceOpticalNode = new PceOpticalNode(specificNode,
+ OpenroadmNodeType.ROADM, new NodeId("optical"), ServiceFormat.OMS, "test");
+ pceOpticalNode.initSrgTps();
+ pceOpticalNode.initWLlist();
+ pceOpticalNode.initXndrTps();
+ pceOpticalNode.getRdmSrgClient("7");
+ }
+
+ @Test
+ public void testGetRdmSrgClientDeg() {
+ NodeBuilder node1Builder = getNodeBuilder(geSupportingNodes(), OpenroadmTpType.SRGTXRXPP);
+ Node specificNode = node1Builder.build();
+ pceOpticalNode = new PceOpticalNode(specificNode,
+ OpenroadmNodeType.DEGREE, new NodeId("optical"), ServiceFormat.OMS, "test");
+ pceOpticalNode.initSrgTps();
+ pceOpticalNode.getRdmSrgClient("7");
+ }
+
+ @Test
+ public void testGetRdmSrgClientsrgtxcp() {
+ NodeBuilder node1Builder = getNodeBuilder(geSupportingNodes(), OpenroadmTpType.SRGTXCP);
+ Node specificNode = node1Builder.build();
+ pceOpticalNode = new PceOpticalNode(specificNode,
+ OpenroadmNodeType.ROADM, new NodeId("optical"), ServiceFormat.OMS, "test");
+ pceOpticalNode.initSrgTps();
+ pceOpticalNode.getRdmSrgClient("5");
+ }
+
+ @Test
+ public void testGetRdmSrgClientDegreerxtpp() {
+ NodeBuilder node1Builder = getNodeBuilder(geSupportingNodes(), OpenroadmTpType.DEGREERXTTP);
+ node = node1Builder.build();
+ pceOpticalNode = new PceOpticalNode(node,
+ OpenroadmNodeType.ROADM, new NodeId("optical"), ServiceFormat.OMS, "test");
+ pceOpticalNode.initSrgTps();
+ pceOpticalNode.getRdmSrgClient("2");
+ }
+
+ private List<SupportingNode> geSupportingNodes() {
+ List<SupportingNode> supportingNodes1 = new ArrayList<>();
+ supportingNodes1
+ .add(new SupportingNodeBuilder()
+ .setNodeRef(new NodeId("node 1"))
+ .setNetworkRef(new NetworkId(NetworkUtils.CLLI_NETWORK_ID))
+ .build());
+
+ supportingNodes1
+ .add(new SupportingNodeBuilder()
+ .setNodeRef(new NodeId("node 2"))
+ .setNetworkRef(new NetworkId(NetworkUtils.UNDERLAY_NETWORK_ID))
+ .build());
+ return supportingNodes1;
+ }
+
+ private NodeBuilder getNodeBuilder(List<SupportingNode> supportingNodes1, OpenroadmTpType openroadmTpType) {
+
+ TerminationPoint1Builder tp1Bldr = getTerminationPoint1Builder(openroadmTpType);
+ TerminationPointBuilder xpdrTpBldr = getTerminationPointBuilder();
+ xpdrTpBldr.addAugmentation(TerminationPoint1.class, tp1Bldr.build());
+ xpdrTpBldr.addAugmentation(
+ org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev181130.TerminationPoint1.class,
+ createAnotherTerminationPoint().build());
+ org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev181130.Node1 node1 = getNode1();
+ org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.Node1 node1Rev180226 =
+ new Node1Builder()
+ .setTerminationPoint(ImmutableList.of(xpdrTpBldr.build()))
+ .build();
+
+
+ return new NodeBuilder()
+ .setNodeId(new NodeId("node_test"))
+ .withKey(new NodeKey(new NodeId("node 1")))
+ .addAugmentation(
+ Node1.class, node1Rev180226)
+ .addAugmentation(
+ org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev181130.Node1.class,
+ node1)
+ .setSupportingNode(supportingNodes1);
+ }
+
+ private NodeBuilder getNodeBuilderEmpty(List<SupportingNode> supportingNodes1, OpenroadmTpType openroadmTpType) {
+
+ TerminationPoint1Builder tp1Bldr = getTerminationPoint1Builder(openroadmTpType);
+ TerminationPointBuilder xpdrTpBldr = getTerminationPointBuilder();
+ xpdrTpBldr.addAugmentation(TerminationPoint1.class, tp1Bldr.build());
+ xpdrTpBldr.addAugmentation(
+ org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev181130.TerminationPoint1.class,
+ createAnotherTerminationPoint().build());
+
+ org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev181130.Node1 node1 = getNode1Empty();
+ org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.Node1 node1Rev180226 =
+ new Node1Builder()
+ .setTerminationPoint(ImmutableList.of(xpdrTpBldr.build()))
+ .build();
+
+
+ return new NodeBuilder()
+ .setNodeId(new NodeId("node_test"))
+ .withKey(new NodeKey(new NodeId("node 1")))
+ .addAugmentation(
+ Node1.class, node1Rev180226)
+ .addAugmentation(
+ org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev181130.Node1.class,
+ node1)
+ .setSupportingNode(supportingNodes1);
+ }
+
+ private org.opendaylight
+ .yang.gen.v1.http.org.openroadm.network.topology.rev181130.Node1 getNode1() {
+ return new org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev181130.Node1Builder()
+ .setSrgAttributes(getSrgAttributes())
+ .setDegreeAttributes(getDegAttributes())
+ .build();
+ }
+
+ private org.opendaylight
+ .yang.gen.v1.http.org.openroadm.network.topology.rev181130.Node1 getNode1Empty() {
+ return new org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev181130.Node1Builder()
+ .setSrgAttributes(getEmptySrgAttributes())
+ .setDegreeAttributes(getEmptyDegAttributes())
+ .build();
+ }
+
+ private DegreeAttributes getDegAttributes() {
+ return (new DegreeAttributesBuilder())
+ .setAvailableWavelengths(
+ Collections.singletonList(new AvailableWavelengthsBuilder()
+ .setIndex(20L)
+ .build()))
+ .build();
+ }
+
+ private SrgAttributes getSrgAttributes() {
+ return new SrgAttributesBuilder().setAvailableWavelengths(create96AvalWaveSrg()).build();
+ }
+
+ private DegreeAttributes getEmptyDegAttributes() {
+ return (new DegreeAttributesBuilder())
+ .setAvailableWavelengths(
+ new ArrayList<>())
+ .build();
+ }
+
+ private SrgAttributes getEmptySrgAttributes() {
+ List<org.opendaylight.yang.gen
+ .v1.http.org.openroadm.srg.rev181130.srg.node.attributes.AvailableWavelengths>
+ waveList = new ArrayList<>();
+ return new SrgAttributesBuilder().setAvailableWavelengths(waveList).build();
+ }
+
+ private TerminationPointBuilder getTerminationPointBuilder() {
+ return new TerminationPointBuilder()
+ .setTpId(new TpId("2"));
+ }
+
+ private TerminationPoint1Builder getTerminationPoint1Builder(OpenroadmTpType openroadmTpType) {
+
+ return new TerminationPoint1Builder()
+ .setTpType(openroadmTpType);
+