Reactive renderer UT 01/98001/2
authorGilles Thouenon <gilles.thouenon@orange.com>
Wed, 20 Oct 2021 14:33:12 +0000 (16:33 +0200)
committerGilles Thouenon <gilles.thouenon@orange.com>
Mon, 13 Dec 2021 15:35:18 +0000 (16:35 +0100)
JIRA: TRNSPRTPCE-554
Signed-off-by: Gilles Thouenon <gilles.thouenon@orange.com>
Change-Id: I57c811b61e09522037779f26f3c3e9559e1cb188

renderer/pom.xml
renderer/src/main/java/org/opendaylight/transportpce/renderer/ModelMappingUtils.java
renderer/src/main/java/org/opendaylight/transportpce/renderer/provisiondevice/RendererServiceOperationsImpl.java
renderer/src/test/java/org/opendaylight/transportpce/renderer/RendererProviderTest.java
renderer/src/test/java/org/opendaylight/transportpce/renderer/openroadminterface/OpenRoadMInterface221Test.java
renderer/src/test/java/org/opendaylight/transportpce/renderer/provisiondevice/DeviceRendererServiceImplCreateOtsOmsTest.java
renderer/src/test/java/org/opendaylight/transportpce/renderer/provisiondevice/RendererServiceOperationsImplDeleteTest.java
renderer/src/test/java/org/opendaylight/transportpce/renderer/provisiondevice/RendererServiceOperationsImplTest.java
renderer/src/test/java/org/opendaylight/transportpce/renderer/rpcs/DeviceRendererRPCImplTest.java
renderer/src/test/java/org/opendaylight/transportpce/renderer/utils/MountPointUtils.java
renderer/src/test/java/org/opendaylight/transportpce/renderer/utils/ServiceDeleteDataUtils.java

index da29abb5f21e63c0fdb1a7634a0fd56a3a5adb65..a437696d608c8b83130b6043fb83fef4ff9b2e15 100644 (file)
@@ -40,6 +40,11 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
       <version>${project.version}</version>
       <scope>test</scope>
     </dependency>
+    <dependency>
+      <groupId>org.opendaylight.mdsal</groupId>
+      <artifactId>mdsal-binding-generator</artifactId>
+      <scope>test</scope>
+    </dependency>
   </dependencies>
 
 </project>
index d6ccdfb3189a600e5331b0007101e59906222814..c1e37c02bf21843e2ad96d80393fbfe09234f868 100644 (file)
@@ -496,7 +496,7 @@ public final class ModelMappingUtils {
                 return Map.of("nodeId", nodeId, "tpid", lcp);
             }
         }
-        return null;
+        return Map.of();
     }
 
     private static Map<String, String> extractZendFromPathDescriptionForOtn(PathDescription pathDescription) {
@@ -513,7 +513,7 @@ public final class ModelMappingUtils {
                 return Map.of("nodeId", nodeId, "tpid", lcp);
             }
         }
-        return null;
+        return Map.of();
     }
 
     private static Map<String, String> extractAendFromPathDescriptionForOptical(PathDescription pathDescription) {
@@ -530,7 +530,7 @@ public final class ModelMappingUtils {
                 return Map.of("nodeId", tp.getTpNodeId(), "tpid", tp.getTpId());
             }
         }
-        return null;
+        return Map.of();
     }
 
     private static Map<String, String> extractZendFromPathDescriptionForOptical(PathDescription pathDescription) {
@@ -547,6 +547,6 @@ public final class ModelMappingUtils {
                 return Map.of("nodeId", tp.getTpNodeId(), "tpid", tp.getTpId());
             }
         }
-        return null;
+        return Map.of();
     }
 }
index ccb610049439d18965b8b2a3cd3076025f5dae02..154c8fa0220e247e3cdec576337ce1608797305a 100644 (file)
@@ -129,11 +129,15 @@ public class RendererServiceOperationsImpl implements RendererServiceOperations
                 sendNotifications(ServicePathNotificationTypes.ServiceImplementationRequest, input.getServiceName(),
                         RpcStatusEx.Pending, "Service compliant, submitting service implementation Request ...");
                 Uint32 serviceRate = getServiceRate(input);
