Merge "fix oauth code"
[ccsdk/features.git] / sdnr / wt / devicemanager-onap / onf14 / provider / src / test / java / org / onap / ccsdk / features / sdnr / wt / devicemanager / onf14 / dom / TestOnf14DomNetworkElement.java
1 package org.onap.ccsdk.features.sdnr.wt.devicemanager.onf14.dom;
2
3 import static org.junit.Assert.assertEquals;
4 import static org.junit.Assert.assertTrue;
5 import static org.mockito.Mockito.when;
6 import java.util.Optional;
7 import org.junit.Before;
8 import org.junit.Test;
9 import org.junit.runner.RunWith;
10 import org.mockito.Mock;
11 import org.mockito.junit.MockitoJUnitRunner;
12 import org.onap.ccsdk.features.sdnr.wt.dataprovider.model.DataProvider;
13 import org.onap.ccsdk.features.sdnr.wt.devicemanager.ne.service.NetworkElement;
14 import org.onap.ccsdk.features.sdnr.wt.devicemanager.onf14.dom.impl.Onf14DomNetworkElementFactory;
15 import org.onap.ccsdk.features.sdnr.wt.devicemanager.service.DeviceManagerServiceProvider;
16 import org.onap.ccsdk.features.sdnr.wt.devicemanager.service.FaultService;
17 import org.onap.ccsdk.features.sdnr.wt.devicemanager.service.PerformanceManager;
18 import org.onap.ccsdk.features.sdnr.wt.netconfnodestateservice.Capabilities;
19 import org.onap.ccsdk.features.sdnr.wt.netconfnodestateservice.NetconfBindingAccessor;
20 import org.onap.ccsdk.features.sdnr.wt.netconfnodestateservice.NetconfDomAccessor;
21 import org.onap.ccsdk.features.sdnr.wt.websocketmanager.model.WebsocketManagerService;
22 import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
23 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NodeId;
24 import org.opendaylight.yangtools.yang.common.QName;
25 import org.opendaylight.yangtools.yang.common.QNameModule;
26 import org.opendaylight.yangtools.yang.common.Revision;
27 import org.opendaylight.yangtools.yang.common.XMLNamespace;
28 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
29
30 @RunWith(MockitoJUnitRunner.class)
31 public class TestOnf14DomNetworkElement {
32
33     private static String NODEIDSTRING = "nSky";
34     private static final QNameModule coreModelQNM =
35             QNameModule.create(XMLNamespace.of("urn:onf:yang:core-model-1-4"), Revision.of("2019-11-27"));
36     private static final QNameModule alarmQNM =
37             QNameModule.create(XMLNamespace.of("urn:onf:yang:alarms-1-0"), Revision.of("2022-03-02"));
38     private static final YangInstanceIdentifier TOPLEVELEQUIPMENT_IID =
39             YangInstanceIdentifier.builder().node(QName.create(coreModelQNM, "control-construct"))
40                     .node(QName.create(coreModelQNM, "top-level-equipment")).build();
41     @Mock
42     NetconfDomAccessor netconfDomAccessor;
43     @Mock
44     NetconfBindingAccessor netconfBindingAccessor;
45     @Mock
46     DataProvider dataProvider;
47     @Mock
48     FaultService faultService;
49     @Mock
50     PerformanceManager pmService;
51     @Mock
52     DeviceManagerServiceProvider serviceProvider;
53     @Mock
54     WebsocketManagerService websocketManagerService;
55     @Mock
56     DataProvider databaseService;
57     @Mock
58     Capabilities capabilities;
59
60     NodeId nodeId = new NodeId(NODEIDSTRING);
61
62     @Before
63     public void init() {
64
65         when(netconfDomAccessor.getCapabilites()).thenReturn(capabilities);
66         when(netconfDomAccessor.getNetconfDomAccessor()).thenReturn(Optional.of(netconfDomAccessor));
67         when(netconfDomAccessor.getNodeId()).thenReturn(nodeId);
68         when(serviceProvider.getDataProvider()).thenReturn(dataProvider);
69         when(serviceProvider.getFaultService()).thenReturn(faultService);
70         when(serviceProvider.getPerformanceManagerService()).thenReturn(pmService);
71         when(netconfDomAccessor.readDataNode(LogicalDatastoreType.CONFIGURATION, TOPLEVELEQUIPMENT_IID))
72                 .thenReturn(Optional.empty());
73         when(netconfDomAccessor.readDataNode(LogicalDatastoreType.CONFIGURATION, TOPLEVELEQUIPMENT_IID))
74                 .thenReturn(Optional.empty());
75         when(capabilities.isSupportingNamespaceAndRevision(coreModelQNM)).thenReturn(true);
76         when(capabilities.isSupportingNamespaceAndRevision(alarmQNM)).thenReturn(true);
77     }
78
79     @Test
80     public void testWithOldInterfaceRevisions() {
81         Optional<NetworkElement> onfDomNe;
82         Onf14DomNetworkElementFactory factory = new Onf14DomNetworkElementFactory();
83         factory.init(serviceProvider);
84         onfDomNe = factory.create(netconfDomAccessor, serviceProvider);
85         assertTrue(onfDomNe.isPresent());
86
87         onfDomNe.get().register();
88         onfDomNe.get().deregister();
89         onfDomNe.get().getAcessor();
90         onfDomNe.get().getDeviceType();
91         onfDomNe.get().warmstart();
92       //  onfDomNe.get().getService(null);
93         assertEquals(onfDomNe.get().getNodeId().getValue(), "nSky");
94     }
95
96     @Test
97     public void testWithNewInterfaceRevisions() {
98         Optional<NetworkElement> onfDomNe;
99         Onf14DomNetworkElementFactory factory = new Onf14DomNetworkElementFactory();
100         factory.init(serviceProvider);
101         onfDomNe = factory.create(netconfDomAccessor, serviceProvider);
102         assertTrue(onfDomNe.isPresent());
103
104         onfDomNe.get().register();
105         onfDomNe.get().deregister();
106         onfDomNe.get().getAcessor();
107         onfDomNe.get().getDeviceType();
108         onfDomNe.get().warmstart();
109       //  onfDomNe.get().getService(null);
110         assertEquals(onfDomNe.get().getNodeId().getValue(), "nSky");
111     }
112
113 }