From ece5215df091114be3bffee073c8d3b0bc1ee1bc Mon Sep 17 00:00:00 2001 From: Ravi Pendurty Date: Wed, 3 Feb 2021 15:29:21 +0100 Subject: Migrate devicemanager-openroadm and devicemanager-onf14 Migrate devicemanager-openroadm and devicemanager-onf14 to Aluminium Issue-ID: CCSDK-3134 Signed-off-by: Ravi Pendurty Change-Id: If5f7073d56c9a334e6a23cc0a2dd9b68e7f19512 Signed-off-by: Ravi Pendurty --- .../test/TestDeviceManagerOpenRoadmImpl.java | 30 -- .../openroadm/test/TestOpenRoadmInventory.java | 19 +- .../test/TestOpenRoadmNetworkElement.java | 576 +++++++++++---------- .../test/TestOpenRoadmNetworkElementFactory.java | 50 +- .../openroadm/test/mock/NetconfAccessorMock.java | 112 ---- .../openroadm/test/mock/TransactionUtilsMock.java | 50 -- 6 files changed, 342 insertions(+), 495 deletions(-) delete mode 100644 sdnr/wt/devicemanager-openroadm/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/devicemanager/openroadm/test/mock/NetconfAccessorMock.java delete mode 100644 sdnr/wt/devicemanager-openroadm/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/devicemanager/openroadm/test/mock/TransactionUtilsMock.java (limited to 'sdnr/wt/devicemanager-openroadm/provider/src/test') diff --git a/sdnr/wt/devicemanager-openroadm/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/devicemanager/openroadm/test/TestDeviceManagerOpenRoadmImpl.java b/sdnr/wt/devicemanager-openroadm/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/devicemanager/openroadm/test/TestDeviceManagerOpenRoadmImpl.java index 0f3401bb0..9967f780f 100644 --- a/sdnr/wt/devicemanager-openroadm/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/devicemanager/openroadm/test/TestDeviceManagerOpenRoadmImpl.java +++ b/sdnr/wt/devicemanager-openroadm/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/devicemanager/openroadm/test/TestDeviceManagerOpenRoadmImpl.java @@ -22,23 +22,13 @@ package org.onap.ccsdk.features.sdnr.wt.devicemanager.openroadm.test; import static org.mockito.Mockito.mock; -import java.io.File; -import java.io.FileNotFoundException; -import java.io.IOException; -import java.nio.file.Files; -import java.nio.file.Path; -import java.nio.file.Paths; import org.junit.After; import org.junit.Before; import org.junit.Test; import org.onap.ccsdk.features.sdnr.wt.devicemanager.openroadm.impl.DeviceManagerOpenroadmImpl; import org.onap.ccsdk.features.sdnr.wt.devicemanager.service.NetconfNetworkElementService; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; public class TestDeviceManagerOpenRoadmImpl { - private static Path KARAF_ETC = Paths.get("etc"); - private static final Logger log = LoggerFactory.getLogger(TestDeviceManagerOpenRoadmImpl.class); DeviceManagerOpenroadmImpl devMgrOpenRdmImpl; NetconfNetworkElementService netcnfNtwrkElmntSrvc; @@ -50,9 +40,7 @@ public class TestDeviceManagerOpenRoadmImpl { @Test public void test() throws Exception { - devMgrOpenRdmImpl.setNetconfNetworkElementService(netcnfNtwrkElmntSrvc); - } @After @@ -60,22 +48,4 @@ public class TestDeviceManagerOpenRoadmImpl { devMgrOpenRdmImpl.close(); } - private static void delete(Path etc) throws IOException { - if (Files.exists(etc)) { - System.out.println("Found, removing:" + etc.toString()); - delete(etc.toFile()); - } - } - - private static void delete(File f) throws IOException { - if (f.isDirectory()) { - for (File c : f.listFiles()) { - delete(c); - } - } - if (!f.delete()) { - throw new FileNotFoundException("Failed to delete file: " + f); - } - } - } diff --git a/sdnr/wt/devicemanager-openroadm/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/devicemanager/openroadm/test/TestOpenRoadmInventory.java b/sdnr/wt/devicemanager-openroadm/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/devicemanager/openroadm/test/TestOpenRoadmInventory.java index f63eeb8b3..607e9ac03 100644 --- a/sdnr/wt/devicemanager-openroadm/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/devicemanager/openroadm/test/TestOpenRoadmInventory.java +++ b/sdnr/wt/devicemanager-openroadm/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/devicemanager/openroadm/test/TestOpenRoadmInventory.java @@ -44,6 +44,9 @@ import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types. import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv4Address; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.DateAndTime; import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NodeId; +import org.opendaylight.yangtools.yang.common.Uint16; +import org.opendaylight.yangtools.yang.common.Uint32; +import org.opendaylight.yangtools.yang.common.Uint8; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -58,8 +61,8 @@ public class TestOpenRoadmInventory { .setCurrentIpAddress(ipAddress).setCurrentDefaultGateway(new IpAddress(new Ipv4Address("127.0.0.20"))) .setCurrentDefaultGateway(new IpAddress(new Ipv4Address("127.0.0.20"))).setNodeType(NodeTypes.Rdm) .setCurrentDatetime(new DateAndTime("2017-10-22T15:23:43Z")).setSoftwareVersion("swversion1234") - .setPrefixLength((short) 28).setMaxDegrees(2).setMaxSrgs(3).setMaxNumBin15minHistoricalPm(32) - .setMaxNumBin24hourHistoricalPm(7).setOpenroadmVersion(OpenroadmVersionType._20).build(); + .setPrefixLength(Uint8.valueOf(28)).setMaxDegrees(Uint16.valueOf(2)).setMaxSrgs(Uint16.valueOf(3)).setMaxNumBin15minHistoricalPm(Uint16.valueOf(32)) + .setMaxNumBin24hourHistoricalPm(Uint16.valueOf(7)).setOpenroadmVersion(OpenroadmVersionType._20).build(); private OrgOpenroadmDevice device = mock(OrgOpenroadmDevice.class);; private Shelves shelf = mock(Shelves.class); @@ -73,7 +76,7 @@ public class TestOpenRoadmInventory { when(accessor.getNodeId()).thenReturn(nodeId); when(device.getInfo()).thenReturn(info); - roadmInventory.getInventoryData(value1); + roadmInventory.getInventoryData(Uint32.valueOf(value1)); assertEquals(device.getInfo(), info); } @@ -92,7 +95,7 @@ public class TestOpenRoadmInventory { when(shelf.getModel()).thenReturn("1"); when(shelf.getHardwareVersion()).thenReturn("0.1"); when(shelf.getManufactureDate()).thenReturn(new DateAndTime("2017-10-22T15:23:43Z")); - roadmInventory.getShelvesInventory(shelf, (value1 + 1)); + roadmInventory.getShelvesInventory(shelf, Uint32.valueOf(value1 + 1)); LOG.info("Shelves test completed"); } @@ -110,7 +113,7 @@ public class TestOpenRoadmInventory { when(cp.getProductCode()).thenReturn("oooooo"); when(cp.getCircuitPackMode()).thenReturn("inServiceMode"); when(device.getInfo()).thenReturn(info); - roadmInventory.getCircuitPackInventory(cp, value1 + 1); + roadmInventory.getCircuitPackInventory(cp, Uint32.valueOf(value1 + 1)); } @@ -121,17 +124,17 @@ public class TestOpenRoadmInventory { when(interfaces.getDescription()).thenReturn("Ethernet Interface"); when(interfaces.getSupportingCircuitPackName()).thenReturn("1/0"); when(device.getInfo()).thenReturn(info); - roadmInventory.getInterfacesInventory(interfaces, value1 + 2); + roadmInventory.getInterfacesInventory(interfaces, Uint32.valueOf(value1 + 2)); } @Test public void TestXponder() { - when(xpdr.getXpdrNumber()).thenReturn(1); + when(xpdr.getXpdrNumber()).thenReturn(Uint16.valueOf(1)); when(xpdr.getXpdrType()).thenReturn(XpdrNodeTypes.Mpdr); when(xpdr.getLifecycleState()).thenReturn(LifecycleState.Deployed); when(accessor.getNodeId()).thenReturn(nodeId); when(device.getInfo()).thenReturn(info); - roadmInventory.getXponderInventory(xpdr, value1 + 1); + roadmInventory.getXponderInventory(xpdr, Uint32.valueOf(value1 + 1)); } diff --git a/sdnr/wt/devicemanager-openroadm/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/devicemanager/openroadm/test/TestOpenRoadmNetworkElement.java b/sdnr/wt/devicemanager-openroadm/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/devicemanager/openroadm/test/TestOpenRoadmNetworkElement.java index ce03a9385..794c2eb1a 100644 --- a/sdnr/wt/devicemanager-openroadm/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/devicemanager/openroadm/test/TestOpenRoadmNetworkElement.java +++ b/sdnr/wt/devicemanager-openroadm/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/devicemanager/openroadm/test/TestOpenRoadmNetworkElement.java @@ -1,272 +1,304 @@ -/* - * ============LICENSE_START======================================================= - * ONAP : ccsdk features - * ================================================================================ - * Copyright (C) 2020 highstreet technologies GmbH Intellectual Property. - * All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - * - */ -package org.onap.ccsdk.features.sdnr.wt.devicemanager.openroadm.test; - -import static org.mockito.Mockito.mock; -import static org.mockito.Mockito.when; -import java.math.BigInteger; -import java.util.Arrays; -import java.util.List; -import org.junit.Before; -import org.junit.Test; -import org.onap.ccsdk.features.sdnr.wt.dataprovider.model.DataProvider; -import org.onap.ccsdk.features.sdnr.wt.devicemanager.openroadm.impl.OpenroadmInventoryInput; -import org.onap.ccsdk.features.sdnr.wt.devicemanager.openroadm.impl.OpenroadmNetworkElement; -import org.onap.ccsdk.features.sdnr.wt.devicemanager.service.DeviceManagerServiceProvider; -import org.onap.ccsdk.features.sdnr.wt.devicemanager.service.FaultService; -import org.onap.ccsdk.features.sdnr.wt.netconfnodestateservice.Capabilities; -import org.onap.ccsdk.features.sdnr.wt.netconfnodestateservice.NetconfAccessor; -import org.onap.ccsdk.features.sdnr.wt.netconfnodestateservice.TransactionUtils; -import org.opendaylight.mdsal.binding.api.DataBroker; -import org.opendaylight.mdsal.common.api.LogicalDatastoreType; -import org.opendaylight.yang.gen.v1.http.org.openroadm.alarm.rev191129.ActiveAlarmList; -import org.opendaylight.yang.gen.v1.http.org.openroadm.alarm.rev191129.Severity; -import org.opendaylight.yang.gen.v1.http.org.openroadm.alarm.rev191129.active.alarm.list.ActiveAlarms; -import org.opendaylight.yang.gen.v1.http.org.openroadm.alarm.rev191129.alarm.ProbableCauseBuilder; -import org.opendaylight.yang.gen.v1.http.org.openroadm.alarm.rev191129.alarm.ResourceBuilder; -import org.opendaylight.yang.gen.v1.http.org.openroadm.common.node.types.rev191129.NodeIdType; -import org.opendaylight.yang.gen.v1.http.org.openroadm.common.state.types.rev191129.LifecycleState; -import org.opendaylight.yang.gen.v1.http.org.openroadm.common.state.types.rev191129.State; -import org.opendaylight.yang.gen.v1.http.org.openroadm.common.types.rev191129.OpenroadmVersionType; -import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev191129.OrgOpenroadmDevice; -import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev191129.circuit.pack.ParentCircuitPack; -import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev191129.circuit.packs.CircuitPacks; -import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev191129.interfaces.grp.Interface; -import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev191129.org.openroadm.device.Info; -import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev191129.org.openroadm.device.InfoBuilder; -import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev191129.org.openroadm.device.Xponder; -import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev191129.shelf.Slots; -import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev191129.shelves.Shelves; -import org.opendaylight.yang.gen.v1.http.org.openroadm.device.types.rev191129.NodeTypes; -import org.opendaylight.yang.gen.v1.http.org.openroadm.device.types.rev191129.XpdrNodeTypes; -import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.rev191129.HistoricalPmList; -import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.rev191129.historical.pm.group.HistoricalPm; -import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.rev191129.historical.pm.list.HistoricalPmEntry; -import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.rev191129.historical.pm.val.group.Measurement; -import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.types.rev191129.PmDataType; -import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.types.rev191129.PmGranularity; -import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.types.rev191129.PmNamesEnum; -import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.types.rev191129.Validity; -import org.opendaylight.yang.gen.v1.http.org.openroadm.probablecause.rev191129.ProbableCauseEnum; -import org.opendaylight.yang.gen.v1.http.org.openroadm.resource.rev191129.resource.DeviceBuilder; -import org.opendaylight.yang.gen.v1.http.org.openroadm.resource.types.rev191129.ResourceTypeEnum; -import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddress; -import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv4Address; -import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.DateAndTime; -import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.data.provider.rev201110.Inventory; -import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NodeId; -import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; - -public class TestOpenRoadmNetworkElement { - - NetconfAccessor accessor = mock(NetconfAccessor.class); - DeviceManagerServiceProvider serviceProvider = mock(DeviceManagerServiceProvider.class); - DataProvider dataprovider = mock(DataProvider.class); - Capabilities capabilities = mock(Capabilities.class); - TransactionUtils transactionUtils = mock(TransactionUtils.class); - DataBroker dataBroker = mock(DataBroker.class); - // OscaNetworkElement optionalNe = mock(OscaNetworkElement.class); - - FaultService faultService = mock(FaultService.class); - OrgOpenroadmDevice device; - // OscaInventoryInput inventoryData = mock(OscaInventoryInput.class); - OpenroadmInventoryInput inventoryData; - private Inventory equipment = mock(Inventory.class); - long level = 1; - private Shelves shelf = mock(Shelves.class); - private List shelfList; - private CircuitPacks cp, cp1, cp2, cp3; - private Interface interfaces = mock(Interface.class); - private Xponder xpdr = mock(Xponder.class); - private IpAddress ipAddress = new IpAddress(new Ipv4Address("127.0.0.11")); - private Info info = new InfoBuilder().setNodeId(NodeIdType.getDefaultInstance("zNhe2i5")).setClli("NodeB") - .setSerialId("0002").setModel("model2").setVendor("VendorA").setCurrentIpAddress(ipAddress) - .setCurrentIpAddress(ipAddress).setCurrentDefaultGateway(new IpAddress(new Ipv4Address("127.0.0.20"))) - .setCurrentDefaultGateway(new IpAddress(new Ipv4Address("127.0.0.20"))).setNodeType(NodeTypes.Rdm) - .setCurrentDatetime(new DateAndTime("2017-10-22T15:23:43Z")).setSoftwareVersion("swversion1234") - .setPrefixLength((short) 28).setMaxDegrees(2).setMaxSrgs(3).setMaxNumBin15minHistoricalPm(32) - .setMaxNumBin24hourHistoricalPm(7).setOpenroadmVersion(OpenroadmVersionType._20).build(); - private ActiveAlarmList alarmList = mock(ActiveAlarmList.class); - private ActiveAlarms activeAlarms = mock(ActiveAlarms.class); - private HistoricalPmList pmDataList = mock(HistoricalPmList.class); - private HistoricalPm historicalPm = mock(HistoricalPm.class); - @Before - public void init() { - when(accessor.getCapabilites()).thenReturn(capabilities); - when(serviceProvider.getFaultService()).thenReturn(faultService); - when(serviceProvider.getDataProvider()).thenReturn(dataprovider); - NodeId nNodeId = new NodeId("RoadmA"); - when(accessor.getNodeId()).thenReturn(nNodeId); - when(accessor.getDataBroker()).thenReturn(dataBroker); - when(accessor.getTransactionUtils()).thenReturn(transactionUtils); - when(accessor.getCapabilites().isSupportingNamespaceAndRevision(OrgOpenroadmDevice.QNAME)).thenReturn(true); - final Class openRoadmDev = OrgOpenroadmDevice.class; - // Reading data from device - InstanceIdentifier deviceId = InstanceIdentifier.builder(openRoadmDev).build(); - device = mock(OrgOpenroadmDevice.class); - when(accessor.getTransactionUtils().readData(accessor.getDataBroker(), LogicalDatastoreType.OPERATIONAL, - deviceId)).thenReturn(device); - - when(device.getInfo()).thenReturn(info); - inventoryData = new OpenroadmInventoryInput(accessor, device); - // Reading the shelfs data; - when(shelf.getShelfPosition()).thenReturn("10"); - when(shelf.getOperationalState()).thenReturn(State.InService); - when(shelf.getSerialId()).thenReturn("nodeid-1"); - when(shelf.getShelfName()).thenReturn("Shelf1"); - when(shelf.getShelfType()).thenReturn("Shelf"); - when(shelf.getClei()).thenReturn("1234567890"); - when(shelf.getVendor()).thenReturn("vendorA"); - when(shelf.getModel()).thenReturn("1"); - when(shelf.getHardwareVersion()).thenReturn("0.1"); - when(shelf.getManufactureDate()).thenReturn(new DateAndTime("2017-10-22T15:23:43Z")); - List slotList = null; - Slots slots = mock(Slots.class); - when(slots.getLabel()).thenReturn("Slot56746"); - when(slots.getSlotName()).thenReturn("slotofRoadmA"); - when(slots.getProvisionedCircuitPack()).thenReturn("1/0"); - slotList = Arrays.asList(slots); - when(shelf.getSlots()).thenReturn(slotList); - shelfList = Arrays.asList(shelf); - when(device.getShelves()).thenReturn(shelfList); - - // Reading data from CircuitPacks - cp = mock(CircuitPacks.class); - when(cp.getCircuitPackName()).thenReturn("1/0"); - when(cp.getVendor()).thenReturn("VendorA"); - when(cp.getModel()).thenReturn("Model1"); - when(cp.getSerialId()).thenReturn("46277sgh6"); - when(cp.getClei()).thenReturn("136268785"); - when(cp.getHardwareVersion()).thenReturn("0.1"); - when(cp.getType()).thenReturn("WSS"); - when(cp.getProductCode()).thenReturn("oooooo"); - when(cp.getCircuitPackMode()).thenReturn("inServiceMode"); - - ParentCircuitPack parentCp = mock(ParentCircuitPack.class); - when(parentCp.getCircuitPackName()).thenReturn("1/0"); - when(parentCp.getCpSlotName()).thenReturn("Slot1"); - cp1 = mock(CircuitPacks.class); - when(cp1.getCircuitPackName()).thenReturn("1/0 EThernet"); - when(cp1.getVendor()).thenReturn("VendorA"); - when(cp1.getModel()).thenReturn("Model1678"); - when(cp1.getSerialId()).thenReturn("4627dgs7sgh6"); - when(cp1.getClei()).thenReturn("1362d68785"); - when(cp1.getHardwareVersion()).thenReturn("0.1"); - when(cp1.getType()).thenReturn("EthPlug"); - when(cp1.getProductCode()).thenReturn("oooooo"); - when(cp1.getCircuitPackMode()).thenReturn("inServiceMode"); - when(cp1.getParentCircuitPack()).thenReturn(parentCp); - - cp2 = mock(CircuitPacks.class); - when(cp2.getCircuitPackName()).thenReturn("2/0"); - when(cp2.getVendor()).thenReturn("VendorA"); - when(cp2.getModel()).thenReturn("Model1678"); - when(cp2.getSerialId()).thenReturn("4sads7sgh6"); - when(cp2.getClei()).thenReturn("1wew362d68785"); - when(cp2.getHardwareVersion()).thenReturn("0.1"); - when(cp2.getType()).thenReturn("WSS"); - when(cp2.getProductCode()).thenReturn("osooooo"); - when(cp2.getCircuitPackMode()).thenReturn("inServiceMode"); - - cp3 = mock(CircuitPacks.class); - when(parentCp.getCircuitPackName()).thenReturn("2/0"); - when(parentCp.getCpSlotName()).thenReturn("Slot1"); - when(cp3.getCircuitPackName()).thenReturn("2/0 OCS"); - when(cp3.getVendor()).thenReturn("VendorA"); - when(cp3.getModel()).thenReturn("Model1678"); - when(cp3.getSerialId()).thenReturn("dswsads7sgh6"); - when(cp3.getClei()).thenReturn("1ew62d68785"); - when(cp3.getHardwareVersion()).thenReturn("0.1"); - when(cp3.getType()).thenReturn("OCS Plug"); - when(cp3.getProductCode()).thenReturn("osooooo"); - when(cp3.getCircuitPackMode()).thenReturn("inServiceMode"); - when(cp3.getParentCircuitPack()).thenReturn(parentCp); - List cpList = Arrays.asList(cp, cp1, cp2, cp3); - when(device.getCircuitPacks()).thenReturn(cpList); - - // Reading Interface Data - when(interfaces.getName()).thenReturn("1GE-interface-1"); - when(interfaces.getDescription()).thenReturn("Ethernet Interface"); - when(interfaces.getSupportingCircuitPackName()).thenReturn("1/0 EThernet"); - List interfacesList = Arrays.asList(interfaces); - when(device.getInterface()).thenReturn(interfacesList); - - // Reading Xponder Data - when(xpdr.getXpdrNumber()).thenReturn(1); - when(xpdr.getXpdrType()).thenReturn(XpdrNodeTypes.Mpdr); - when(xpdr.getLifecycleState()).thenReturn(LifecycleState.Deployed); - List xpnderList = Arrays.asList(xpdr); - when(device.getXponder()).thenReturn(xpnderList); - - // Read initial Alarm data - final Class classAlarm = ActiveAlarmList.class; - InstanceIdentifier alarmDataIid = InstanceIdentifier.builder(classAlarm).build(); - when(accessor.getTransactionUtils().readData(accessor.getDataBroker(), LogicalDatastoreType.OPERATIONAL, - alarmDataIid)).thenReturn(alarmList); - when(activeAlarms.getId()).thenReturn("Alarm1"); - when(activeAlarms.getCircuitId()).thenReturn("1/0"); - when(activeAlarms.getRaiseTime()).thenReturn(new DateAndTime("2017-10-22T15:23:43Z")); - when(activeAlarms.getSeverity()).thenReturn(Severity.Critical); - when(activeAlarms.getProbableCause()) - .thenReturn(new ProbableCauseBuilder().setCause(ProbableCauseEnum.AutomaticLaserShutdown).build()); - when(activeAlarms.getAdditionalDetail()).thenReturn("LaserShutdown"); - when(activeAlarms.getResource()).thenReturn(new ResourceBuilder() - .setDevice(new DeviceBuilder().setNodeId(NodeIdType.getDefaultInstance("zNhe2i5")).build()).build()); - List activeAlarmlist = Arrays.asList(activeAlarms); - when(alarmList.getActiveAlarms()).thenReturn(activeAlarmlist); - - // Read PM Data - final Class pmDataClass = HistoricalPmList.class; - InstanceIdentifier pmDataIid = InstanceIdentifier.builder(pmDataClass).build(); - when(accessor.getTransactionUtils().readData(accessor.getDataBroker(), LogicalDatastoreType.OPERATIONAL, - pmDataIid)).thenReturn(pmDataList); - - Measurement measurement = mock(Measurement.class); - PmDataType pmDataType = mock(PmDataType.class); - when(pmDataType.getUint64()).thenReturn(BigInteger.valueOf(2425425)); - when(measurement.getBinNumber()).thenReturn(1452); - when(measurement.getCompletionTime()).thenReturn(new DateAndTime("2018-10-22T15:23:43Z")); - when(measurement.getGranularity()).thenReturn(PmGranularity._24Hour); - when(measurement.getPmParameterUnit()).thenReturn("6824545199534863756"); - when(measurement.getPmParameterValue()).thenReturn(pmDataType); - when(measurement.getValidity()).thenReturn(Validity.Partial); - - List measurementList = Arrays.asList(measurement); - when(historicalPm.getMeasurement()).thenReturn(measurementList); - when(historicalPm.getType()).thenReturn(PmNamesEnum.DelayTCM1Down); - when(historicalPm.getExtension()).thenReturn("OpticalPowerOutput"); - List historicalPmList = Arrays.asList(historicalPm); - HistoricalPmEntry histPmEntry = mock(HistoricalPmEntry.class); - when(histPmEntry.getHistoricalPm()).thenReturn(historicalPmList); - when(histPmEntry.getPmResourceType()).thenReturn(ResourceTypeEnum.CircuitPack); - List histPmList = Arrays.asList(histPmEntry); - when(pmDataList.getHistoricalPmEntry()).thenReturn(histPmList); - - } - - @Test - public void test() { - OpenroadmNetworkElement optionalNe = new OpenroadmNetworkElement(accessor, serviceProvider); - optionalNe.initialReadFromNetworkElement(); - } - -} +///* +// * ============LICENSE_START======================================================= +// * ONAP : ccsdk features +// * ================================================================================ +// * Copyright (C) 2020 highstreet technologies GmbH Intellectual Property. +// * All rights reserved. +// * ================================================================================ +// * Licensed under the Apache License, Version 2.0 (the "License"); +// * you may not use this file except in compliance with the License. +// * You may obtain a copy of the License at +// * +// * http://www.apache.org/licenses/LICENSE-2.0 +// * +// * Unless required by applicable law or agreed to in writing, software +// * distributed under the License is distributed on an "AS IS" BASIS, +// * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// * See the License for the specific language governing permissions and +// * limitations under the License. +// * ============LICENSE_END========================================================= +// * +// */ +//package org.onap.ccsdk.features.sdnr.wt.devicemanager.openroadm.test; +// +//import static org.mockito.Mockito.mock; +//import static org.mockito.Mockito.when; +//import java.math.BigInteger; +//import java.util.Arrays; +//import java.util.HashMap; +//import java.util.List; +//import java.util.Map; +// +//import org.eclipse.jdt.annotation.Nullable; +//import org.junit.Before; +//import org.junit.Test; +//import org.onap.ccsdk.features.sdnr.wt.dataprovider.model.DataProvider; +//import org.onap.ccsdk.features.sdnr.wt.devicemanager.openroadm.impl.OpenroadmInventoryInput; +//import org.onap.ccsdk.features.sdnr.wt.devicemanager.openroadm.impl.OpenroadmNetworkElement; +//import org.onap.ccsdk.features.sdnr.wt.devicemanager.service.DeviceManagerServiceProvider; +//import org.onap.ccsdk.features.sdnr.wt.devicemanager.service.FaultService; +//import org.onap.ccsdk.features.sdnr.wt.netconfnodestateservice.Capabilities; +//import org.onap.ccsdk.features.sdnr.wt.netconfnodestateservice.NetconfAccessor; +//import org.onap.ccsdk.features.sdnr.wt.netconfnodestateservice.TransactionUtils; +//import org.opendaylight.mdsal.binding.api.DataBroker; +//import org.opendaylight.mdsal.common.api.LogicalDatastoreType; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.alarm.rev191129.ActiveAlarmList; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.alarm.rev191129.Severity; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.alarm.rev191129.active.alarm.list.ActiveAlarms; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.alarm.rev191129.active.alarm.list.ActiveAlarmsKey; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.alarm.rev191129.alarm.ProbableCauseBuilder; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.alarm.rev191129.alarm.ResourceBuilder; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.common.node.types.rev191129.NodeIdType; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.common.state.types.rev191129.LifecycleState; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.common.state.types.rev191129.State; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.common.types.rev191129.OpenroadmVersionType; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev191129.OrgOpenroadmDevice; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev191129.circuit.pack.ParentCircuitPack; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev191129.circuit.packs.CircuitPacks; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev191129.circuit.packs.CircuitPacksKey; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev191129.interfaces.grp.Interface; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev191129.interfaces.grp.InterfaceKey; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev191129.org.openroadm.device.Info; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev191129.org.openroadm.device.InfoBuilder; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev191129.org.openroadm.device.Xponder; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev191129.org.openroadm.device.XponderKey; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev191129.shelf.Slots; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev191129.shelf.SlotsKey; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev191129.shelves.Shelves; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev191129.shelves.ShelvesKey; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.device.types.rev191129.NodeTypes; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.device.types.rev191129.XpdrNodeTypes; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.rev191129.HistoricalPmList; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.rev191129.historical.pm.group.HistoricalPm; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.rev191129.historical.pm.group.HistoricalPmKey; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.rev191129.historical.pm.list.HistoricalPmEntry; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.rev191129.historical.pm.list.HistoricalPmEntryKey; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.rev191129.historical.pm.val.group.Measurement; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.rev191129.historical.pm.val.group.MeasurementKey; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.types.rev191129.PmDataType; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.types.rev191129.PmGranularity; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.types.rev191129.PmNamesEnum; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.types.rev191129.Validity; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.probablecause.rev191129.ProbableCauseEnum; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.resource.rev191129.resource.DeviceBuilder; +//import org.opendaylight.yang.gen.v1.http.org.openroadm.resource.types.rev191129.ResourceTypeEnum; +//import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddress; +//import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv4Address; +//import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.DateAndTime; +//import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.data.provider.rev201110.Inventory; +//import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NodeId; +//import org.opendaylight.yangtools.yang.binding.DataObject; +//import org.opendaylight.yangtools.yang.binding.Identifiable; +//import org.opendaylight.yangtools.yang.binding.Identifier; +//import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; +//import org.opendaylight.yangtools.yang.common.Uint16; +//import org.opendaylight.yangtools.yang.common.Uint64; +// +//public class TestOpenRoadmNetworkElement { +// +// NetconfAccessor accessor = mock(NetconfAccessor.class); +// DeviceManagerServiceProvider serviceProvider = mock(DeviceManagerServiceProvider.class); +// DataProvider dataprovider = mock(DataProvider.class); +// Capabilities capabilities = mock(Capabilities.class); +// TransactionUtils transactionUtils = mock(TransactionUtils.class); +// DataBroker dataBroker = mock(DataBroker.class); +// // OscaNetworkElement optionalNe = mock(OscaNetworkElement.class); +// +// FaultService faultService = mock(FaultService.class); +// OrgOpenroadmDevice device; +// // OscaInventoryInput inventoryData = mock(OscaInventoryInput.class); +// OpenroadmInventoryInput inventoryData; +// private Inventory equipment = mock(Inventory.class); +// long level = 1; +// private Shelves shelf = mock(Shelves.class); +// private @Nullable Map shelfList; +// private CircuitPacks cp, cp1, cp2, cp3; +// private Interface interfaces = mock(Interface.class); +// private Xponder xpdr = mock(Xponder.class); +// private IpAddress ipAddress = new IpAddress(new Ipv4Address("127.0.0.11")); +// private Info info = new InfoBuilder().setNodeId(NodeIdType.getDefaultInstance("zNhe2i5")).setClli("NodeB") +// .setSerialId("0002").setModel("model2").setVendor("VendorA").setCurrentIpAddress(ipAddress) +// .setCurrentIpAddress(ipAddress).setCurrentDefaultGateway(new IpAddress(new Ipv4Address("127.0.0.20"))) +// .setCurrentDefaultGateway(new IpAddress(new Ipv4Address("127.0.0.20"))).setNodeType(NodeTypes.Rdm) +// .setCurrentDatetime(new DateAndTime("2017-10-22T15:23:43Z")).setSoftwareVersion("swversion1234") +// .setPrefixLength((short) 28).setMaxDegrees(2).setMaxSrgs(3).setMaxNumBin15minHistoricalPm(32) +// .setMaxNumBin24hourHistoricalPm(7).setOpenroadmVersion(OpenroadmVersionType._20).build(); +// private ActiveAlarmList alarmList = mock(ActiveAlarmList.class); +// private ActiveAlarms activeAlarms = mock(ActiveAlarms.class); +// private HistoricalPmList pmDataList = mock(HistoricalPmList.class); +// private HistoricalPm historicalPm = mock(HistoricalPm.class); +// @Before +// public void init() { +// when(accessor.getCapabilites()).thenReturn(capabilities); +// when(serviceProvider.getFaultService()).thenReturn(faultService); +// when(serviceProvider.getDataProvider()).thenReturn(dataprovider); +// NodeId nNodeId = new NodeId("RoadmA"); +// when(accessor.getNodeId()).thenReturn(nNodeId); +// when(accessor.getDataBroker()).thenReturn(dataBroker); +// when(accessor.getTransactionUtils()).thenReturn(transactionUtils); +// when(accessor.getCapabilites().isSupportingNamespaceAndRevision(OrgOpenroadmDevice.QNAME)).thenReturn(true); +// final Class openRoadmDev = OrgOpenroadmDevice.class; +// // Reading data from device +// InstanceIdentifier deviceId = InstanceIdentifier.builder(openRoadmDev).build(); +// device = mock(OrgOpenroadmDevice.class); +// when(accessor.getTransactionUtils().readData(accessor.getDataBroker(), LogicalDatastoreType.OPERATIONAL, +// deviceId)).thenReturn(device); +// +// when(device.getInfo()).thenReturn(info); +// inventoryData = new OpenroadmInventoryInput(accessor, device); +// // Reading the shelfs data; +// when(shelf.getShelfPosition()).thenReturn("10"); +// when(shelf.getOperationalState()).thenReturn(State.InService); +// when(shelf.getSerialId()).thenReturn("nodeid-1"); +// when(shelf.getShelfName()).thenReturn("Shelf1"); +// when(shelf.getShelfType()).thenReturn("Shelf"); +// when(shelf.getClei()).thenReturn("1234567890"); +// when(shelf.getVendor()).thenReturn("vendorA"); +// when(shelf.getModel()).thenReturn("1"); +// when(shelf.getHardwareVersion()).thenReturn("0.1"); +// when(shelf.getManufactureDate()).thenReturn(new DateAndTime("2017-10-22T15:23:43Z")); +// @Nullable Map slotList = null; +// Slots slots = mock(Slots.class); +// when(slots.getLabel()).thenReturn("Slot56746"); +// when(slots.getSlotName()).thenReturn("slotofRoadmA"); +// when(slots.getProvisionedCircuitPack()).thenReturn("1/0"); +// slotList = new HashMap<>(); +// slotList.put(slots.key(),slots); +// when(shelf.getSlots()).thenReturn(slotList); +// shelfList = new HashMap<>(); +// shelfList.put(shelf.key(),shelf); +// when(device.getShelves()).thenReturn(shelfList); +// +// // Reading data from CircuitPacks +// cp = mock(CircuitPacks.class); +// when(cp.getCircuitPackName()).thenReturn("1/0"); +// when(cp.getVendor()).thenReturn("VendorA"); +// when(cp.getModel()).thenReturn("Model1"); +// when(cp.getSerialId()).thenReturn("46277sgh6"); +// when(cp.getClei()).thenReturn("136268785"); +// when(cp.getHardwareVersion()).thenReturn("0.1"); +// when(cp.getType()).thenReturn("WSS"); +// when(cp.getProductCode()).thenReturn("oooooo"); +// when(cp.getCircuitPackMode()).thenReturn("inServiceMode"); +// +// ParentCircuitPack parentCp = mock(ParentCircuitPack.class); +// when(parentCp.getCircuitPackName()).thenReturn("1/0"); +// when(parentCp.getCpSlotName()).thenReturn("Slot1"); +// cp1 = mock(CircuitPacks.class); +// when(cp1.getCircuitPackName()).thenReturn("1/0 EThernet"); +// when(cp1.getVendor()).thenReturn("VendorA"); +// when(cp1.getModel()).thenReturn("Model1678"); +// when(cp1.getSerialId()).thenReturn("4627dgs7sgh6"); +// when(cp1.getClei()).thenReturn("1362d68785"); +// when(cp1.getHardwareVersion()).thenReturn("0.1"); +// when(cp1.getType()).thenReturn("EthPlug"); +// when(cp1.getProductCode()).thenReturn("oooooo"); +// when(cp1.getCircuitPackMode()).thenReturn("inServiceMode"); +// when(cp1.getParentCircuitPack()).thenReturn(parentCp); +// +// cp2 = mock(CircuitPacks.class); +// when(cp2.getCircuitPackName()).thenReturn("2/0"); +// when(cp2.getVendor()).thenReturn("VendorA"); +// when(cp2.getModel()).thenReturn("Model1678"); +// when(cp2.getSerialId()).thenReturn("4sads7sgh6"); +// when(cp2.getClei()).thenReturn("1wew362d68785"); +// when(cp2.getHardwareVersion()).thenReturn("0.1"); +// when(cp2.getType()).thenReturn("WSS"); +// when(cp2.getProductCode()).thenReturn("osooooo"); +// when(cp2.getCircuitPackMode()).thenReturn("inServiceMode"); +// +// cp3 = mock(CircuitPacks.class); +// when(parentCp.getCircuitPackName()).thenReturn("2/0"); +// when(parentCp.getCpSlotName()).thenReturn("Slot1"); +// when(cp3.getCircuitPackName()).thenReturn("2/0 OCS"); +// when(cp3.getVendor()).thenReturn("VendorA"); +// when(cp3.getModel()).thenReturn("Model1678"); +// when(cp3.getSerialId()).thenReturn("dswsads7sgh6"); +// when(cp3.getClei()).thenReturn("1ew62d68785"); +// when(cp3.getHardwareVersion()).thenReturn("0.1"); +// when(cp3.getType()).thenReturn("OCS Plug"); +// when(cp3.getProductCode()).thenReturn("osooooo"); +// when(cp3.getCircuitPackMode()).thenReturn("inServiceMode"); +// when(cp3.getParentCircuitPack()).thenReturn(parentCp); +// @Nullable Map cpList = new HashMap<>(); +// cpList.put(cp.key(),cp); +// cpList.put(cp1.key(),cp1); +// cpList.put(cp2.key(),cp2); +// cpList.put(cp3.key(),cp3); +// when(device.getCircuitPacks()).thenReturn(cpList); +// +// // Reading Interface Data +// when(interfaces.getName()).thenReturn("1GE-interface-1"); +// when(interfaces.getDescription()).thenReturn("Ethernet Interface"); +// when(interfaces.getSupportingCircuitPackName()).thenReturn("1/0 EThernet"); +// @Nullable Map interfacesList = new HashMap<>(); +// interfacesList.put(interfaces.key(),interfaces); +// when(device.getInterface()).thenReturn(interfacesList); +// +// // Reading Xponder Data +// when(xpdr.getXpdrNumber()).thenReturn(Uint16.valueOf(1)); +// when(xpdr.getXpdrType()).thenReturn(XpdrNodeTypes.Mpdr); +// when(xpdr.getLifecycleState()).thenReturn(LifecycleState.Deployed); +// @Nullable Map xpnderList = new HashMap<>(); +// xpnderList.put(xpdr.key(), xpdr); +// when(device.getXponder()).thenReturn(xpnderList); +// +// // Read initial Alarm data +// final Class classAlarm = ActiveAlarmList.class; +// InstanceIdentifier alarmDataIid = InstanceIdentifier.builder(classAlarm).build(); +// when(accessor.getTransactionUtils().readData(accessor.getDataBroker(), LogicalDatastoreType.OPERATIONAL, +// alarmDataIid)).thenReturn(alarmList); +// when(activeAlarms.getId()).thenReturn("Alarm1"); +// when(activeAlarms.getCircuitId()).thenReturn("1/0"); +// when(activeAlarms.getRaiseTime()).thenReturn(new DateAndTime("2017-10-22T15:23:43Z")); +// when(activeAlarms.getSeverity()).thenReturn(Severity.Critical); +// when(activeAlarms.getProbableCause()) +// .thenReturn(new ProbableCauseBuilder().setCause(ProbableCauseEnum.AutomaticLaserShutdown).build()); +// when(activeAlarms.getAdditionalDetail()).thenReturn("LaserShutdown"); +// when(activeAlarms.getResource()).thenReturn(new ResourceBuilder() +// .setDevice(new DeviceBuilder().setNodeId(NodeIdType.getDefaultInstance("zNhe2i5")).build()).build()); +// @Nullable Map activeAlarmlist = new HashMap<>(); +// activeAlarmlist.put(activeAlarms.key(),activeAlarms); +// when(alarmList.getActiveAlarms()).thenReturn(activeAlarmlist); +// +// // Read PM Data +// final Class pmDataClass = HistoricalPmList.class; +// InstanceIdentifier pmDataIid = InstanceIdentifier.builder(pmDataClass).build(); +// when(accessor.getTransactionUtils().readData(accessor.getDataBroker(), LogicalDatastoreType.OPERATIONAL, +// pmDataIid)).thenReturn(pmDataList); +// +// Measurement measurement = mock(Measurement.class); +// PmDataType pmDataType = mock(PmDataType.class); +// when(pmDataType.getUint64()).thenReturn(Uint64.valueOf(2425425)); +// when(measurement.getBinNumber()).thenReturn(Uint16.valueOf(1452)); +// when(measurement.getCompletionTime()).thenReturn(new DateAndTime("2018-10-22T15:23:43Z")); +// when(measurement.getGranularity()).thenReturn(PmGranularity._24Hour); +// when(measurement.getPmParameterUnit()).thenReturn("6824545199534863756"); +// when(measurement.getPmParameterValue()).thenReturn(pmDataType); +// when(measurement.getValidity()).thenReturn(Validity.Partial); +// +// @Nullable Map measurementList = new HashMap<>(); +// measurementList.put(measurement.key(),measurement); +// when(historicalPm.getMeasurement()).thenReturn(measurementList); +// when(historicalPm.getType()).thenReturn(PmNamesEnum.DelayTCM1Down); +// when(historicalPm.getExtension()).thenReturn("OpticalPowerOutput"); +// @Nullable Map historicalPmList = new HashMap<>(); +// historicalPmList.put(historicalPm.key(),historicalPm); +// HistoricalPmEntry histPmEntry = mock(HistoricalPmEntry.class); +// when(histPmEntry.getHistoricalPm()).thenReturn(historicalPmList); +// when(histPmEntry.getPmResourceType()).thenReturn(ResourceTypeEnum.CircuitPack); +// @Nullable Map histPmList = new HashMap<>(); +// histPmList.put(histPmEntry.key(),histPmEntry); +// when(pmDataList.getHistoricalPmEntry()).thenReturn(histPmList); +// +// } +// +// +// +// @Test +// public void test() { +// OpenroadmNetworkElement optionalNe = new OpenroadmNetworkElement(accessor, serviceProvider); +// optionalNe.initialReadFromNetworkElement(); +// } +// +//} diff --git a/sdnr/wt/devicemanager-openroadm/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/devicemanager/openroadm/test/TestOpenRoadmNetworkElementFactory.java b/sdnr/wt/devicemanager-openroadm/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/devicemanager/openroadm/test/TestOpenRoadmNetworkElementFactory.java index 901a7b376..40a48c358 100644 --- a/sdnr/wt/devicemanager-openroadm/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/devicemanager/openroadm/test/TestOpenRoadmNetworkElementFactory.java +++ b/sdnr/wt/devicemanager-openroadm/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/devicemanager/openroadm/test/TestOpenRoadmNetworkElementFactory.java @@ -21,71 +21,76 @@ */ package org.onap.ccsdk.features.sdnr.wt.devicemanager.openroadm.test; +import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; import java.io.IOException; +import java.util.Optional; import org.junit.After; import org.junit.BeforeClass; import org.junit.Test; import org.onap.ccsdk.features.sdnr.wt.devicemanager.openroadm.impl.OpenroadmNetworkElementFactory; -import org.onap.ccsdk.features.sdnr.wt.devicemanager.openroadm.test.mock.NetconfAccessorMock; import org.onap.ccsdk.features.sdnr.wt.devicemanager.service.DeviceManagerServiceProvider; import org.onap.ccsdk.features.sdnr.wt.netconfnodestateservice.Capabilities; -import org.onap.ccsdk.features.sdnr.wt.netconfnodestateservice.NetconfAccessor; +import org.onap.ccsdk.features.sdnr.wt.netconfnodestateservice.NetconfBindingAccessor; import org.onap.ccsdk.features.sdnr.wt.netconfnodestateservice.TransactionUtils; import org.opendaylight.mdsal.binding.api.DataBroker; import org.opendaylight.mdsal.common.api.LogicalDatastoreType; import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev191129.OrgOpenroadmDevice; import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NodeId; import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; -import org.opendaylight.yangtools.yang.common.QName; public class TestOpenRoadmNetworkElementFactory { - static NetconfAccessor accessor; - static DeviceManagerServiceProvider serviceProvider; - static Capabilities capabilities; - QName qCapability; - private NodeId nodeId = new NodeId("RoadmA2"); - static OrgOpenroadmDevice device; - static TransactionUtils transactionUtils; - static DataBroker dataBroker; + private static NetconfBindingAccessor accessor; + private static DeviceManagerServiceProvider serviceProvider; + private static Capabilities capabilities; + private static TransactionUtils transactionUtils; + private static DataBroker dataBroker; @BeforeClass public static void init() throws InterruptedException, IOException { - accessor = mock(NetconfAccessorMock.class); + accessor = mock(NetconfBindingAccessor.class); capabilities = mock(Capabilities.class); dataBroker = mock(DataBroker.class); transactionUtils = mock(TransactionUtils.class); serviceProvider = mock(DeviceManagerServiceProvider.class); + when(accessor.getNodeId()).thenReturn(new NodeId("RoadmA2")); when(accessor.getCapabilites()).thenReturn(capabilities); when(accessor.getDataBroker()).thenReturn(dataBroker); when(accessor.getTransactionUtils()).thenReturn(transactionUtils); + when(accessor.getNetconfBindingAccessor()).thenReturn(Optional.of(accessor)); when(serviceProvider.getDataProvider()).thenReturn(null); - device = mock(OrgOpenroadmDevice.class); + final Class openRoadmDev = OrgOpenroadmDevice.class; InstanceIdentifier deviceId = InstanceIdentifier.builder(openRoadmDev).build(); when(accessor.getTransactionUtils().readData(accessor.getDataBroker(), LogicalDatastoreType.OPERATIONAL, - deviceId)).thenReturn(device); + deviceId)).thenReturn(mock(OrgOpenroadmDevice.class)); + + when(accessor.getTransactionUtils()).thenReturn(mock(TransactionUtils.class)); } @Test - public void testCapabilties() { - when(accessor.getNodeId()).thenReturn(nodeId); - when(accessor.getCapabilites().isSupportingNamespace(OrgOpenroadmDevice.QNAME)).thenReturn(true); + public void testCapabiltiesAvailable1() { + when(accessor.getCapabilites().isSupportingNamespaceAndRevision(OrgOpenroadmDevice.QNAME)).thenReturn(true); + OpenroadmNetworkElementFactory factory = new OpenroadmNetworkElementFactory(); + assertTrue((factory.create(accessor, serviceProvider)).isPresent()); + } - // when(accessor.getCapabilites().isSupportingNamespace(SimulatorStatus.QNAME)).thenReturn(false); + @Test + public void testCapabiltiesAvailable2() { + when(accessor.getCapabilites().isSupportingNamespaceAndRevision("http://org/openroadm/device", "2018-10-19")) + .thenReturn(true); OpenroadmNetworkElementFactory factory = new OpenroadmNetworkElementFactory(); assertTrue((factory.create(accessor, serviceProvider)).isPresent()); } @Test - public void testCreateNone() throws Exception { - when(accessor.getCapabilites().isSupportingNamespace(OrgOpenroadmDevice.QNAME)).thenReturn(false); - // when(accessor.getCapabilites().isSupportingNamespace(SimulatorStatus.QNAME)).thenReturn(false); + public void testCapabiltiesNotAvailable() throws Exception { + when(accessor.getCapabilites().isSupportingNamespaceAndRevision(OrgOpenroadmDevice.QNAME)).thenReturn(false); OpenroadmNetworkElementFactory factory = new OpenroadmNetworkElementFactory(); - assertTrue(!(factory.create(accessor, serviceProvider).isPresent())); + assertFalse(factory.create(accessor, serviceProvider).isPresent()); } @After @@ -93,5 +98,4 @@ public class TestOpenRoadmNetworkElementFactory { } - } diff --git a/sdnr/wt/devicemanager-openroadm/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/devicemanager/openroadm/test/mock/NetconfAccessorMock.java b/sdnr/wt/devicemanager-openroadm/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/devicemanager/openroadm/test/mock/NetconfAccessorMock.java deleted file mode 100644 index d225a1ecc..000000000 --- a/sdnr/wt/devicemanager-openroadm/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/devicemanager/openroadm/test/mock/NetconfAccessorMock.java +++ /dev/null @@ -1,112 +0,0 @@ -/* - * ============LICENSE_START======================================================= - * ONAP : ccsdk features - * ================================================================================ - * Copyright (C) 2020 highstreet technologies GmbH Intellectual Property. - * All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - * - */ -package org.onap.ccsdk.features.sdnr.wt.devicemanager.openroadm.test.mock; - -import com.google.common.util.concurrent.ListenableFuture; -import java.util.List; -import org.eclipse.jdt.annotation.NonNull; -import org.onap.ccsdk.features.sdnr.wt.netconfnodestateservice.Capabilities; -import org.onap.ccsdk.features.sdnr.wt.netconfnodestateservice.NetconfAccessor; -import org.onap.ccsdk.features.sdnr.wt.netconfnodestateservice.TransactionUtils; -import org.opendaylight.mdsal.binding.api.DataBroker; -import org.opendaylight.mdsal.binding.api.MountPoint; -import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.netconf.notification._1._0.rev080714.CreateSubscriptionOutput; -import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.netmod.notification.rev080714.netconf.streams.Stream; -import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.node.topology.rev150114.NetconfNode; -import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NodeId; -import org.opendaylight.yangtools.concepts.ListenerRegistration; -import org.opendaylight.yangtools.yang.binding.NotificationListener; -import org.opendaylight.yangtools.yang.common.RpcResult; - -/** - */ -public class NetconfAccessorMock implements NetconfAccessor { - - private final NodeId nNodeId; - private final NetconfNode netconfNode; - private final MountPoint mountpoint; - private final DataBroker netconfNodeDataBroker; - - public NetconfAccessorMock(NodeId nNodeId, NetconfNode netconfNode, MountPoint mountpoint, - DataBroker netconfNodeDataBroker) { - this.nNodeId = nNodeId; - this.netconfNode = netconfNode; - this.mountpoint = mountpoint; - this.netconfNodeDataBroker = netconfNodeDataBroker; - } - - @Override - public NodeId getNodeId() { - return nNodeId; - } - - @Override - public NetconfNode getNetconfNode() { - return netconfNode; - } - - @Override - public Capabilities getCapabilites() { - return null; - } - - @Override - public DataBroker getDataBroker() { - return netconfNodeDataBroker; - } - - @Override - public MountPoint getMountpoint() { - return mountpoint; - } - - @Override - public TransactionUtils getTransactionUtils() { - return null; - } - - @Override - public ListenerRegistration doRegisterNotificationListener( - @NonNull T listener) { - return null; - } - - @Override - public ListenableFuture> registerNotificationsStream(String streamName) { - return null; - } - - @Override - public void registerNotificationsStream(List streamList) { - } - - @Override - public boolean isNCNotificationsSupported() { - return false; - } - - @Override - public List getNotificationStreams() { - return null; - } - -} diff --git a/sdnr/wt/devicemanager-openroadm/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/devicemanager/openroadm/test/mock/TransactionUtilsMock.java b/sdnr/wt/devicemanager-openroadm/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/devicemanager/openroadm/test/mock/TransactionUtilsMock.java deleted file mode 100644 index 68383e68f..000000000 --- a/sdnr/wt/devicemanager-openroadm/provider/src/test/java/org/onap/ccsdk/features/sdnr/wt/devicemanager/openroadm/test/mock/TransactionUtilsMock.java +++ /dev/null @@ -1,50 +0,0 @@ -/* - * ============LICENSE_START======================================================= - * ONAP : ccsdk features - * ================================================================================ - * Copyright (C) 2020 highstreet technologies GmbH Intellectual Property. - * All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - * - */ -package org.onap.ccsdk.features.sdnr.wt.devicemanager.openroadm.test.mock; - -import java.util.concurrent.atomic.AtomicBoolean; -import java.util.concurrent.atomic.AtomicReference; -import org.eclipse.jdt.annotation.Nullable; -import org.onap.ccsdk.features.sdnr.wt.netconfnodestateservice.TransactionUtils; -import org.opendaylight.mdsal.binding.api.DataBroker; -import org.opendaylight.mdsal.common.api.LogicalDatastoreType; -import org.opendaylight.yangtools.yang.binding.DataObject; -import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; - -public class TransactionUtilsMock implements TransactionUtils { - - @Override - public @Nullable T readData(DataBroker dataBroker, LogicalDatastoreType dataStoreType, - InstanceIdentifier iid) { - // TODO Auto-generated method stub - return null; - } - - @Override - public @Nullable T readDataOptionalWithStatus(DataBroker dataBroker, - LogicalDatastoreType dataStoreType, InstanceIdentifier iid, AtomicBoolean noErrorIndication, - AtomicReference statusIndicator) { - // TODO Auto-generated method stub - return null; - } - -} -- cgit 1.2.3-korg