+                org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210927.network.Nodes
+                    mappingNode = portMapping.isNodeExist(input.getServiceAEnd().getNodeId())
+                        ? portMapping.getNode(input.getServiceAEnd().getNodeId())
+                        : null;
                 String serviceType = ServiceTypes.getServiceType(
                     input.getServiceAEnd().getServiceFormat().getName(),
                     serviceRate,
-                    (NodeTypes.Xpdr.equals(portMapping.getNode(input.getServiceAEnd().getNodeId())
-                        .getNodeInfo().getNodeType())
+                    (mappingNode != null
+                        && NodeTypes.Xpdr.equals(mappingNode.getNodeInfo().getNodeType())
                             && input.getServiceAEnd().getTxDirection() != null
                             && input.getServiceAEnd().getTxDirection().getPort() != null
                             && input.getServiceAEnd().getTxDirection().getPort().getPortName() != null)
@@ -521,7 +525,7 @@ public class RendererServiceOperationsImpl implements RendererServiceOperations
         RollbackProcessor rollbackProcessor = new RollbackProcessor();
         List<DeviceRenderingResult> renderingResults =
             deviceRendering(rollbackProcessor, servicePathInputDataAtoZ, servicePathInputDataZtoA);
-        if (rollbackProcessor.rollbackAllIfNecessary() > 0) {
+        if (rollbackProcessor.rollbackAllIfNecessary() > 0 || renderingResults.isEmpty()) {
             sendNotifications(ServicePathNotificationTypes.ServiceImplementationRequest,
                 input.getServiceName(), RpcStatusEx.Failed, DEVICE_RENDERING_ROLL_BACK_MSG);
             return false;
index cc9ad40bf53ba7dd76100b2e4f516fd84de93062..b8a030b9e1e80f1041f376994997a45867c3f231 100644 (file)
@@ -13,29 +13,26 @@ import static org.mockito.Mockito.verify;
 
 import org.junit.After;
 import org.junit.Before;
-import org.junit.Ignore;
 import org.junit.Test;
+import org.junit.runner.RunWith;
 import org.mockito.Mock;
 import org.mockito.MockitoAnnotations;
+import org.mockito.junit.MockitoJUnitRunner;
 import org.opendaylight.mdsal.binding.api.RpcProviderService;
 import org.opendaylight.transportpce.renderer.provisiondevice.RendererServiceOperations;
 import org.opendaylight.transportpce.renderer.rpcs.DeviceRendererRPCImpl;
 import org.opendaylight.transportpce.renderer.rpcs.TransportPCEServicePathRPCImpl;
 import org.opendaylight.transportpce.test.AbstractTest;
 
-@Ignore
+@RunWith(MockitoJUnitRunner.StrictStubs.class)
 public class RendererProviderTest extends AbstractTest {
 
-
     @Mock
     RpcProviderService rpcProviderService;
-
     @Mock
     private RendererServiceOperations rendererServiceOperations;
-
     @Mock
     DeviceRendererRPCImpl deviceRendererRPC;
-
     private AutoCloseable closeable;
 
     @Before
@@ -51,13 +48,12 @@ public class RendererProviderTest extends AbstractTest {
 
         verify(rpcProviderService, times(1))
                 .registerRpcImplementation(any(), any(TransportPCEServicePathRPCImpl.class));
-
         verify(rpcProviderService, times(1))
                 .registerRpcImplementation(any(), any(DeviceRendererRPCImpl.class));
     }
 
-    @After public void releaseMocks() throws Exception {
+    @After
+    public void releaseMocks() throws Exception {
         closeable.close();
     }
-
 }
index 2740d637ff3fd940ad4d212b3c6a8407a4f05145..4e791b2f49a749697b6d757b4a3017f431e5c495 100644 (file)
@@ -7,10 +7,10 @@
  */
 package org.opendaylight.transportpce.renderer.openroadminterface;
 
+import java.math.BigDecimal;
 import java.util.Arrays;
 import org.junit.Assert;
 import org.junit.Before;
-import org.junit.Ignore;
 import org.junit.Test;
 import org.mockito.Mockito;
 import org.opendaylight.transportpce.common.fixedflex.SpectrumInformation;
@@ -21,7 +21,6 @@ import org.opendaylight.transportpce.test.AbstractTest;
 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210927.mapping.MappingBuilder;
 import org.opendaylight.yangtools.yang.common.Uint32;
 
-@Ignore
 public class OpenRoadMInterface221Test extends AbstractTest {
 
     private final PortMapping portMapping = Mockito.mock(PortMapping.class);
@@ -30,7 +29,6 @@ public class OpenRoadMInterface221Test extends AbstractTest {
 
     @Before
     public void setup() {
-
         OpenRoadmInterfaces openRoadmInterfaces = Mockito.spy(OpenRoadmInterfaces.class);
         this.openRoadMInterface221 = new OpenRoadmInterface221(portMapping, openRoadmInterfaces);
     }
@@ -39,7 +37,9 @@ public class OpenRoadMInterface221Test extends AbstractTest {
     public void testCreateOpenRoadmEthInterface() throws OpenRoadmInterfaceException {
 
         String logicalConnPoint = "logicalConnPoint";
-        Mockito.when(portMapping.getMapping(nodeId, logicalConnPoint)).thenReturn(new MappingBuilder().build());
+        Mockito.when(portMapping.getMapping(nodeId, logicalConnPoint))
+            .thenReturn(new MappingBuilder().setSupportingCircuitPackName("circit-pack").setSupportingPort("port")
+                .setLogicalConnectionPoint(logicalConnPoint).build());
         Assert.assertEquals(openRoadMInterface221.createOpenRoadmEthInterface(nodeId, logicalConnPoint),
                 logicalConnPoint + "-ETHERNET");
     }
@@ -56,11 +56,14 @@ public class OpenRoadMInterface221Test extends AbstractTest {
     public void testCreateFlexOCH() throws OpenRoadmInterfaceException {
 
         String logicalConnPoint = "logicalConnPoint";
-        Mockito.when(portMapping.getMapping(nodeId, logicalConnPoint)).thenReturn(new MappingBuilder().build());
+        Mockito.when(portMapping.getMapping(nodeId, logicalConnPoint))
+            .thenReturn(new MappingBuilder().setSupportingCircuitPackName("circit-pack").setSupportingPort("port")
+                .setLogicalConnectionPoint(logicalConnPoint).build());
         SpectrumInformation spectrumInformation = new SpectrumInformation();
         spectrumInformation.setWaveLength(Uint32.valueOf(1));
         spectrumInformation.setLowerSpectralSlotNumber(761);
         spectrumInformation.setHigherSpectralSlotNumber(768);
+        spectrumInformation.setCenterFrequency(BigDecimal.valueOf(195.8));
         Assert.assertNotNull(openRoadMInterface221.createFlexOCH(nodeId, logicalConnPoint, spectrumInformation));
         Assert.assertEquals(openRoadMInterface221.createFlexOCH(nodeId, logicalConnPoint, spectrumInformation),
                 Arrays.asList(logicalConnPoint + "-nmc-761:768"));
@@ -70,11 +73,16 @@ public class OpenRoadMInterface221Test extends AbstractTest {
     public void testCreateFlexOCHReturnsMoreThanOneElement() throws OpenRoadmInterfaceException {
 
         String logicalConnPoint = "logicalConnPointDEG";
-        Mockito.when(portMapping.getMapping(nodeId, logicalConnPoint)).thenReturn(new MappingBuilder().build());
+        Mockito.when(portMapping.getMapping(nodeId, logicalConnPoint))
+            .thenReturn(new MappingBuilder().setSupportingCircuitPackName("circit-pack").setSupportingPort("port")
+                .setLogicalConnectionPoint(logicalConnPoint).build());
         SpectrumInformation spectrumInformation = new SpectrumInformation();
         spectrumInformation.setWaveLength(Uint32.valueOf(1));
         spectrumInformation.setLowerSpectralSlotNumber(761);
         spectrumInformation.setHigherSpectralSlotNumber(768);
+        spectrumInformation.setCenterFrequency(BigDecimal.valueOf(195.8));
+        spectrumInformation.setMinFrequency(BigDecimal.valueOf(195.775));
+        spectrumInformation.setMaxFrequency(BigDecimal.valueOf(195.825));
         Assert.assertNotNull(openRoadMInterface221.createFlexOCH(nodeId, logicalConnPoint,spectrumInformation));
         Assert.assertEquals(openRoadMInterface221.createFlexOCH(nodeId, logicalConnPoint, spectrumInformation),
                 Arrays.asList(logicalConnPoint + "-mc-761:768", logicalConnPoint + "-nmc-761:768"));
@@ -85,11 +93,13 @@ public class OpenRoadMInterface221Test extends AbstractTest {
 
         String logicalConnPoint = "logicalConnPoint";
         Mockito.when(portMapping.getMapping(nodeId, logicalConnPoint))
-                .thenReturn(new MappingBuilder().setLogicalConnectionPoint(logicalConnPoint).build());
+                .thenReturn(new MappingBuilder().setSupportingCircuitPackName("circit-pack").setSupportingPort("port")
+                    .setLogicalConnectionPoint(logicalConnPoint).build());
         SpectrumInformation spectrumInformation = new SpectrumInformation();
         spectrumInformation.setWaveLength(Uint32.valueOf(1));
         spectrumInformation.setLowerSpectralSlotNumber(761);
         spectrumInformation.setHigherSpectralSlotNumber(768);
+        spectrumInformation.setCenterFrequency(BigDecimal.valueOf(195.8));
         Assert.assertEquals(openRoadMInterface221.createOpenRoadmOchInterface(nodeId, logicalConnPoint,
                 spectrumInformation), logicalConnPoint + "-761:768");
     }
@@ -100,10 +110,11 @@ public class OpenRoadMInterface221Test extends AbstractTest {
         String logicalConnPoint = "logicalConnPoint";
         String supportOchInterface = "supportOchInterface";
         Mockito.when(portMapping.getMapping(nodeId, logicalConnPoint))
-                .thenReturn(new MappingBuilder().setLogicalConnectionPoint(logicalConnPoint).build());
-        Assert.assertEquals(openRoadMInterface221.createOpenRoadmOtu4Interface(
-                    nodeId, logicalConnPoint, supportOchInterface, null, null),
-                logicalConnPoint + "-OTU");
+            .thenReturn(new MappingBuilder().setSupportingCircuitPackName("circit-pack").setSupportingPort("port")
+                .setLogicalConnectionPoint(logicalConnPoint).build());
+        Assert.assertEquals(openRoadMInterface221
+            .createOpenRoadmOtu4Interface(nodeId, logicalConnPoint, supportOchInterface, null, null),
+            logicalConnPoint + "-OTU");
 
     }
 
@@ -117,17 +128,20 @@ public class OpenRoadMInterface221Test extends AbstractTest {
     }
 
     @Test
-    public void testCreateOpenRoadmOmsInterfaceSupportingOmsNotNull() throws OpenRoadmInterfaceException {
-
-        String supportingOms = "supportingOms";
+    public void testCreateOpenRoadmOmsInterfaceSupportingOtsNotNull() throws OpenRoadmInterfaceException {
+        String logicalConnPoint = "logicalConnPoint";
+        String supportingOts = "supportingOts";
         Assert.assertEquals(openRoadMInterface221.createOpenRoadmOmsInterface(nodeId,
-                new MappingBuilder().setSupportingOms(supportingOms).build()), supportingOms);
+                new MappingBuilder().setSupportingCircuitPackName("circit-pack").setSupportingPort("port")
+                    .setLogicalConnectionPoint(logicalConnPoint).setSupportingOts(supportingOts).build()),
+                "OMS-" + logicalConnPoint);
     }
 
     @Test
     public void testCreateOpenRoadmOmsInterfaceSupportingOmsNotNullException() throws OpenRoadmInterfaceException {
 
-        Assert.assertNull(openRoadMInterface221.createOpenRoadmOmsInterface(nodeId, new MappingBuilder().build()));
+        Assert.assertNull(openRoadMInterface221.createOpenRoadmOmsInterface(nodeId, new MappingBuilder()
+                .setLogicalConnectionPoint("logicalConnPoint").build()));
     }
 
     @Test
index 95eb79b8f0d4b9315e6a87384bb245b5fe5ed7d4..993c00021f2b3d4e774340e773989b52a14a2bbe 100644 (file)
@@ -11,7 +11,6 @@ package org.opendaylight.transportpce.renderer.provisiondevice;
 import java.util.ArrayList;
 import java.util.concurrent.ExecutionException;
 import org.junit.Assert;
-import org.junit.Ignore;
 import org.junit.Test;
 import org.mockito.Mockito;
 import org.opendaylight.mdsal.binding.api.MountPoint;
@@ -29,10 +28,6 @@ import org.opendaylight.transportpce.common.device.DeviceTransactionManagerImpl;
 import org.opendaylight.transportpce.common.mapping.MappingUtils;
 import org.opendaylight.transportpce.common.mapping.MappingUtilsImpl;
 import org.opendaylight.transportpce.common.mapping.PortMapping;
-import org.opendaylight.transportpce.common.mapping.PortMappingImpl;
-import org.opendaylight.transportpce.common.mapping.PortMappingVersion121;
-import org.opendaylight.transportpce.common.mapping.PortMappingVersion221;
-import org.opendaylight.transportpce.common.mapping.PortMappingVersion710;
 import org.opendaylight.transportpce.common.openroadminterfaces.OpenRoadmInterfaceException;
 import org.opendaylight.transportpce.common.openroadminterfaces.OpenRoadmInterfaces;
 import org.opendaylight.transportpce.common.openroadminterfaces.OpenRoadmInterfacesImpl;
@@ -53,6 +48,7 @@ import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.device.re
 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.device.renderer.rev211004.CreateOtsOmsOutput;
 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210927.Network;
 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210927.OpenroadmNodeVersion;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210927.mapping.Mapping;
 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210927.network.Nodes;
 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210927.network.NodesBuilder;
 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210927.network.NodesKey;
@@ -60,7 +56,6 @@ import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmappi
 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210927.network.nodes.NodeInfoBuilder;
 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
 
-@Ignore
 public class DeviceRendererServiceImplCreateOtsOmsTest extends AbstractTest {
 
     private DeviceRendererService deviceRendererService;
@@ -72,12 +67,10 @@ public class DeviceRendererServiceImplCreateOtsOmsTest extends AbstractTest {
     private OpenRoadmInterfacesImpl121 openRoadmInterfacesImpl121;
     private OpenRoadmInterfacesImpl221 openRoadmInterfacesImpl221;
     private OpenRoadmInterfacesImpl710 openRoadmInterfacesImpl710;
-    private PortMappingVersion710 portMappingVersion710;
-    private PortMappingVersion221 portMappingVersion22;
-    private PortMappingVersion121 portMappingVersion121;
     private CrossConnectImpl121 crossConnectImpl121;
     private CrossConnectImpl221 crossConnectImpl221;
     private CrossConnectImpl710 crossConnectImpl710;
+    private final PortMapping portMapping = Mockito.mock(PortMapping.class);
 
     private void setMountPoint(MountPoint mountPoint) {
         MountPointService mountPointService = new MountPointServiceStub(mountPoint);
@@ -90,16 +83,6 @@ public class DeviceRendererServiceImplCreateOtsOmsTest extends AbstractTest {
         this.openRoadmInterfaces = new OpenRoadmInterfacesImpl(deviceTransactionManager, mappingUtils,
             openRoadmInterfacesImpl121, openRoadmInterfacesImpl221, openRoadmInterfacesImpl710);
         this.openRoadmInterfaces = Mockito.spy(this.openRoadmInterfaces);
-        this.portMappingVersion22 = new PortMappingVersion221(getDataBroker(), this.deviceTransactionManager);
-        this.portMappingVersion121 = new PortMappingVersion121(getDataBroker(), this.deviceTransactionManager);
-        this.portMappingVersion710 = new PortMappingVersion710(getDataBroker(), deviceTransactionManager);
-        this.openRoadmInterfacesImpl121 = new OpenRoadmInterfacesImpl121(this.deviceTransactionManager);
-        this.openRoadmInterfacesImpl710 = new OpenRoadmInterfacesImpl710(this.deviceTransactionManager);
-        PortMapping portMapping =
-            new PortMappingImpl(getDataBroker(), this.portMappingVersion710, this.portMappingVersion22,
-                this.portMappingVersion121);
-        this.openRoadmInterfacesImpl221 = new OpenRoadmInterfacesImpl221(this.deviceTransactionManager, portMapping,
-            this.portMappingVersion22);
         OpenRoadmInterface121 openRoadmInterface121 = new OpenRoadmInterface121(portMapping,openRoadmInterfaces);
         OpenRoadmInterface221 openRoadmInterface221 = new OpenRoadmInterface221(portMapping,openRoadmInterfaces);
         OpenRoadmInterface710 openRoadmInterface710 = new OpenRoadmInterface710(portMapping, openRoadmInterfaces);
@@ -153,17 +136,10 @@ public class DeviceRendererServiceImplCreateOtsOmsTest extends AbstractTest {
         wr.commit().get();
         setMountPoint(MountPointUtils.getMountPoint(new ArrayList<>(), getDataBroker()));
         CreateOtsOmsInput input = CreateOtsOmsDataUtils.buildCreateOtsOms();
-        writePortMapping(input);
+        Mapping mapping = MountPointUtils.createMapping(input.getNodeId(), input.getLogicalConnectionPoint());
+        Mockito.when(portMapping.getMapping(Mockito.anyString(), Mockito.anyString())).thenReturn(mapping);
         CreateOtsOmsOutput result = this.deviceRendererService.createOtsOms(input);
         Assert.assertTrue(result.getSuccess());
     }
 
-    private void writePortMapping(CreateOtsOmsInput input) {
-        MountPointUtils.writeMapping(
-            input.getNodeId(),
-            input.getLogicalConnectionPoint(),
-            this.deviceTransactionManager
-        );
-    }
-
 }
index 0d37ee58738a0ccfe7219eca38cd035dcf27d304..d768e43704ded418b4579a39cafe30211d9d3f77 100644 (file)
@@ -9,14 +9,10 @@
 package org.opendaylight.transportpce.renderer.provisiondevice;
 
 import com.google.common.util.concurrent.ListenableFuture;
-import com.google.common.util.concurrent.ListeningExecutorService;
-import com.google.common.util.concurrent.MoreExecutors;
 import java.util.Collections;
 import java.util.concurrent.ExecutionException;
-import java.util.concurrent.Executors;
 import org.junit.Assert;
 import org.junit.Before;
-import org.junit.Ignore;
 import org.junit.Test;
 import org.mockito.Mockito;
 import org.opendaylight.mdsal.binding.api.MountPoint;
@@ -26,30 +22,9 @@ import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
 import org.opendaylight.transportpce.common.ResponseCodes;
 import org.opendaylight.transportpce.common.StringConstants;
 import org.opendaylight.transportpce.common.crossconnect.CrossConnect;
-import org.opendaylight.transportpce.common.crossconnect.CrossConnectImpl;
-import org.opendaylight.transportpce.common.crossconnect.CrossConnectImpl121;
-import org.opendaylight.transportpce.common.crossconnect.CrossConnectImpl221;
-import org.opendaylight.transportpce.common.crossconnect.CrossConnectImpl710;
 import org.opendaylight.transportpce.common.device.DeviceTransactionManager;
 import org.opendaylight.transportpce.common.device.DeviceTransactionManagerImpl;
-import org.opendaylight.transportpce.common.mapping.MappingUtils;
-import org.opendaylight.transportpce.common.mapping.MappingUtilsImpl;
 import org.opendaylight.transportpce.common.mapping.PortMapping;
-import org.opendaylight.transportpce.common.mapping.PortMappingImpl;
-import org.opendaylight.transportpce.common.mapping.PortMappingVersion121;
-import org.opendaylight.transportpce.common.mapping.PortMappingVersion221;
-import org.opendaylight.transportpce.common.mapping.PortMappingVersion710;
-import org.opendaylight.transportpce.common.openroadminterfaces.OpenRoadmInterfaces;
-import org.opendaylight.transportpce.common.openroadminterfaces.OpenRoadmInterfacesImpl;
-import org.opendaylight.transportpce.common.openroadminterfaces.OpenRoadmInterfacesImpl121;
-import org.opendaylight.transportpce.common.openroadminterfaces.OpenRoadmInterfacesImpl221;
-import org.opendaylight.transportpce.common.openroadminterfaces.OpenRoadmInterfacesImpl710;
-import org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmInterface121;
-import org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmInterface221;
-import org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmInterface710;
-import org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmInterfaceFactory;
-import org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmOtnInterface221;
-import org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmOtnInterface710;
 import org.opendaylight.transportpce.renderer.stub.OlmServiceStub;
 import org.opendaylight.transportpce.renderer.utils.NotificationPublishServiceMock;
 import org.opendaylight.transportpce.renderer.utils.ServiceDeleteDataUtils;
@@ -57,13 +32,17 @@ import org.opendaylight.transportpce.renderer.utils.TransactionUtils;
 import org.opendaylight.transportpce.test.AbstractTest;
 import org.opendaylight.transportpce.test.stub.MountPointServiceStub;
 import org.opendaylight.transportpce.test.stub.MountPointStub;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.device.renderer.rev211004.ServicePathOutputBuilder;
 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.ServicePowerTurndownOutputBuilder;
 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev210618.TransportpceOlmService;
 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteInputBuilder;
 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.ServiceDeleteOutput;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.common.node.types.rev181130.NodeIdType;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev190531.ConnectionType;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev190531.service.ServiceAEnd;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev190531.service.ServiceAEndBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev190531.service.endpoint.TxDirectionBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev190531.service.port.PortBuilder;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.format.rev190531.ServiceFormat;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.service.list.Services;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.service.list.ServicesBuilder;
@@ -76,68 +55,19 @@ import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
 import org.opendaylight.yangtools.yang.common.RpcResultBuilder;
 import org.opendaylight.yangtools.yang.common.Uint32;
 
-@Ignore
 public class RendererServiceOperationsImplDeleteTest extends AbstractTest {
 
-    private static final int NUMBER_OF_THREADS = 4;
     private DeviceTransactionManager deviceTransactionManager;
     private RendererServiceOperationsImpl rendererServiceOperations;
-    private OpenRoadmInterfaces openRoadmInterfaces;
-    private DeviceRendererService deviceRenderer;
-    private PortMapping portMapping;
-    private CrossConnect crossConnect;
+    private final DeviceRendererService deviceRenderer = Mockito.mock(DeviceRendererService.class);
+    private final OtnDeviceRendererService otnDeviceRendererService = Mockito.mock(OtnDeviceRendererService.class);
+    private final PortMapping portMapping = Mockito.mock(PortMapping.class);
+    private final CrossConnect crossConnect = Mockito.mock(CrossConnect.class);
     private TransportpceOlmService olmService;
-    private MappingUtils mappingUtils;
-    private OpenRoadmInterfacesImpl121 openRoadmInterfacesImpl121;
-    private OpenRoadmInterfacesImpl221 openRoadmInterfacesImpl221;
-    private OpenRoadmInterfacesImpl710 openRoadmInterfacesImpl710;
-    private PortMappingVersion710 portMappingVersion710;
-    private PortMappingVersion221 portMappingVersion22;
-    private PortMappingVersion121 portMappingVersion121;
-    private CrossConnectImpl121 crossConnectImpl121;
-    private CrossConnectImpl221 crossConnectImpl221;
-    private CrossConnectImpl710 crossConnectImpl710;
-    private OtnDeviceRendererService otnDeviceRendererService;
 
     private void setMountPoint(MountPoint mountPoint) {
         MountPointService mountPointService = new MountPointServiceStub(mountPoint);
         this.deviceTransactionManager = new DeviceTransactionManagerImpl(mountPointService, 3000);
-        this.mappingUtils = new MappingUtilsImpl(getDataBroker());
-        this.openRoadmInterfaces = new OpenRoadmInterfacesImpl(deviceTransactionManager, mappingUtils,
-            openRoadmInterfacesImpl121, openRoadmInterfacesImpl221, openRoadmInterfacesImpl710);
-        this.openRoadmInterfaces = Mockito.spy(this.openRoadmInterfaces);
-        this.portMappingVersion710 = new PortMappingVersion710(getDataBroker(), deviceTransactionManager);
-        this.portMappingVersion22 = new PortMappingVersion221(getDataBroker(), deviceTransactionManager);
-        this.portMappingVersion121 = new PortMappingVersion121(getDataBroker(), deviceTransactionManager);
-        this.portMapping = new PortMappingImpl(getDataBroker(), this.portMappingVersion710, this.portMappingVersion22,
-            this.portMappingVersion121);
-        this.openRoadmInterfacesImpl121 = new OpenRoadmInterfacesImpl121(deviceTransactionManager);
-        this.openRoadmInterfacesImpl221 = new OpenRoadmInterfacesImpl221(deviceTransactionManager, this.portMapping,
-            this.portMappingVersion22);
-        this.openRoadmInterfacesImpl710 = new OpenRoadmInterfacesImpl710(deviceTransactionManager);
-        this.crossConnectImpl121 = new CrossConnectImpl121(deviceTransactionManager);
-        this.crossConnectImpl221 = new CrossConnectImpl221(deviceTransactionManager);
-        this.crossConnect = new CrossConnectImpl(deviceTransactionManager, this.mappingUtils, this.crossConnectImpl121,
-            this.crossConnectImpl221, this.crossConnectImpl710);
-        this.crossConnect = Mockito.spy(crossConnect);
-        OpenRoadmInterface121 openRoadmInterface121 = new OpenRoadmInterface121(portMapping,openRoadmInterfaces);
-        OpenRoadmInterface221 openRoadmInterface221 = new OpenRoadmInterface221(portMapping,openRoadmInterfaces);
-        OpenRoadmInterface710 openRoadmInterface710 = new OpenRoadmInterface710(portMapping,openRoadmInterfaces);
-        OpenRoadmOtnInterface221 openRoadmOTNInterface221 = new OpenRoadmOtnInterface221(portMapping,
-            openRoadmInterfaces);
-        OpenRoadmOtnInterface710 openRoadmOtnInterface710 = new OpenRoadmOtnInterface710(portMapping,
-            openRoadmInterfaces);
-        OpenRoadmInterfaceFactory openRoadmInterfaceFactory = new OpenRoadmInterfaceFactory(this.mappingUtils,
-            openRoadmInterface121, openRoadmInterface221, openRoadmInterface710, openRoadmOTNInterface221,
-            openRoadmOtnInterface710);
-
-        this.deviceRenderer = new DeviceRendererServiceImpl(getDataBroker(),
-            this.deviceTransactionManager, openRoadmInterfaceFactory, openRoadmInterfaces, crossConnect,
-            this.portMapping, null);
-
-        this.otnDeviceRendererService = new OtnDeviceRendererServiceImpl(openRoadmInterfaceFactory, crossConnect,
-            openRoadmInterfaces, this.deviceTransactionManager, null);
-
     }
 
     @Before
@@ -145,12 +75,9 @@ public class RendererServiceOperationsImplDeleteTest extends AbstractTest {
         setMountPoint(new MountPointStub(getDataBroker()));
         this.olmService = new OlmServiceStub();
         this.olmService = Mockito.spy(this.olmService);
-        ListeningExecutorService executor =
-            MoreExecutors.listeningDecorator(Executors.newFixedThreadPool(NUMBER_OF_THREADS));
         NotificationPublishService notificationPublishService = new NotificationPublishServiceMock();
-        this.rendererServiceOperations =  new RendererServiceOperationsImpl(this.deviceRenderer,
-            this.otnDeviceRendererService, olmService, getDataBroker(), notificationPublishService, null);
-
+        this.rendererServiceOperations =  new RendererServiceOperationsImpl(deviceRenderer,
+            otnDeviceRendererService, olmService, getDataBroker(), notificationPublishService, portMapping);
     }
 
 
@@ -166,25 +93,45 @@ public class RendererServiceOperationsImplDeleteTest extends AbstractTest {
         ServiceAEnd serviceAEnd = new ServiceAEndBuilder()
             .setServiceFormat(ServiceFormat.Ethernet)
             .setServiceRate(Uint32.valueOf("100"))
+            .setTxDirection(new TxDirectionBuilder().setPort(new PortBuilder().setPortName("port-name").build())
+                .build())
+            .setNodeId(new NodeIdType("optical-node1"))
             .build();
         Services service = new ServicesBuilder()
+            .setServiceName("service 1")
             .setConnectionType(ConnectionType.Service)
             .setServiceAEnd(serviceAEnd)
             .build();
+        Mockito.when(portMapping.getMapping(Mockito.anyString(), Mockito.anyString()))
+            .thenReturn(null);
+        Mockito.when(deviceRenderer.deleteServicePath(Mockito.any()))
+            .thenReturn(new ServicePathOutputBuilder().setSuccess(true).build());
         ServiceDeleteOutput serviceDeleteOutput
                 = this.rendererServiceOperations.serviceDelete(serviceDeleteInputBuilder.build(), service).get();
         Assert.assertEquals(ResponseCodes.RESPONSE_OK,
             serviceDeleteOutput.getConfigurationResponseCommon().getResponseCode());
-        Mockito.verify(this.crossConnect, Mockito.times(2))
-                .deleteCrossConnect(Mockito.any(), Mockito.any(), Mockito.eq(false));
     }
 
     @Test
     public void serviceDeleteOperationNoDescription() throws InterruptedException, ExecutionException {
         ServiceDeleteInputBuilder serviceDeleteInputBuilder = new ServiceDeleteInputBuilder();
         serviceDeleteInputBuilder.setServiceName("service 1");
+        Services service = new ServicesBuilder()
+            .setServiceName("service 1")
+            .setServiceAEnd(new ServiceAEndBuilder()
+                .setServiceFormat(ServiceFormat.Ethernet)
+                .setServiceRate(Uint32.valueOf(100))
+                .setTxDirection(new TxDirectionBuilder().setPort(new PortBuilder().setPortName("port-name").build())
+                    .build())
+                .setNodeId(new NodeIdType("optical-node1"))
+                .build())
+            .build();
+        Mockito.when(portMapping.getMapping(Mockito.anyString(), Mockito.anyString()))
+            .thenReturn(null);
+        Mockito.doReturn(RpcResultBuilder.success((new ServicePowerTurndownOutputBuilder())
+            .setResult("Failed").build()).buildFuture()).when(this.olmService).servicePowerTurndown(Mockito.any());
         ServiceDeleteOutput serviceDeleteOutput
-                = this.rendererServiceOperations.serviceDelete(serviceDeleteInputBuilder.build(), null).get();
+                = this.rendererServiceOperations.serviceDelete(serviceDeleteInputBuilder.build(), service).get();
         Assert.assertEquals(ResponseCodes.RESPONSE_FAILED,
             serviceDeleteOutput.getConfigurationResponseCommon().getResponseCode());
         Mockito.verify(this.crossConnect, Mockito.times(0))
@@ -206,11 +153,17 @@ public class RendererServiceOperationsImplDeleteTest extends AbstractTest {
         ServiceAEnd serviceAEnd = new ServiceAEndBuilder()
             .setServiceFormat(ServiceFormat.Ethernet)
             .setServiceRate(Uint32.valueOf("100"))
+            .setTxDirection(new TxDirectionBuilder().setPort(new PortBuilder().setPortName("port-name").build())
+                .build())
+            .setNodeId(new NodeIdType("optical-node1"))
             .build();
         Services service = new ServicesBuilder()
+            .setServiceName("service 1")
             .setConnectionType(ConnectionType.Service)
             .setServiceAEnd(serviceAEnd)
             .build();
+        Mockito.when(portMapping.getMapping(Mockito.anyString(), Mockito.anyString()))
+            .thenReturn(null);
         ListenableFuture<ServiceDeleteOutput> serviceDeleteOutput
                 = this.rendererServiceOperations.serviceDelete(serviceDeleteInputBuilder.build(), service);
         ServiceDeleteOutput output = serviceDeleteOutput.get();
@@ -240,11 +193,17 @@ public class RendererServiceOperationsImplDeleteTest extends AbstractTest {
         ServiceAEnd serviceAEnd = new ServiceAEndBuilder()
             .setServiceFormat(ServiceFormat.Ethernet)
             .setServiceRate(Uint32.valueOf("100"))
+            .setTxDirection(new TxDirectionBuilder().setPort(new PortBuilder().setPortName("port-name").build())
+                .build())
+            .setNodeId(new NodeIdType("optical-node1"))
             .build();
         Services service = new ServicesBuilder()
+            .setServiceName("service 1")
             .setConnectionType(ConnectionType.Service)
             .setServiceAEnd(serviceAEnd)
             .build();
+        Mockito.when(portMapping.getMapping(Mockito.anyString(), Mockito.anyString()))
+            .thenReturn(null);
         ServiceDeleteOutput serviceDeleteOutput =
                 this.rendererServiceOperations.serviceDelete(serviceDeleteInputBuilder.build(), service).get();
         Assert.assertEquals(ResponseCodes.RESPONSE_FAILED,
index b452f15e25fd1cd02021d25ba2134086b590d499..c169ec5089f3875c829d288e04056a032259f00d 100644 (file)
@@ -12,7 +12,6 @@ import java.util.List;
 import java.util.concurrent.ExecutionException;
 import org.junit.Assert;
 import org.junit.Before;
-import org.junit.Ignore;
 import org.junit.Test;
 import org.mockito.Mockito;
 import org.opendaylight.mdsal.binding.api.MountPoint;
@@ -20,34 +19,18 @@ import org.opendaylight.mdsal.binding.api.MountPointService;
 import org.opendaylight.mdsal.binding.api.NotificationPublishService;
 import org.opendaylight.transportpce.common.ResponseCodes;
 import org.opendaylight.transportpce.common.StringConstants;
-import org.opendaylight.transportpce.common.crossconnect.CrossConnect;
-import org.opendaylight.transportpce.common.crossconnect.CrossConnectImpl;
-import org.opendaylight.transportpce.common.crossconnect.CrossConnectImpl121;
-import org.opendaylight.transportpce.common.crossconnect.CrossConnectImpl221;
-import org.opendaylight.transportpce.common.crossconnect.CrossConnectImpl710;
 import org.opendaylight.transportpce.common.device.DeviceTransactionManager;
 import org.opendaylight.transportpce.common.device.DeviceTransactionManagerImpl;
 import org.opendaylight.transportpce.common.mapping.MappingUtils;
 import org.opendaylight.transportpce.common.mapping.MappingUtilsImpl;
 import org.opendaylight.transportpce.common.mapping.PortMapping;
-import org.opendaylight.transportpce.common.mapping.PortMappingImpl;
-import org.opendaylight.transportpce.common.mapping.PortMappingVersion121;
-import org.opendaylight.transportpce.common.mapping.PortMappingVersion221;
-import org.opendaylight.transportpce.common.mapping.PortMappingVersion710;
 import org.opendaylight.transportpce.common.openroadminterfaces.OpenRoadmInterfaceException;
 import org.opendaylight.transportpce.common.openroadminterfaces.OpenRoadmInterfaces;
 import org.opendaylight.transportpce.common.openroadminterfaces.OpenRoadmInterfacesImpl;
 import org.opendaylight.transportpce.common.openroadminterfaces.OpenRoadmInterfacesImpl121;
 import org.opendaylight.transportpce.common.openroadminterfaces.OpenRoadmInterfacesImpl221;
 import org.opendaylight.transportpce.common.openroadminterfaces.OpenRoadmInterfacesImpl710;
-import org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmInterface121;
-import org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmInterface221;
-import org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmInterface710;
-import org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmInterfaceFactory;
-import org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmOtnInterface221;
-import org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmOtnInterface710;
 import org.opendaylight.transportpce.renderer.stub.OlmServiceStub;
-import org.opendaylight.transportpce.renderer.utils.MountPointUtils;
 import org.opendaylight.transportpce.renderer.utils.NotificationPublishServiceMock;
 import org.opendaylight.transportpce.renderer.utils.ServiceDataUtils;
 import org.opendaylight.transportpce.test.AbstractTest;
@@ -68,29 +51,20 @@ import org.opendaylight.yang.gen.v1.http.org.openroadm.resource.types.rev161014.
 import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev210618.olm.get.pm.input.ResourceIdentifierBuilder;
 import org.opendaylight.yangtools.yang.common.RpcResultBuilder;
 
-@Ignore
 public class RendererServiceOperationsImplTest extends AbstractTest {
 
     private MountPointService mountPointService;
     private DeviceTransactionManager deviceTransactionManager;
+    private final DeviceRendererService deviceRenderer = Mockito.mock(DeviceRendererService.class);
+    private final OtnDeviceRendererService otnDeviceRendererService = Mockito.mock(OtnDeviceRendererService.class);
+    private final PortMapping portMapping = Mockito.mock(PortMapping.class);
     private RendererServiceOperationsImpl rendererServiceOperations;
     private OpenRoadmInterfaces openRoadmInterfaces;
-    private DeviceRendererService deviceRenderer;
-    private OtnDeviceRendererService otnDeviceRendererService;
-    private PortMapping portMapping;
-    private OpenRoadmInterfaceFactory openRoadmInterfaceFactory;
-    private CrossConnect crossConnect;
     private TransportpceOlmService olmService;
     private MappingUtils mappingUtils;
     private OpenRoadmInterfacesImpl121 openRoadmInterfacesImpl121;
     private OpenRoadmInterfacesImpl221 openRoadmInterfacesImpl221;
     private OpenRoadmInterfacesImpl710 openRoadmInterfacesImpl710;
-    private PortMappingVersion710 portMappingVersion710;
-    private PortMappingVersion221 portMappingVersion22;
-    private PortMappingVersion121 portMappingVersion121;
-    private CrossConnectImpl121 crossConnectImpl121;
-    private CrossConnectImpl221 crossConnectImpl221;
-    private CrossConnectImpl710 crossConnectImpl710;
 
     private void setMountPoint(MountPoint mountPoint) {
         this.mountPointService = new MountPointServiceStub(mountPoint);
@@ -99,49 +73,18 @@ public class RendererServiceOperationsImplTest extends AbstractTest {
         this.openRoadmInterfaces = new OpenRoadmInterfacesImpl(deviceTransactionManager, mappingUtils,
             openRoadmInterfacesImpl121, openRoadmInterfacesImpl221, openRoadmInterfacesImpl710);
         this.openRoadmInterfaces = Mockito.spy(this.openRoadmInterfaces);
-        this.portMappingVersion22 =
-            new PortMappingVersion221(getDataBroker(), deviceTransactionManager);
-        this.portMappingVersion121 =
-            new PortMappingVersion121(getDataBroker(), deviceTransactionManager);
-        this.portMappingVersion710 =
-            new PortMappingVersion710(getDataBroker(), deviceTransactionManager);
-        this.portMapping = new PortMappingImpl(getDataBroker(), this.portMappingVersion710, this.portMappingVersion22,
-            this.portMappingVersion121);
-        OpenRoadmInterface121 openRoadmInterface121 = new OpenRoadmInterface121(portMapping,openRoadmInterfaces);
-        OpenRoadmInterface221 openRoadmInterface221 = new OpenRoadmInterface221(portMapping,openRoadmInterfaces);
-        OpenRoadmInterface710 openRoadmInterface710 = new OpenRoadmInterface710(portMapping,openRoadmInterfaces);
-        OpenRoadmOtnInterface221 openRoadmOTNInterface221 = new OpenRoadmOtnInterface221(portMapping,
-            openRoadmInterfaces);
-        OpenRoadmOtnInterface710 openRoadmOtnInterface710 = new OpenRoadmOtnInterface710(portMapping,
-            openRoadmInterfaces);
-        this.openRoadmInterfaceFactory = new OpenRoadmInterfaceFactory(this.mappingUtils,openRoadmInterface121,
-            openRoadmInterface221, openRoadmInterface710, openRoadmOTNInterface221, openRoadmOtnInterface710);
-        this.crossConnectImpl121 = new CrossConnectImpl121(deviceTransactionManager);
-        this.crossConnectImpl221 = new CrossConnectImpl221(deviceTransactionManager);
-        this.crossConnect = new CrossConnectImpl(deviceTransactionManager, this.mappingUtils, this.crossConnectImpl121,
-            this.crossConnectImpl221, this.crossConnectImpl710);
     }
 
     @Before
     public void setUp() throws OpenRoadmInterfaceException {
         setMountPoint(new MountPointStub(getDataBroker()));
         this.olmService = new OlmServiceStub();
-        this.deviceRenderer = new DeviceRendererServiceImpl(getDataBroker(), this.deviceTransactionManager,
-            openRoadmInterfaceFactory, openRoadmInterfaces, crossConnect, portMapping, null);
-        this.otnDeviceRendererService = new OtnDeviceRendererServiceImpl(openRoadmInterfaceFactory, this.crossConnect,
-            openRoadmInterfaces, this.deviceTransactionManager, null);
         Mockito.doNothing().when(this.openRoadmInterfaces).postEquipmentState(Mockito.anyString(),
             Mockito.anyString(), Mockito.anyBoolean());
         NotificationPublishService notificationPublishService = new NotificationPublishServiceMock();
         this.olmService = Mockito.spy(this.olmService);
-        this.deviceRenderer = Mockito.spy(this.deviceRenderer);
-        this.rendererServiceOperations =  new RendererServiceOperationsImpl(this.deviceRenderer,
-            this.otnDeviceRendererService, this.olmService, getDataBroker(), notificationPublishService, null);
-
-        ServicePathOutputBuilder mockOutputBuilder = new ServicePathOutputBuilder().setResult("success")
-            .setSuccess(true);
-        Mockito.doReturn(mockOutputBuilder.build()).when(this.deviceRenderer).setupServicePath(Mockito.any(),
-            Mockito.any());
+        this.rendererServiceOperations =  new RendererServiceOperationsImpl(deviceRenderer,
+            otnDeviceRendererService, this.olmService, getDataBroker(), notificationPublishService, portMapping);
     }
 
     @Test
@@ -149,7 +92,6 @@ public class RendererServiceOperationsImplTest extends AbstractTest {
 
         ServiceImplementationRequestInput input = ServiceDataUtils
             .buildServiceImplementationRequestInputTerminationPointResource(StringConstants.TTP_TOKEN);
-        writePortMapping(input, StringConstants.TTP_TOKEN);
         ServicePathOutputBuilder mockOutputBuilder = new ServicePathOutputBuilder().setResult("success")
             .setSuccess(true);
         Mockito.doReturn(mockOutputBuilder.build()).when(this.deviceRenderer).setupServicePath(Mockito.any(),
@@ -164,7 +106,6 @@ public class RendererServiceOperationsImplTest extends AbstractTest {
 
         ServiceImplementationRequestInput input = ServiceDataUtils
             .buildServiceImplementationRequestInputTerminationPointResource(StringConstants.TTP_TOKEN);
-        writePortMapping(input, StringConstants.TTP_TOKEN);
         ServicePathOutputBuilder mockOutputBuilder = new ServicePathOutputBuilder().setResult("success")
             .setSuccess(true);
         Mockito.doReturn(mockOutputBuilder.build()).when(this.deviceRenderer).setupServicePath(Mockito.any(),
@@ -181,7 +122,6 @@ public class RendererServiceOperationsImplTest extends AbstractTest {
 
         ServiceImplementationRequestInput input = ServiceDataUtils
             .buildServiceImplementationRequestInputTerminationPointResource(StringConstants.PP_TOKEN);
-        writePortMapping(input, StringConstants.PP_TOKEN);
         ServicePathOutputBuilder mockOutputBuilder = new ServicePathOutputBuilder().setResult("success")
             .setSuccess(true);
         Mockito.doReturn(mockOutputBuilder.build()).when(this.deviceRenderer).setupServicePath(Mockito.any(),
@@ -193,11 +133,10 @@ public class RendererServiceOperationsImplTest extends AbstractTest {
 
     @Test
     public void serviceImplementationTerminationPointAsResourceNetwork()
-        throws InterruptedException, ExecutionException {
+            throws InterruptedException, ExecutionException {
 
         ServiceImplementationRequestInput input = ServiceDataUtils
             .buildServiceImplementationRequestInputTerminationPointResource(StringConstants.NETWORK_TOKEN);
-        writePortMapping(input, StringConstants.NETWORK_TOKEN);
         ServicePathOutputBuilder mockOutputBuilder = new ServicePathOutputBuilder().setResult("success")
             .setSuccess(true);
         Mockito.doReturn(mockOutputBuilder.build()).when(this.deviceRenderer).setupServicePath(Mockito.any(),
@@ -209,20 +148,21 @@ public class RendererServiceOperationsImplTest extends AbstractTest {
 
     @Test
     public void serviceImplementationTerminationPointAsResourceClient()
-        throws InterruptedException, ExecutionException {
+            throws InterruptedException, ExecutionException {
 
         ServiceImplementationRequestInput input = ServiceDataUtils
-     //       .buildServiceImplementationRequestInputTerminationPointResource(OpenRoadmInterfacesImpl.CLIENT_TOKEN);
             .buildServiceImplementationRequestInputTerminationPointResource(StringConstants.CLIENT_TOKEN);
-     //   writePortMapping(input, OpenRoadmInterfacesImpl.CLIENT_TOKEN);
-        writePortMapping(input, StringConstants.CLIENT_TOKEN);
+        ServicePathOutputBuilder mockOutputBuilder = new ServicePathOutputBuilder().setResult("success")
+            .setSuccess(true);
+        Mockito.doReturn(mockOutputBuilder.build()).when(this.deviceRenderer).setupServicePath(Mockito.any(),
+            Mockito.any());
         ServiceImplementationRequestOutput result = this.rendererServiceOperations.serviceImplementation(input).get();
         Assert.assertEquals(ResponseCodes.RESPONSE_OK, result.getConfigurationResponseCommon().getResponseCode());
     }
 
     @Test
     public void serviceImplementationTerminationPointAsResourceNoMapping()
-        throws InterruptedException, ExecutionException {
+            throws InterruptedException, ExecutionException {
 
         String[] interfaceTokens = {
             StringConstants.NETWORK_TOKEN,
@@ -246,37 +186,12 @@ public class RendererServiceOperationsImplTest extends AbstractTest {
         }
     }
 
-    private void writePortMapping(ServiceImplementationRequestInput input, String tpToken) {
-        MountPointUtils.writeMapping(
-            input.getServiceAEnd().getNodeId(),
-            input.getServiceAEnd().getNodeId() + "-" + tpToken,
-            this.deviceTransactionManager
-        );
-        MountPointUtils.writeMapping(
-            input.getServiceZEnd().getNodeId(),
-            input.getServiceZEnd().getNodeId() + "-"
-                + input.getServiceAEnd().getNodeId() + "-" + tpToken,
-            this.deviceTransactionManager
-        );
-        MountPointUtils.writeMapping(
-            input.getServiceAEnd().getNodeId(),
-            input.getServiceAEnd().getNodeId() + "-"
-                + input.getServiceZEnd().getNodeId() + "-" + tpToken,
-            this.deviceTransactionManager
-        );
-        MountPointUtils.writeMapping(
-            input.getServiceZEnd().getNodeId(),
-            input.getServiceZEnd().getNodeId() + "-" + tpToken,
-            this.deviceTransactionManager
-        );
-    }
-
     @Test
     public void serviceImplementationRollbackAllNecessary() throws InterruptedException, ExecutionException {
 
         ServiceImplementationRequestInput input = ServiceDataUtils
             .buildServiceImplementationRequestInputTerminationPointResource(StringConstants.NETWORK_TOKEN);
-        writePortMapping(input, StringConstants.NETWORK_TOKEN);
+//        writePortMapping(input, StringConstants.NETWORK_TOKEN);
         Mockito.doReturn(RpcResultBuilder.failed().buildFuture()).when(this.olmService)
             .servicePowerSetup(Mockito.any());
         ServiceImplementationRequestOutput result = this.rendererServiceOperations.serviceImplementation(input).get();
@@ -300,7 +215,6 @@ public class RendererServiceOperationsImplTest extends AbstractTest {
 
         ServiceImplementationRequestInput input = ServiceDataUtils
             .buildServiceImplementationRequestInputTerminationPointResource(StringConstants.NETWORK_TOKEN);
-        writePortMapping(input, StringConstants.NETWORK_TOKEN);
         Measurements measurements = new MeasurementsBuilder().setPmparameterName("FECUncorrectableBlocks")
             .setPmparameterValue("1").build();
         List<Measurements> measurementsList = new ArrayList<Measurements>();
@@ -319,15 +233,12 @@ public class RendererServiceOperationsImplTest extends AbstractTest {
 
         ServiceImplementationRequestInput input = ServiceDataUtils
             .buildServiceImplementationRequestInputTerminationPointResource(StringConstants.NETWORK_TOKEN);
-        writePortMapping(input, StringConstants.NETWORK_TOKEN);
         Measurements measurements = new MeasurementsBuilder().setPmparameterName("FECUncorrectableBlocks")
             .setPmparameterValue("1").build();
         List<Measurements> measurementsList = new ArrayList<Measurements>();
         measurementsList.add(measurements);
         GetPmOutput getPmOutput = new GetPmOutputBuilder()
             .setNodeId("node1").setMeasurements(measurementsList).build();
-        GetPmOutput getPmOutput2 = new GetPmOutputBuilder()
-            .setNodeId("node1").setMeasurements(new ArrayList<>()).build();
 
         Mockito.when(this.olmService.getPm(Mockito.any()))
             .thenReturn(RpcResultBuilder.success(getPmOutput).buildFuture());
@@ -339,9 +250,6 @@ public class RendererServiceOperationsImplTest extends AbstractTest {
     @Test
     public void serviceImplementationServiceInActive3() throws InterruptedException, ExecutionException {
 
-        ServiceImplementationRequestInput input = ServiceDataUtils
-            .buildServiceImplementationRequestInputTerminationPointResource(StringConstants.NETWORK_TOKEN);
-        writePortMapping(input, StringConstants.NETWORK_TOKEN);
         Measurements measurements = new MeasurementsBuilder().setPmparameterName("FECUncorrectableBlocks")
             .setPmparameterValue("1").build();
         List<Measurements> measurementsList = new ArrayList<Measurements>();
@@ -360,6 +268,12 @@ public class RendererServiceOperationsImplTest extends AbstractTest {
             .thenReturn(RpcResultBuilder.success(getPmOutput2).buildFuture());
         Mockito.when(this.olmService.getPm(Mockito.eq(getPmInputA)))
             .thenReturn(RpcResultBuilder.success(getPmOutput).buildFuture());
+        ServicePathOutputBuilder mockOutputBuilder = new ServicePathOutputBuilder().setResult("success")
+            .setSuccess(true);
+        Mockito.doReturn(mockOutputBuilder.build()).when(this.deviceRenderer).setupServicePath(Mockito.any(),
+            Mockito.any());
+        ServiceImplementationRequestInput input = ServiceDataUtils
+            .buildServiceImplementationRequestInputTerminationPointResource(StringConstants.NETWORK_TOKEN);
         ServiceImplementationRequestOutput result = this.rendererServiceOperations.serviceImplementation(input).get();
         Assert.assertEquals(ResponseCodes.RESPONSE_OK, result.getConfigurationResponseCommon().getResponseCode());
 
@@ -370,9 +284,6 @@ public class RendererServiceOperationsImplTest extends AbstractTest {
 
         ServiceImplementationRequestInput input = ServiceDataUtils
             .buildServiceImplementationRequestInputTerminationPointResource(StringConstants.NETWORK_TOKEN);
-        writePortMapping(input, StringConstants.NETWORK_TOKEN);
-        GetPmOutput getPmOutput = new GetPmOutputBuilder()
-            .setNodeId("node1").setMeasurements(new ArrayList<>()).build();
         GetPmOutput getPmOutput1 = null;
         Mockito.when(this.olmService.getPm(Mockito.any())).thenReturn(RpcResultBuilder.success(getPmOutput1)
             .buildFuture());
@@ -390,7 +301,6 @@ public class RendererServiceOperationsImplTest extends AbstractTest {
 
         ServiceImplementationRequestInput input = ServiceDataUtils
             .buildServiceImplementationRequestInputTerminationPointResource(StringConstants.NETWORK_TOKEN);
-        writePortMapping(input, StringConstants.NETWORK_TOKEN);
         GetPmOutput getPmOutput = new GetPmOutputBuilder().setMeasurements(new ArrayList<>()).build();
         Mockito.when(this.olmService.getPm(Mockito.any())).thenReturn(RpcResultBuilder.success(getPmOutput)
             .buildFuture());
@@ -406,9 +316,6 @@ public class RendererServiceOperationsImplTest extends AbstractTest {
     @Test
     public void serviceImplementationServiceInActive4() throws InterruptedException, ExecutionException {
 
-        ServiceImplementationRequestInput input = ServiceDataUtils
-            .buildServiceImplementationRequestInputTerminationPointResource(StringConstants.NETWORK_TOKEN);
-        writePortMapping(input, StringConstants.NETWORK_TOKEN);
         Measurements measurements = new MeasurementsBuilder().setPmparameterName("preFECCorrectedErrors")
             .setPmparameterValue("1").build();
         List<Measurements> measurementsList = new ArrayList<Measurements>();
@@ -422,6 +329,8 @@ public class RendererServiceOperationsImplTest extends AbstractTest {
             .setSuccess(true);
         Mockito.doReturn(mockOutputBuilder.build()).when(this.deviceRenderer).setupServicePath(Mockito.any(),
             Mockito.any());
+        ServiceImplementationRequestInput input = ServiceDataUtils
+            .buildServiceImplementationRequestInputTerminationPointResource(StringConstants.NETWORK_TOKEN);
         ServiceImplementationRequestOutput result = this.rendererServiceOperations.serviceImplementation(input).get();
         Assert.assertEquals(ResponseCodes.RESPONSE_OK, result.getConfigurationResponseCommon().getResponseCode());
 
@@ -432,7 +341,6 @@ public class RendererServiceOperationsImplTest extends AbstractTest {
 
         ServiceImplementationRequestInput input = ServiceDataUtils
             .buildServiceImplementationRequestInputTerminationPointResource(StringConstants.NETWORK_TOKEN);
-        writePortMapping(input, StringConstants.NETWORK_TOKEN);
         Measurements measurements = new MeasurementsBuilder().setPmparameterName("preFECCorrectedErrors")
             .setPmparameterValue("112000000000d").build();
         List<Measurements> measurementsList = new ArrayList<Measurements>();
index 6ec012f85d7d5db2241e68e655f3b4684914fe89..d55569a985773aca77174d0d18c7d9f5c5c710a4 100644 (file)
@@ -9,7 +9,6 @@ package org.opendaylight.transportpce.renderer.rpcs;
 
 import org.junit.Assert;
 import org.junit.Before;
-import org.junit.Ignore;
 import org.junit.Test;
 import org.mockito.Mockito;
 import org.opendaylight.transportpce.common.openroadminterfaces.OpenRoadmInterfaceException;
@@ -22,7 +21,6 @@ import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.device.re
 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.device.renderer.rev211004.RendererRollbackOutputBuilder;
 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.device.renderer.rev211004.ServicePathInput;
 
-@Ignore
 public class DeviceRendererRPCImplTest extends AbstractTest {
     private final DeviceRendererService deviceRenderer = Mockito.mock(DeviceRendererService.class);
     private final OtnDeviceRendererService otnDeviceRenderer = Mockito.mock(OtnDeviceRendererService.class);
index 7e05b18b3aa137cf1ab6b059ac959f551c4cac43..e82e0f72a56a273af3c3b9ac5dfdbef63b94a2c9 100644 (file)
@@ -10,24 +10,17 @@ package org.opendaylight.transportpce.renderer.utils;
 
 import com.google.common.util.concurrent.ListenableFuture;
 import java.util.List;
-import java.util.concurrent.ExecutionException;
 import org.mockito.Mockito;
 import org.opendaylight.mdsal.binding.api.DataBroker;
 import org.opendaylight.mdsal.binding.api.RpcConsumerRegistry;
-import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
-import org.opendaylight.transportpce.common.device.DeviceTransactionManager;
 import org.opendaylight.transportpce.test.stub.MountPointStub;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210927.Network;
 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210927.mapping.Mapping;
 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210927.mapping.MappingBuilder;
 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210927.mapping.MappingKey;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210927.network.Nodes;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210927.network.NodesKey;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.GetConnectionPortTrailOutput;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.GetConnectionPortTrailOutputBuilder;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.OrgOpenroadmDeviceService;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.get.connection.port.trail.output.Ports;
-import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
 import org.opendaylight.yangtools.yang.common.RpcResult;
 import org.opendaylight.yangtools.yang.common.RpcResultBuilder;
 
@@ -49,25 +42,16 @@ public final class MountPointUtils {
         return mountPoint;
     }
 
-    public static boolean writeMapping(String nodeId, String logicalConnPoint,
-                                       DeviceTransactionManager deviceTransactionManager) {
-        MappingBuilder mappingBuilder = new MappingBuilder();
-        mappingBuilder.withKey(new MappingKey(logicalConnPoint));
-        mappingBuilder.setLogicalConnectionPoint(logicalConnPoint);
-        mappingBuilder.setSupportingOts("OTS");
-        mappingBuilder.setSupportingCircuitPackName("2/0");
-        mappingBuilder.setSupportingOms("OMS");
-        mappingBuilder.setSupportingPort("8080");
-        mappingBuilder.setSupportingCircuitPackName("circuit1");
-        InstanceIdentifier<Mapping> portMappingIID =
-                InstanceIdentifier.builder(Network.class).child(Nodes.class, new NodesKey(nodeId))
-                        .child(Mapping.class, new MappingKey(logicalConnPoint)).build();
-        try {
-            return TransactionUtils.writeTransaction(deviceTransactionManager,
-                    nodeId, LogicalDatastoreType.CONFIGURATION, portMappingIID, mappingBuilder.build());
-        } catch (ExecutionException | InterruptedException e) {
-            return false;
-        }
+    public static Mapping createMapping(String nodeId, String logicalConnPoint) {
+        return new MappingBuilder()
+            .withKey(new MappingKey(logicalConnPoint))
+            .setLogicalConnectionPoint(logicalConnPoint)
+            .setSupportingOts("supporting-OTS")
+            .setSupportingCircuitPackName("2/0")
+            .setSupportingOms("supporting-OMS")
+            .setSupportingPort("port")
+            .setSupportingCircuitPackName("circuit-pack")
+            .build();
     }
 
     private MountPointUtils() {
index 67bd8ddb82492ff64e8488f5077b681732be7f04..d868df9ac63024ae74f6aa81221697a083b6ea56 100644 (file)
@@ -11,6 +11,7 @@ package org.opendaylight.transportpce.renderer.utils;
 import java.util.HashMap;
 import java.util.Map;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev190531.service.port.PortBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.common.state.types.rev191129.State;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.format.rev190531.ServiceFormat;
 import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev210705.path.description.AToZDirection;
 import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev210705.path.description.AToZDirectionBuilder;
@@ -47,9 +48,9 @@ public final class ServiceDeleteDataUtils {
         TerminationPoint terminationPoint2 = terminationPointBuilder.setTpNodeId("node1" + tpId)
                         .setTpId(tpId).build();
         AToZ atoZ = new AToZBuilder().setId("1").withKey(new AToZKey("1")).setResource(new ResourceBuilder()
-                .setResource(terminationPoint).build()).build();
+                .setResource(terminationPoint).setState(State.InService).build()).build();
         AToZ atoZ2 = new AToZBuilder().setId("2").withKey(new AToZKey("2")).setResource(new ResourceBuilder()
-                .setResource(terminationPoint2).build()).build();
+                .setResource(terminationPoint2).setState(State.InService).build()).build();
         atoZMap.put(atoZ.key(),atoZ);
         atoZMap.put(atoZ2.key(),atoZ2);
         AToZDirection atozDirection = new AToZDirectionBuilder()
@@ -60,9 +61,9 @@ public final class ServiceDeleteDataUtils {
                 .build();
         Map<ZToAKey,ZToA> ztoAMap = new HashMap<>();
         ZToA ztoA = new ZToABuilder().setId("1").withKey(new ZToAKey("1")).setResource(new ResourceBuilder()
-                .setResource(terminationPoint).build()).build();
+                .setResource(terminationPoint).setState(State.InService).build()).build();
         ZToA ztoA2 = new ZToABuilder().setId("2").withKey(new ZToAKey("2")).setResource(new ResourceBuilder()
-                .setResource(terminationPoint).build()).build();
+                .setResource(terminationPoint).setState(State.InService).build()).build();
         ztoAMap.put(ztoA.key(),ztoA);
         ztoAMap.put(ztoA2.key(),ztoA2);
         ZToADirection ztoaDirection = new ZToADirectionBuilder()