2 * Copyright © 2018 Orange Systems, Inc. and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
8 package org.opendaylight.transportpce.renderer.provisiondevice;
10 import java.util.ArrayList;
11 import java.util.List;
12 import java.util.concurrent.ExecutionException;
13 import org.junit.Assert;
14 import org.junit.Before;
15 import org.junit.Ignore;
16 import org.junit.Test;
17 import org.mockito.Mockito;
18 import org.opendaylight.mdsal.binding.api.MountPoint;
19 import org.opendaylight.mdsal.binding.api.MountPointService;
20 import org.opendaylight.mdsal.binding.api.NotificationPublishService;
21 import org.opendaylight.transportpce.common.ResponseCodes;
22 import org.opendaylight.transportpce.common.StringConstants;
23 import org.opendaylight.transportpce.common.crossconnect.CrossConnect;
24 import org.opendaylight.transportpce.common.crossconnect.CrossConnectImpl;
25 import org.opendaylight.transportpce.common.crossconnect.CrossConnectImpl121;
26 import org.opendaylight.transportpce.common.crossconnect.CrossConnectImpl221;
27 import org.opendaylight.transportpce.common.device.DeviceTransactionManager;
28 import org.opendaylight.transportpce.common.device.DeviceTransactionManagerImpl;
29 import org.opendaylight.transportpce.common.fixedflex.FixedFlexImpl;
30 import org.opendaylight.transportpce.common.fixedflex.FixedFlexInterface;
31 import org.opendaylight.transportpce.common.fixedflex.FlexGridImpl;
32 import org.opendaylight.transportpce.common.mapping.MappingUtils;
33 import org.opendaylight.transportpce.common.mapping.MappingUtilsImpl;
34 import org.opendaylight.transportpce.common.mapping.PortMapping;
35 import org.opendaylight.transportpce.common.mapping.PortMappingImpl;
36 import org.opendaylight.transportpce.common.mapping.PortMappingVersion121;
37 import org.opendaylight.transportpce.common.mapping.PortMappingVersion221;
38 import org.opendaylight.transportpce.common.openroadminterfaces.OpenRoadmInterfaceException;
39 import org.opendaylight.transportpce.common.openroadminterfaces.OpenRoadmInterfaces;
40 import org.opendaylight.transportpce.common.openroadminterfaces.OpenRoadmInterfacesImpl;
41 import org.opendaylight.transportpce.common.openroadminterfaces.OpenRoadmInterfacesImpl121;
42 import org.opendaylight.transportpce.common.openroadminterfaces.OpenRoadmInterfacesImpl221;
43 import org.opendaylight.transportpce.renderer.NetworkModelWavelengthService;
44 import org.opendaylight.transportpce.renderer.NetworkModelWavelengthServiceImpl;
45 import org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmInterface121;
46 import org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmInterface221;
47 import org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmInterfaceFactory;
48 import org.opendaylight.transportpce.renderer.openroadminterface.OpenRoadmOtnInterface221;
49 import org.opendaylight.transportpce.renderer.stub.MountPointServiceStub;
50 import org.opendaylight.transportpce.renderer.stub.MountPointStub;
51 import org.opendaylight.transportpce.renderer.stub.OlmServiceStub;
52 import org.opendaylight.transportpce.renderer.utils.MountPointUtils;
53 import org.opendaylight.transportpce.renderer.utils.NotificationPublishServiceMock;
54 import org.opendaylight.transportpce.renderer.utils.ServiceDataUtils;
55 import org.opendaylight.transportpce.test.AbstractTest;
56 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.device.renderer.rev200128.ServicePathOutputBuilder;
57 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev170418.GetPmInput;
58 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev170418.GetPmInputBuilder;
59 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev170418.GetPmOutput;
60 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev170418.GetPmOutputBuilder;
61 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev170418.TransportpceOlmService;
62 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev170418.get.pm.output.Measurements;
63 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev170418.get.pm.output.MeasurementsBuilder;
64 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev200520.ServiceImplementationRequestInput;
65 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev200520.ServiceImplementationRequestOutput;
66 import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.types.rev161014.PmGranularity;
67 import org.opendaylight.yang.gen.v1.http.org.openroadm.resource.types.rev161014.ResourceTypeEnum;
68 import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev200615.olm.get.pm.input.ResourceIdentifierBuilder;
69 import org.opendaylight.yangtools.yang.common.RpcResultBuilder;
72 public class RendererServiceOperationsImplTest extends AbstractTest {
74 private MountPointService mountPointService;
75 private DeviceTransactionManager deviceTransactionManager;
76 private RendererServiceOperationsImpl rendererServiceOperations;
77 private OpenRoadmInterfaces openRoadmInterfaces;
78 private DeviceRendererService deviceRenderer;
79 private OtnDeviceRendererService otnDeviceRendererService;
80 private PortMapping portMapping;
81 private OpenRoadmInterfaceFactory openRoadmInterfaceFactory;
82 private CrossConnect crossConnect;
83 private TransportpceOlmService olmService;
84 private NetworkModelWavelengthService networkModelWavelengthService;
85 private MappingUtils mappingUtils;
86 private OpenRoadmInterfacesImpl121 openRoadmInterfacesImpl121;
87 private OpenRoadmInterfacesImpl221 openRoadmInterfacesImpl221;
88 private PortMappingVersion221 portMappingVersion22;
89 private PortMappingVersion121 portMappingVersion121;
90 private CrossConnectImpl121 crossConnectImpl121;
91 private CrossConnectImpl221 crossConnectImpl221;
93 private void setMountPoint(MountPoint mountPoint) {
94 this.mountPointService = new MountPointServiceStub(mountPoint);
95 this.deviceTransactionManager = new DeviceTransactionManagerImpl(this.mountPointService, 3000);
96 this.openRoadmInterfacesImpl121 = new OpenRoadmInterfacesImpl121(deviceTransactionManager);
97 this.openRoadmInterfacesImpl221 = new OpenRoadmInterfacesImpl221(deviceTransactionManager);
98 this.mappingUtils = new MappingUtilsImpl(getDataBroker());
99 this.openRoadmInterfaces = new OpenRoadmInterfacesImpl(deviceTransactionManager, mappingUtils,
100 openRoadmInterfacesImpl121, openRoadmInterfacesImpl221);
101 this.openRoadmInterfaces = Mockito.spy(this.openRoadmInterfaces);
102 this.portMappingVersion22 =
103 new PortMappingVersion221(getDataBroker(), deviceTransactionManager, this.openRoadmInterfaces);
104 this.portMappingVersion121 =
105 new PortMappingVersion121(getDataBroker(), deviceTransactionManager, this.openRoadmInterfaces);
106 this.portMapping = new PortMappingImpl(getDataBroker(), this.portMappingVersion22,
107 this.portMappingVersion121);
108 FixedFlexInterface fixedFlexInterface = new FixedFlexImpl();
109 FlexGridImpl flexGrid = new FlexGridImpl();
110 OpenRoadmInterface121 openRoadmInterface121 = new OpenRoadmInterface121(portMapping,openRoadmInterfaces);
111 OpenRoadmInterface221 openRoadmInterface221 = new OpenRoadmInterface221(portMapping,openRoadmInterfaces,
112 fixedFlexInterface, flexGrid);
113 OpenRoadmOtnInterface221 openRoadmOTNInterface = new OpenRoadmOtnInterface221(portMapping, openRoadmInterfaces);
114 this.openRoadmInterfaceFactory = new OpenRoadmInterfaceFactory(this.mappingUtils,openRoadmInterface121,
115 openRoadmInterface221, openRoadmOTNInterface);
116 this.crossConnectImpl121 = new CrossConnectImpl121(deviceTransactionManager);
117 this.crossConnectImpl221 = new CrossConnectImpl221(deviceTransactionManager);
118 this.crossConnect = new CrossConnectImpl(deviceTransactionManager, this.mappingUtils, this.crossConnectImpl121,
119 this.crossConnectImpl221);
123 public void setUp() throws OpenRoadmInterfaceException {
124 setMountPoint(new MountPointStub(getDataBroker()));
125 this.olmService = new OlmServiceStub();
126 this.networkModelWavelengthService = new NetworkModelWavelengthServiceImpl(getDataBroker());
127 this.deviceRenderer = new DeviceRendererServiceImpl(this.getDataBroker(), this.deviceTransactionManager,
128 openRoadmInterfaceFactory, openRoadmInterfaces, crossConnect, portMapping, null);
129 this.otnDeviceRendererService = new OtnDeviceRendererServiceImpl(openRoadmInterfaceFactory, this.crossConnect,
130 openRoadmInterfaces, this.deviceTransactionManager, null);
131 Mockito.doNothing().when(this.openRoadmInterfaces).postEquipmentState(Mockito.anyString(),
132 Mockito.anyString(), Mockito.anyBoolean());
133 NotificationPublishService notificationPublishService = new NotificationPublishServiceMock();
134 this.olmService = Mockito.spy(this.olmService);
135 this.deviceRenderer = Mockito.spy(this.deviceRenderer);
136 this.rendererServiceOperations = new RendererServiceOperationsImpl(this.deviceRenderer,
137 this.otnDeviceRendererService, this.olmService, getDataBroker(), this.networkModelWavelengthService,
138 notificationPublishService);
140 ServicePathOutputBuilder mockOutputBuilder = new ServicePathOutputBuilder().setResult("success")
142 Mockito.doReturn(mockOutputBuilder.build()).when(this.deviceRenderer).setupServicePath(Mockito.any(),
147 public void serviceImplementationTerminationPointAsResourceTtp() throws InterruptedException, ExecutionException {
149 ServiceImplementationRequestInput input = ServiceDataUtils
150 .buildServiceImplementationRequestInputTerminationPointResource(StringConstants.TTP_TOKEN);
151 writePortMapping(input, StringConstants.TTP_TOKEN);
152 ServicePathOutputBuilder mockOutputBuilder = new ServicePathOutputBuilder().setResult("success")
154 Mockito.doReturn(mockOutputBuilder.build()).when(this.deviceRenderer).setupServicePath(Mockito.any(),
156 ServiceImplementationRequestOutput result = this.rendererServiceOperations.serviceImplementation(input).get();
157 Assert.assertEquals(ResponseCodes.RESPONSE_OK, result.getConfigurationResponseCommon().getResponseCode());
162 public void serviceImplementationTerminationPointAsResourceTtp2() throws InterruptedException, ExecutionException {
164 ServiceImplementationRequestInput input = ServiceDataUtils
165 .buildServiceImplementationRequestInputTerminationPointResource(StringConstants.TTP_TOKEN);
166 writePortMapping(input, StringConstants.TTP_TOKEN);
167 ServicePathOutputBuilder mockOutputBuilder = new ServicePathOutputBuilder().setResult("success")
169 Mockito.doReturn(mockOutputBuilder.build()).when(this.deviceRenderer).setupServicePath(Mockito.any(),
171 Mockito.doReturn(RpcResultBuilder.failed().buildFuture()).when(this.olmService)
172 .servicePowerSetup(Mockito.any());
173 ServiceImplementationRequestOutput result = this.rendererServiceOperations.serviceImplementation(input).get();
174 Assert.assertEquals(ResponseCodes.RESPONSE_FAILED, result.getConfigurationResponseCommon().getResponseCode());
179 public void serviceImplementationTerminationPointAsResourcePp() throws InterruptedException, ExecutionException {
181 ServiceImplementationRequestInput input = ServiceDataUtils
182 .buildServiceImplementationRequestInputTerminationPointResource(StringConstants.PP_TOKEN);
183 writePortMapping(input, StringConstants.PP_TOKEN);
184 ServicePathOutputBuilder mockOutputBuilder = new ServicePathOutputBuilder().setResult("success")
186 Mockito.doReturn(mockOutputBuilder.build()).when(this.deviceRenderer).setupServicePath(Mockito.any(),
188 ServiceImplementationRequestOutput result = this.rendererServiceOperations.serviceImplementation(input).get();
189 Assert.assertEquals(ResponseCodes.RESPONSE_OK, result.getConfigurationResponseCommon().getResponseCode());
194 public void serviceImplementationTerminationPointAsResourceNetwork()
195 throws InterruptedException, ExecutionException {
197 ServiceImplementationRequestInput input = ServiceDataUtils
198 .buildServiceImplementationRequestInputTerminationPointResource(StringConstants.NETWORK_TOKEN);
199 writePortMapping(input, StringConstants.NETWORK_TOKEN);
200 ServicePathOutputBuilder mockOutputBuilder = new ServicePathOutputBuilder().setResult("success")
202 Mockito.doReturn(mockOutputBuilder.build()).when(this.deviceRenderer).setupServicePath(Mockito.any(),
204 ServiceImplementationRequestOutput result = this.rendererServiceOperations.serviceImplementation(input).get();
205 Assert.assertEquals(ResponseCodes.RESPONSE_OK, result.getConfigurationResponseCommon().getResponseCode());
210 public void serviceImplementationTerminationPointAsResourceClient()
211 throws InterruptedException, ExecutionException {
213 ServiceImplementationRequestInput input = ServiceDataUtils
214 // .buildServiceImplementationRequestInputTerminationPointResource(OpenRoadmInterfacesImpl.CLIENT_TOKEN);
215 .buildServiceImplementationRequestInputTerminationPointResource(StringConstants.CLIENT_TOKEN);
216 // writePortMapping(input, OpenRoadmInterfacesImpl.CLIENT_TOKEN);
217 writePortMapping(input, StringConstants.CLIENT_TOKEN);
218 ServiceImplementationRequestOutput result = this.rendererServiceOperations.serviceImplementation(input).get();
219 Assert.assertEquals(ResponseCodes.RESPONSE_OK, result.getConfigurationResponseCommon().getResponseCode());
223 public void serviceImplementationTerminationPointAsResourceNoMapping()
224 throws InterruptedException, ExecutionException {
226 String[] interfaceTokens = {
227 StringConstants.NETWORK_TOKEN,
228 StringConstants.CLIENT_TOKEN,
229 StringConstants.TTP_TOKEN,
230 StringConstants.PP_TOKEN
233 ServicePathOutputBuilder mockOutputBuilder = new ServicePathOutputBuilder().setResult("failed")
235 Mockito.doReturn(mockOutputBuilder.build()).when(this.deviceRenderer).setupServicePath(Mockito.any(),
238 for (String tpToken : interfaceTokens) {
239 ServiceImplementationRequestInput input = ServiceDataUtils
240 .buildServiceImplementationRequestInputTerminationPointResource(tpToken);
241 ServiceImplementationRequestOutput result =
242 this.rendererServiceOperations.serviceImplementation(input).get();
243 Assert.assertEquals(ResponseCodes.RESPONSE_FAILED,
244 result.getConfigurationResponseCommon().getResponseCode());
248 private void writePortMapping(ServiceImplementationRequestInput input, String tpToken) {
249 MountPointUtils.writeMapping(
250 input.getServiceAEnd().getNodeId(),
251 input.getServiceAEnd().getNodeId() + "-" + tpToken,
252 this.deviceTransactionManager
254 MountPointUtils.writeMapping(
255 input.getServiceZEnd().getNodeId(),
256 input.getServiceZEnd().getNodeId() + "-"
257 + input.getServiceAEnd().getNodeId() + "-" + tpToken,
258 this.deviceTransactionManager
260 MountPointUtils.writeMapping(
261 input.getServiceAEnd().getNodeId(),
262 input.getServiceAEnd().getNodeId() + "-"
263 + input.getServiceZEnd().getNodeId() + "-" + tpToken,
264 this.deviceTransactionManager
266 MountPointUtils.writeMapping(
267 input.getServiceZEnd().getNodeId(),
268 input.getServiceZEnd().getNodeId() + "-" + tpToken,
269 this.deviceTransactionManager
274 public void serviceImplementationRollbackAllNecessary() throws InterruptedException, ExecutionException {
276 ServiceImplementationRequestInput input = ServiceDataUtils
277 .buildServiceImplementationRequestInputTerminationPointResource(StringConstants.NETWORK_TOKEN);
278 writePortMapping(input, StringConstants.NETWORK_TOKEN);
279 Mockito.doReturn(RpcResultBuilder.failed().buildFuture()).when(this.olmService)
280 .servicePowerSetup(Mockito.any());
281 ServiceImplementationRequestOutput result = this.rendererServiceOperations.serviceImplementation(input).get();
282 Assert.assertEquals(ResponseCodes.RESPONSE_FAILED, result.getConfigurationResponseCommon().getResponseCode());
286 private GetPmInput createGetPmInput(String nodeId, String tp) {
287 GetPmInputBuilder getPmIpBldr = new GetPmInputBuilder();
288 getPmIpBldr.setNodeId(nodeId);
289 getPmIpBldr.setGranularity(PmGranularity._15min);
290 ResourceIdentifierBuilder rsrcBldr = new ResourceIdentifierBuilder();
291 rsrcBldr.setResourceName(tp + "-OTU");
292 getPmIpBldr.setResourceIdentifier(rsrcBldr.build());
293 getPmIpBldr.setResourceType(ResourceTypeEnum.Interface);
294 return getPmIpBldr.build();
298 public void serviceImplementationServiceInActive() throws InterruptedException, ExecutionException {
300 ServiceImplementationRequestInput input = ServiceDataUtils
301 .buildServiceImplementationRequestInputTerminationPointResource(StringConstants.NETWORK_TOKEN);
302 writePortMapping(input, StringConstants.NETWORK_TOKEN);
303 Measurements measurements = new MeasurementsBuilder().setPmparameterName("FECUncorrectableBlocks")
304 .setPmparameterValue("1").build();
305 List<Measurements> measurementsList = new ArrayList<Measurements>();
306 measurementsList.add(measurements);
307 GetPmOutput getPmOutput = new GetPmOutputBuilder()
308 .setNodeId("node1").setMeasurements(measurementsList).build();
309 Mockito.doReturn(RpcResultBuilder.success(getPmOutput).buildFuture()).when(this.olmService)
310 .getPm(Mockito.any());
311 ServiceImplementationRequestOutput result = this.rendererServiceOperations.serviceImplementation(input).get();
312 Assert.assertEquals(ResponseCodes.RESPONSE_FAILED, result.getConfigurationResponseCommon().getResponseCode());
317 public void serviceImplementationServiceInActive2() throws InterruptedException, ExecutionException {
319 ServiceImplementationRequestInput input = ServiceDataUtils
320 .buildServiceImplementationRequestInputTerminationPointResource(StringConstants.NETWORK_TOKEN);
321 writePortMapping(input, StringConstants.NETWORK_TOKEN);
322 Measurements measurements = new MeasurementsBuilder().setPmparameterName("FECUncorrectableBlocks")
323 .setPmparameterValue("1").build();
324 List<Measurements> measurementsList = new ArrayList<Measurements>();
325 measurementsList.add(measurements);
326 GetPmOutput getPmOutput = new GetPmOutputBuilder()
327 .setNodeId("node1").setMeasurements(measurementsList).build();
328 GetPmOutput getPmOutput2 = new GetPmOutputBuilder()
329 .setNodeId("node1").setMeasurements(new ArrayList<>()).build();
331 Mockito.when(this.olmService.getPm(Mockito.any()))
332 .thenReturn(RpcResultBuilder.success(getPmOutput).buildFuture());
333 ServiceImplementationRequestOutput result = this.rendererServiceOperations.serviceImplementation(input).get();
334 Assert.assertEquals(ResponseCodes.RESPONSE_FAILED, result.getConfigurationResponseCommon().getResponseCode());
339 public void serviceImplementationServiceInActive3() throws InterruptedException, ExecutionException {
341 ServiceImplementationRequestInput input = ServiceDataUtils
342 .buildServiceImplementationRequestInputTerminationPointResource(StringConstants.NETWORK_TOKEN);
343 writePortMapping(input, StringConstants.NETWORK_TOKEN);
344 Measurements measurements = new MeasurementsBuilder().setPmparameterName("FECUncorrectableBlocks")
345 .setPmparameterValue("1").build();
346 List<Measurements> measurementsList = new ArrayList<Measurements>();
347 measurementsList.add(measurements);
348 GetPmOutput getPmOutput = new GetPmOutputBuilder()
349 .setNodeId("node1").setMeasurements(measurementsList).build();
350 GetPmOutput getPmOutput2 = new GetPmOutputBuilder()
351 .setNodeId("node1").setMeasurements(new ArrayList<>()).build();
353 GetPmInput getPmInputZ = createGetPmInput("XPONDER-2-3",
354 StringConstants.NETWORK_TOKEN);
355 GetPmInput getPmInputA = createGetPmInput("XPONDER-1-2",
356 StringConstants.NETWORK_TOKEN);
358 Mockito.when(this.olmService.getPm(Mockito.eq(getPmInputZ)))
359 .thenReturn(RpcResultBuilder.success(getPmOutput2).buildFuture());
360 Mockito.when(this.olmService.getPm(Mockito.eq(getPmInputA)))
361 .thenReturn(RpcResultBuilder.success(getPmOutput).buildFuture());
362 ServiceImplementationRequestOutput result = this.rendererServiceOperations.serviceImplementation(input).get();
363 Assert.assertEquals(ResponseCodes.RESPONSE_OK, result.getConfigurationResponseCommon().getResponseCode());
368 public void serviceImplementationServiceActive() throws InterruptedException, ExecutionException {
370 ServiceImplementationRequestInput input = ServiceDataUtils
371 .buildServiceImplementationRequestInputTerminationPointResource(StringConstants.NETWORK_TOKEN);
372 writePortMapping(input, StringConstants.NETWORK_TOKEN);
373 GetPmOutput getPmOutput = new GetPmOutputBuilder()
374 .setNodeId("node1").setMeasurements(new ArrayList<>()).build();
375 GetPmOutput getPmOutput1 = null;
376 Mockito.when(this.olmService.getPm(Mockito.any())).thenReturn(RpcResultBuilder.success(getPmOutput1)
378 ServicePathOutputBuilder mockOutputBuilder = new ServicePathOutputBuilder().setResult("success")
380 Mockito.doReturn(mockOutputBuilder.build()).when(this.deviceRenderer).setupServicePath(Mockito.any(),
382 ServiceImplementationRequestOutput result = this.rendererServiceOperations.serviceImplementation(input).get();
383 Assert.assertEquals(ResponseCodes.RESPONSE_OK, result.getConfigurationResponseCommon().getResponseCode());
388 public void serviceImplementationServiceActive2() throws InterruptedException, ExecutionException {
390 ServiceImplementationRequestInput input = ServiceDataUtils
391 .buildServiceImplementationRequestInputTerminationPointResource(StringConstants.NETWORK_TOKEN);
392 writePortMapping(input, StringConstants.NETWORK_TOKEN);
393 GetPmOutput getPmOutput = new GetPmOutputBuilder().setMeasurements(new ArrayList<>()).build();
394 Mockito.when(this.olmService.getPm(Mockito.any())).thenReturn(RpcResultBuilder.success(getPmOutput)
396 ServicePathOutputBuilder mockOutputBuilder = new ServicePathOutputBuilder().setResult("success")
398 Mockito.doReturn(mockOutputBuilder.build()).when(this.deviceRenderer).setupServicePath(Mockito.any(),
400 ServiceImplementationRequestOutput result = this.rendererServiceOperations.serviceImplementation(input).get();
401 Assert.assertEquals(ResponseCodes.RESPONSE_OK, result.getConfigurationResponseCommon().getResponseCode());
406 public void serviceImplementationServiceInActive4() throws InterruptedException, ExecutionException {
408 ServiceImplementationRequestInput input = ServiceDataUtils
409 .buildServiceImplementationRequestInputTerminationPointResource(StringConstants.NETWORK_TOKEN);
410 writePortMapping(input, StringConstants.NETWORK_TOKEN);
411 Measurements measurements = new MeasurementsBuilder().setPmparameterName("preFECCorrectedErrors")
412 .setPmparameterValue("1").build();
413 List<Measurements> measurementsList = new ArrayList<Measurements>();
414 measurementsList.add(measurements);
415 GetPmOutput getPmOutput = new GetPmOutputBuilder()
416 .setNodeId("node1").setMeasurements(measurementsList).build();
418 Mockito.doReturn(RpcResultBuilder.success(getPmOutput).buildFuture()).when(this.olmService)
419 .getPm(Mockito.any());
420 ServicePathOutputBuilder mockOutputBuilder = new ServicePathOutputBuilder().setResult("success")
422 Mockito.doReturn(mockOutputBuilder.build()).when(this.deviceRenderer).setupServicePath(Mockito.any(),
424 ServiceImplementationRequestOutput result = this.rendererServiceOperations.serviceImplementation(input).get();
425 Assert.assertEquals(ResponseCodes.RESPONSE_OK, result.getConfigurationResponseCommon().getResponseCode());
430 public void serviceImplementationServiceInActive5() throws InterruptedException, ExecutionException {
432 ServiceImplementationRequestInput input = ServiceDataUtils
433 .buildServiceImplementationRequestInputTerminationPointResource(StringConstants.NETWORK_TOKEN);
434 writePortMapping(input, StringConstants.NETWORK_TOKEN);
435 Measurements measurements = new MeasurementsBuilder().setPmparameterName("preFECCorrectedErrors")
436 .setPmparameterValue("112000000000d").build();
437 List<Measurements> measurementsList = new ArrayList<Measurements>();
438 measurementsList.add(measurements);
439 GetPmOutput getPmOutput = new GetPmOutputBuilder()
440 .setNodeId("node1").setMeasurements(measurementsList).build();
442 Mockito.doReturn(RpcResultBuilder.success(getPmOutput).buildFuture()).when(this.olmService)
443 .getPm(Mockito.any());
444 ServiceImplementationRequestOutput result = this.rendererServiceOperations.serviceImplementation(input).get();
445 Assert.assertEquals(ResponseCodes.RESPONSE_FAILED, result.getConfigurationResponseCommon().getResponseCode());