From 2aa755154013d88a4aa99b1d84f38304a29fbc5e Mon Sep 17 00:00:00 2001 From: Thierry Jiao Date: Wed, 10 Aug 2022 11:42:53 +0200 Subject: [PATCH] Add unit tests PCE RPC path-computation-reroute JIRA: TRNSPRTPCE-682 Signed-off-by: Thierry Jiao Change-Id: I5a7e093f4eb69cedbf4b0dc2e3ab648f270915b5 --- .../pce/impl/PceServiceRPCImplTest.java | 5 + .../PathComputationServiceImplTest.java | 8 ++ .../transportpce/pce/utils/PceTestData.java | 126 ++++++++++++++++++ 3 files changed, 139 insertions(+) diff --git a/pce/src/test/java/org/opendaylight/transportpce/pce/impl/PceServiceRPCImplTest.java b/pce/src/test/java/org/opendaylight/transportpce/pce/impl/PceServiceRPCImplTest.java index 3fb492550..7cb93031d 100644 --- a/pce/src/test/java/org/opendaylight/transportpce/pce/impl/PceServiceRPCImplTest.java +++ b/pce/src/test/java/org/opendaylight/transportpce/pce/impl/PceServiceRPCImplTest.java @@ -60,6 +60,11 @@ public class PceServiceRPCImplTest extends AbstractTest { assertNotNull(pceServiceRPC.pathComputationRequest(PceTestData.getPCERequest())); } + @Test + public void testPathComputationRerouteRequest() { + assertNotNull(pceServiceRPC.pathComputationRerouteRequest(PceTestData.getPCERerouteRequest())); + } + @Test public void testPathComputationRequestCoRoutingOrGeneral2() { assertNotNull(pceServiceRPC.pathComputationRequest( diff --git a/pce/src/test/java/org/opendaylight/transportpce/pce/service/PathComputationServiceImplTest.java b/pce/src/test/java/org/opendaylight/transportpce/pce/service/PathComputationServiceImplTest.java index 042a1f90a..74fdf1e97 100644 --- a/pce/src/test/java/org/opendaylight/transportpce/pce/service/PathComputationServiceImplTest.java +++ b/pce/src/test/java/org/opendaylight/transportpce/pce/service/PathComputationServiceImplTest.java @@ -78,6 +78,14 @@ public class PathComputationServiceImplTest extends AbstractTest { } + @Test + public void pathComputationRerouteRequestTest() { + pathComputationServiceImpl.generateGnpyResponse(null,"path"); + Assert.assertNotNull(pathComputationServiceImpl + .pathComputationRerouteRequest(PceTestData.getPCEReroute())); + + } + @After public void destroy() { pathComputationServiceImpl.close(); diff --git a/pce/src/test/java/org/opendaylight/transportpce/pce/utils/PceTestData.java b/pce/src/test/java/org/opendaylight/transportpce/pce/utils/PceTestData.java index a79e6a9c8..1921c3c02 100644 --- a/pce/src/test/java/org/opendaylight/transportpce/pce/utils/PceTestData.java +++ b/pce/src/test/java/org/opendaylight/transportpce/pce/utils/PceTestData.java @@ -14,8 +14,11 @@ import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev22 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev220808.PathComputationRequestInputBuilder; import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev220808.PathComputationRequestOutput; import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev220808.PathComputationRequestOutputBuilder; +import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev220808.PathComputationRerouteRequestInput; +import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev220808.PathComputationRerouteRequestInputBuilder; import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev220808.path.computation.request.input.ServiceAEndBuilder; import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev220808.path.computation.request.input.ServiceZEndBuilder; +import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev220808.path.computation.reroute.request.input.EndpointsBuilder; import org.opendaylight.yang.gen.v1.http.org.openroadm.common.node.types.rev210528.NodeIdType; import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev211210.ConnectionType; import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev211210.configuration.response.common.ConfigurationResponseCommon; @@ -336,6 +339,97 @@ public final class PceTestData { .build(); } + public static PathComputationRerouteRequestInput getPCERerouteRequest() { + return new PathComputationRerouteRequestInputBuilder() + .setPceRoutingMetric(PceMetric.HopCount) + .setServiceHandlerHeader(new ServiceHandlerHeaderBuilder() + .setRequestId("request1") + .build()) + .setServiceAEnd(new org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev220808 + .path.computation.reroute.request.input.ServiceAEndBuilder() + .setServiceFormat(ServiceFormat.Ethernet) + .setServiceRate(Uint32.valueOf(100)) + .setClli("clli11") + .setNodeId("XPONDER-2-2") + .setTxDirection(new TxDirectionBuilder() + .setPort(new PortBuilder() + .setPortDeviceName("Some port-device-name") + .setPortType("Some port-type") + .setPortName("Some port-name") + .setPortRack("Some port-rack") + .setPortShelf("Some port-shelf") + .setPortSlot("Some port-slot") + .setPortSubSlot("Some port-sub-slot") + .build()) + .build()) + .setRxDirection(new RxDirectionBuilder() + .setPort(new PortBuilder() + .setPortDeviceName("Some port-device-name") + .setPortType("Some port-type") + .setPortName("Some port-name") + .setPortRack("Some port-rack") + .setPortShelf("Some port-shelf") + .setPortSlot("Some port-slot") + .setPortSubSlot("Some port-sub-slot") + .build()) + .build()) + .build()) + .setServiceZEnd(new org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev220808 + .path.computation.reroute.request.input.ServiceZEndBuilder() + .setServiceFormat(ServiceFormat.Ethernet) + .setServiceRate(Uint32.valueOf(0)) + .setClli("Some clli11") + .setNodeId("XPONDER-1-2") + .setTxDirection(new TxDirectionBuilder() + .setPort(new PortBuilder() + .setPortDeviceName("Some port-device-name") + .setPortType("Some port-type") + .setPortName("Some port-name") + .setPortRack("Some port-rack") + .setPortShelf("Some port-shelf") + .setPortSlot("Some port-slot") + .setPortSubSlot("Some port-sub-slot") + .build()) + .build()) + .setRxDirection(new RxDirectionBuilder() + .setPort(new PortBuilder() + .setPortDeviceName("Some port-device-name") + .setPortType("Some port-type") + .setPortName("Some port-name") + .setPortRack("Some port-rack") + .setPortShelf("Some port-shelf") + .setPortSlot("Some port-slot") + .setPortSubSlot("Some port-sub-slot") + .build()) + .build()) + .build()) + .setHardConstraints(new HardConstraintsBuilder() + .setCustomerCode(Set.of("Some customer-code")) + .setCoRouting(new CoRoutingBuilder() + .setServiceIdentifierList(Map.of( + new org.opendaylight.yang.gen.v1 + .http.org.openroadm.routing.constraints.rev211210 + .constraints.co.routing.ServiceIdentifierListKey("test"), + new ServiceIdentifierListBuilder().setServiceIdentifier("test").build())) + .build()) + .build()) + .setSoftConstraints(new SoftConstraintsBuilder() + .setCustomerCode(Set.of("Some customer-code")) + .setCoRouting(new CoRoutingBuilder() + .setServiceIdentifierList(Map.of( + new org.opendaylight.yang.gen.v1 + .http.org.openroadm.routing.constraints.rev211210 + .constraints.co.routing.ServiceIdentifierListKey("test"), + new ServiceIdentifierListBuilder().setServiceIdentifier("test").build())) + .build()) + .build()) + .setEndpoints(new EndpointsBuilder() + .setAEndTp("AendTP") + .setZEndTp("ZendTP") + .build()) + .build(); + } + public static PathComputationRequestOutput getFailedPCEResultYes() { return new PathComputationRequestOutputBuilder() .setConfigurationResponseCommon( @@ -486,6 +580,38 @@ public final class PceTestData { .build(); } + public static PathComputationRerouteRequestInput getPCEReroute() { + return new PathComputationRerouteRequestInputBuilder() + .setServiceHandlerHeader(new ServiceHandlerHeaderBuilder() + .setRequestId("request 1") + .build()) + .setPceRoutingMetric(PceMetric.HopCount) + .setServiceAEnd(new org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev220808 + .path.computation.reroute.request.input.ServiceAEndBuilder() + .setServiceRate(Uint32.valueOf(100)) + .setServiceFormat(ServiceFormat.Ethernet) + .setNodeId("XPONDER-1-2") + .build()) + .setServiceZEnd(new org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev220808 + .path.computation.reroute.request.input.ServiceZEndBuilder() + .setServiceRate(Uint32.valueOf(0)) + .setServiceFormat(ServiceFormat.Ethernet) + .setNodeId("XPONDER-3-2") + .build()) + .setHardConstraints(new HardConstraintsBuilder() + .setExclude(new ExcludeBuilder() + .setNodeId(Set.of( + new NodeIdType("OpenROADM-2-1"), + new NodeIdType("OpenROADM-2-2"))) + .build()) + .build()) + .setEndpoints(new EndpointsBuilder() + .setAEndTp("AendTP") + .setZEndTp("ZendTP") + .build()) + .build(); + } + /** * Generate Data for Test 2 request 5-4. * { -- 2.36.6