63b31b71731e30a0ea07cd1f3d79a690be081b64
[ccsdk/features.git] /
1 /*******************************************************************************
2  * ============LICENSE_START========================================================================
3  * ONAP : ccsdk feature sdnr wt
4  * =================================================================================================
5  * Copyright (C) 2020 highstreet technologies GmbH Intellectual Property. All rights reserved.
6  * =================================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
8  * in compliance with the License. You may obtain a copy of the License at
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software distributed under the License
13  * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
14  * or implied. See the License for the specific language governing permissions and limitations under
15  * the License.
16  * ============LICENSE_END==========================================================================
17  ******************************************************************************/
18 package org.onap.ccsdk.features.sdnr.wt.devicemanager.onf.ne.test;
19
20 import static org.junit.Assert.*;
21 import static org.mockito.Mockito.mock;
22 import static org.mockito.Mockito.when;
23
24 import java.util.List;
25 import java.util.Optional;
26
27 import org.eclipse.jdt.annotation.Nullable;
28 import org.junit.Before;
29 import org.junit.Test;
30 import org.onap.ccsdk.features.sdnr.wt.devicemanager.onf.ifpac.microwave.OnfMicrowaveModel;
31 import org.onap.ccsdk.features.sdnr.wt.devicemanager.onf.ne.ONFCoreNetworkElement12Basic;
32 import org.onap.ccsdk.features.sdnr.wt.devicemanager.onf.ne.ONFCoreNetworkElement12Microwave;
33 import org.onap.ccsdk.features.sdnr.wt.devicemanager.service.DeviceManagerServiceProvider;
34 import org.onap.ccsdk.features.sdnr.wt.devicemanager.service.EquipmentService;
35 import org.onap.ccsdk.features.sdnr.wt.devicemanager.service.FaultService;
36 import org.onap.ccsdk.features.sdnr.wt.netconfnodestateservice.NetconfAccessor;
37 import org.onap.ccsdk.features.sdnr.wt.netconfnodestateservice.TransactionUtils;
38 import org.onap.ccsdk.features.sdnr.wt.netconfnodestateservice.Capabilities;
39 import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
40 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.DateAndTime;
41 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.core.model.rev170320.AdministrativeControl;
42 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.core.model.rev170320.AdministrativeState;
43 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.core.model.rev170320.LifecycleState;
44 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.core.model.rev170320.NetworkElement;
45 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.core.model.rev170320.OperationalState;
46 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.core.model.rev170320.UniversalId;
47 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.core.model.rev170320.extension.g.Extension;
48 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.core.model.rev170320.global._class.g.LocalId;
49 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.core.model.rev170320.label.g.Label;
50 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.core.model.rev170320.name.g.Name;
51 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.core.model.rev170320.network.element.Fd;
52 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.core.model.rev170320.network.element.Ltp;
53 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.onf.core.model.conditional.packages.rev170402.NetworkElementPac;
54 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.data.provider.rev190801.EventlogEntity;
55 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.data.provider.rev190801.SourceType;
56 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NodeId;
57 import org.opendaylight.yangtools.yang.binding.Augmentation;
58 import org.opendaylight.yangtools.yang.binding.DataContainer;
59 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
60
61 public class TestONFCoreNetworkElement12Microwave {
62
63         NetconfAccessor accessor;
64         DeviceManagerServiceProvider serviceProvider;
65         Capabilities capabilities;
66         TransactionUtils transactionUtils;
67         NetworkElement optionalNe;
68         OnfMicrowaveModel onfMicrowaveModel;
69         FaultService faultService;
70         EquipmentService equipmentService;
71
72         protected static final InstanceIdentifier<NetworkElement> NETWORKELEMENT_IID = InstanceIdentifier
73                         .builder(NetworkElement.class).build();
74
75         @Before
76         public void init() {
77                 accessor = mock(NetconfAccessor.class);
78                 serviceProvider = mock(DeviceManagerServiceProvider.class);
79                 capabilities = mock(Capabilities.class);
80                 transactionUtils = mock(TransactionUtils.class);
81                 onfMicrowaveModel = mock(OnfMicrowaveModel.class);
82                 faultService = mock(FaultService.class);
83                 equipmentService = mock(EquipmentService.class);
84
85                 when(accessor.getCapabilites()).thenReturn(capabilities);
86                 when(serviceProvider.getFaultService()).thenReturn(faultService);
87                 when(serviceProvider.getEquipmentService()).thenReturn(equipmentService);
88
89                 NodeId nNodeId = new NodeId("nSky");
90                 when(accessor.getNodeId()).thenReturn(nNodeId);
91                 when(accessor.getCapabilites().isSupportingNamespaceAndRevision(NetworkElementPac.QNAME)).thenReturn(true);
92                 when(accessor.getTransactionUtils()).thenReturn(transactionUtils);
93
94         }
95
96         @Test
97         public void test() {
98                 optionalNe = new NetworkElement() {
99
100                         @Override
101                         public @Nullable List<Label> getLabel() {
102                                 // TODO Auto-generated method stub
103                                 return null;
104                         }
105
106                         @Override
107                         public @Nullable List<Extension> getExtension() {
108                                 // TODO Auto-generated method stub
109                                 return null;
110                         }
111
112                         @Override
113                         public @Nullable OperationalState getOperationalState() {
114                                 // TODO Auto-generated method stub
115                                 return null;
116                         }
117
118                         @Override
119                         public @Nullable LifecycleState getLifecycleState() {
120                                 // TODO Auto-generated method stub
121                                 return null;
122                         }
123
124                         @Override
125                         public @Nullable AdministrativeState getAdministrativeState() {
126                                 // TODO Auto-generated method stub
127                                 return null;
128                         }
129
130                         @Override
131                         public @Nullable AdministrativeControl getAdministrativeControl() {
132                                 // TODO Auto-generated method stub
133                                 return null;
134                         }
135
136                         @Override
137                         public @Nullable List<Name> getName() {
138                                 // TODO Auto-generated method stub
139                                 return null;
140                         }
141
142                         @Override
143                         public @Nullable UniversalId getUuid() {
144                                 // TODO Auto-generated method stub
145                                 return null;
146                         }
147
148                         @Override
149                         public @Nullable List<LocalId> getLocalId() {
150                                 // TODO Auto-generated method stub
151                                 return null;
152                         }
153
154                         @Override
155                         public <E$$ extends Augmentation<NetworkElement>> @Nullable E$$ augmentation(Class<E$$> augmentationType) {
156                                 // TODO Auto-generated method stub
157                                 return null;
158                         }
159
160                         @Override
161                         public Class<? extends DataContainer> getImplementedInterface() {
162                                 // TODO Auto-generated method stub
163                                 return null;
164                         }
165
166                         @Override
167                         public @Nullable List<Ltp> getLtp() {
168                                 // TODO Auto-generated method stub
169                                 return null;
170                         }
171
172                         @Override
173                         public @Nullable List<Fd> getFd() {
174                                 // TODO Auto-generated method stub
175                                 return null;
176                         }
177                 };
178
179                 when(accessor.getTransactionUtils().readData(accessor.getDataBroker(), LogicalDatastoreType.OPERATIONAL,
180                                 NETWORKELEMENT_IID)).thenReturn(optionalNe);
181
182                 ONFCoreNetworkElement12Microwave onfCoreNetworkElement12MW = new ONFCoreNetworkElement12Microwave(accessor,
183                                 serviceProvider, onfMicrowaveModel);
184                 onfCoreNetworkElement12MW.prepareCheck();
185
186                 EventlogEntity eventlogEntity = new EventlogEntity() {
187
188                         @Override
189                         public @Nullable String getId() {
190                                 // TODO Auto-generated method stub
191                                 return null;
192                         }
193
194                         @Override
195                         public @Nullable DateAndTime getTimestamp() {
196                                 // TODO Auto-generated method stub
197                                 return null;
198                         }
199
200                         @Override
201                         public @Nullable String getObjectId() {
202                                 // TODO Auto-generated method stub
203                                 return "ABCD";
204                         }
205
206                         @Override
207                         public @Nullable String getNodeId() {
208                                 // TODO Auto-generated method stub
209                                 return null;
210                         }
211
212                         @Override
213                         public @Nullable Integer getCounter() {
214                                 // TODO Auto-generated method stub
215                                 return null;
216                         }
217
218                         @Override
219                         public @Nullable SourceType getSourceType() {
220                                 // TODO Auto-generated method stub
221                                 return null;
222                         }
223
224                         @Override
225                         public @Nullable String getNewValue() {
226                                 // TODO Auto-generated method stub
227                                 return null;
228                         }
229
230                         @Override
231                         public @Nullable String getAttributeName() {
232                                 // TODO Auto-generated method stub
233                                 return "/network-element/extension[value-name=\"top-level-equipment\"]/value"; // "/equipment-pac/equipment-current-problems";
234                         }
235
236                         @Override
237                         public Class<? extends DataContainer> getImplementedInterface() {
238                                 // TODO Auto-generated method stub
239                                 return null;
240                         }
241                 };
242
243                 onfCoreNetworkElement12MW.notificationActor(eventlogEntity);
244
245         }
246
247
248         @Test 
249         public void test1() 
250         { 
251                 when (accessor.getTransactionUtils().readData(accessor.getDataBroker(),
252                                 LogicalDatastoreType.OPERATIONAL, NETWORKELEMENT_IID)).thenReturn(null);
253
254                 ONFCoreNetworkElement12Microwave onfCoreNetworkElement12MW = 
255                                 new ONFCoreNetworkElement12Microwave(accessor, serviceProvider,
256                                                 onfMicrowaveModel); onfCoreNetworkElement12MW.prepareCheck(); 
257
258                                                 EventlogEntity eventlogEntity = new EventlogEntity() {
259
260                                                         @Override
261                                                         public @Nullable String getId() {
262                                                                 // TODO Auto-generated method stub
263                                                                 return null;
264                                                         }
265
266                                                         @Override
267                                                         public @Nullable DateAndTime getTimestamp() {
268                                                                 // TODO Auto-generated method stub
269                                                                 return null;
270                                                         }
271
272                                                         @Override
273                                                         public @Nullable String getObjectId() {
274                                                                 // TODO Auto-generated method stub
275                                                                 return "ABCD";
276                                                         }
277
278                                                         @Override
279                                                         public @Nullable String getNodeId() {
280                                                                 // TODO Auto-generated method stub
281                                                                 return null;
282                                                         }
283
284                                                         @Override
285                                                         public @Nullable Integer getCounter() {
286                                                                 // TODO Auto-generated method stub
287                                                                 return null;
288                                                         }
289
290                                                         @Override
291                                                         public @Nullable SourceType getSourceType() {
292                                                                 // TODO Auto-generated method stub
293                                                                 return null;
294                                                         }
295
296                                                         @Override
297                                                         public @Nullable String getNewValue() {
298                                                                 // TODO Auto-generated method stub
299                                                                 return null;
300                                                         }
301
302                                                         @Override
303                                                         public @Nullable String getAttributeName() {
304                                                                 // TODO Auto-generated method stub
305                                                                 return "/equipment-pac/equipment-current-problems";
306                                                         }
307
308                                                         @Override
309                                                         public Class<? extends DataContainer> getImplementedInterface() {
310                                                                 // TODO Auto-generated method stub
311                                                                 return null;
312                                                         }
313                                                 };
314
315                                                 onfCoreNetworkElement12MW.notificationActor(eventlogEntity);
316         }
317
318
319 }