078890fd2e6619581901d59ab14fa0bdacad4854
[ccsdk/features.git] / sdnr / wt / devicemanager-onap / onf12 / provider / src / test / java / org / onap / ccsdk / features / sdnr / wt / devicemanager / onf / ifpac / microwave / test / TestWrapperMicrowaveModelRev180907.java
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.ifpac.microwave.test;
19
20 import static org.mockito.Mockito.mock;
21 import static org.mockito.Mockito.when;
22 import java.lang.reflect.Constructor;
23 import java.util.Arrays;
24 import java.util.List;
25 import org.eclipse.jdt.annotation.NonNull;
26 import org.junit.Before;
27 import org.junit.Test;
28 import org.onap.ccsdk.features.sdnr.wt.devicemanager.onf.ifpac.microwave.WrapperMicrowaveModelRev180907;
29 import org.onap.ccsdk.features.sdnr.wt.devicemanager.onf.util.ONFLayerProtocolName;
30 import org.onap.ccsdk.features.sdnr.wt.devicemanager.service.DeviceManagerServiceProvider;
31 import org.onap.ccsdk.features.sdnr.wt.devicemanager.types.FaultData;
32 import org.onap.ccsdk.features.sdnr.wt.devicemanager.util.InconsistentPMDataException;
33 import org.onap.ccsdk.features.sdnr.wt.netconfnodestateservice.NetconfBindingAccessor;
34 import org.onap.ccsdk.features.sdnr.wt.netconfnodestateservice.TransactionUtils;
35 import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
36 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.core.model.rev170320.UniversalId;
37 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.core.model.rev170320.logical.termination.point.g.Lp;
38 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.core.model.rev170320.logical.termination.point.g.LpBuilder;
39 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.g._874._1.model.rev170320.GranularityPeriodType;
40 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.MwAirInterfaceDiversityPac;
41 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.MwAirInterfaceDiversityPacKey;
42 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.MwAirInterfacePac;
43 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.MwAirInterfacePacKey;
44 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.MwEthernetContainerPac;
45 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.MwEthernetContainerPacKey;
46 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.MwHybridMwStructurePac;
47 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.MwHybridMwStructurePacKey;
48 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.MwPureEthernetStructurePac;
49 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.MwPureEthernetStructurePacKey;
50 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.MwTdmContainerPac;
51 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.MwTdmContainerPacKey;
52 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.SeverityType;
53 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.air._interface.current.problems.g.CurrentProblemList;
54 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.air._interface.current.problems.g.CurrentProblemListBuilder;
55 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.air._interface.historical.performance.type.g.PerformanceData;
56 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.air._interface.historical.performance.type.g.PerformanceDataBuilder;
57 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.mw.air._interface.diversity.pac.AirInterfaceDiversityCurrentProblems;
58 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.mw.air._interface.diversity.pac.AirInterfaceDiversityCurrentProblemsBuilder;
59 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.mw.air._interface.pac.AirInterfaceConfiguration;
60 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.mw.air._interface.pac.AirInterfaceConfigurationBuilder;
61 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.mw.air._interface.pac.AirInterfaceCurrentProblems;
62 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.mw.air._interface.pac.AirInterfaceCurrentProblemsBuilder;
63 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.mw.air._interface.pac.AirInterfaceHistoricalPerformances;
64 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.mw.air._interface.pac.AirInterfaceHistoricalPerformancesBuilder;
65 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.mw.ethernet.container.pac.EthernetContainerCurrentProblems;
66 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.mw.ethernet.container.pac.EthernetContainerCurrentProblemsBuilder;
67 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.mw.ethernet.container.pac.EthernetContainerHistoricalPerformances;
68 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.mw.ethernet.container.pac.EthernetContainerHistoricalPerformancesBuilder;
69 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.mw.hybrid.mw.structure.pac.HybridMwStructureCurrentProblems;
70 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.mw.hybrid.mw.structure.pac.HybridMwStructureCurrentProblemsBuilder;
71 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.mw.pure.ethernet.structure.pac.PureEthernetStructureCurrentProblems;
72 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.mw.pure.ethernet.structure.pac.PureEthernetStructureCurrentProblemsBuilder;
73 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.mw.tdm.container.pac.TdmContainerCurrentProblems;
74 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.mw.tdm.container.pac.TdmContainerCurrentProblemsBuilder;
75 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NodeId;
76 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
77
78 public class TestWrapperMicrowaveModelRev180907 {
79
80     NetconfBindingAccessor accessor;
81     DeviceManagerServiceProvider serviceProvider;
82     FaultData resultList;
83     UniversalId uid;
84     TransactionUtils transactionUtils;
85
86     InstanceIdentifier<AirInterfaceCurrentProblems> mwAirInterfaceIID;
87     @NonNull
88     AirInterfaceCurrentProblems airInterfaceCurrentProblems;
89
90     InstanceIdentifier<EthernetContainerCurrentProblems> mwEthInterfaceIID;
91     @NonNull
92     EthernetContainerCurrentProblems ethernetContainerCurrentProblems;
93
94     @Before
95     public void init() {
96         accessor = mock(NetconfBindingAccessor.class);
97         serviceProvider = mock(DeviceManagerServiceProvider.class);
98         resultList = mock(FaultData.class);
99         transactionUtils = mock(TransactionUtils.class);
100
101         uid = new UniversalId("ABCD");
102
103         mwAirInterfaceIID = InstanceIdentifier.builder(MwAirInterfacePac.class, new MwAirInterfacePacKey(uid))
104                 .child(AirInterfaceCurrentProblems.class).build();
105         List<CurrentProblemList> currentProblemList =
106                 Arrays.asList(new CurrentProblemListBuilder().setProblemName("Loss of Signal")
107                         .setProblemSeverity(SeverityType.Critical).setSequenceNumber(1).setTimeStamp(null).build());
108         airInterfaceCurrentProblems =
109                 new AirInterfaceCurrentProblemsBuilder().setCurrentProblemList(currentProblemList).build();
110
111         mwEthInterfaceIID = InstanceIdentifier.builder(MwEthernetContainerPac.class, new MwEthernetContainerPacKey(uid))
112                 .child(EthernetContainerCurrentProblems.class).build();
113         List<org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.ethernet.container.current.problems.g.CurrentProblemList> ethCurrentProblemsList =
114                 Arrays.asList(
115                         new org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.ethernet.container.current.problems.g.CurrentProblemListBuilder()
116                                 .setProblemName("Link Negotiation Unsuccessful")
117                                 .setProblemSeverity(SeverityType.Critical).setSequenceNumber(1).setTimeStamp(null)
118                                 .build());
119         ethernetContainerCurrentProblems =
120                 new EthernetContainerCurrentProblemsBuilder().setCurrentProblemList(ethCurrentProblemsList).build();
121
122         NodeId nNodeId = new NodeId("nSky");
123         when(accessor.getNodeId()).thenReturn(nNodeId);
124         when(accessor.getTransactionUtils()).thenReturn(transactionUtils);
125
126     }
127
128     @Test
129     public void testMWAirInterfaceWithProblems() {
130         when(accessor.getTransactionUtils().readData(accessor.getDataBroker(), LogicalDatastoreType.OPERATIONAL,
131                 mwAirInterfaceIID)).thenReturn(airInterfaceCurrentProblems);
132
133         WrapperMicrowaveModelRev180907 wrapperMicrowaveModelRev180907 =
134                 new WrapperMicrowaveModelRev180907(accessor, serviceProvider);
135         wrapperMicrowaveModelRev180907.readTheFaultsOfMicrowaveModel(ONFLayerProtocolName.MWAIRINTERFACE, null, uid,
136                 resultList);
137     }
138
139     @Test
140     public void testMWAirInterfaceWithoProblems() {
141         when(accessor.getTransactionUtils().readData(accessor.getDataBroker(), LogicalDatastoreType.OPERATIONAL,
142                 mwAirInterfaceIID)).thenReturn(null);
143
144         WrapperMicrowaveModelRev180907 wrapperMicrowaveModelRev180907 =
145                 new WrapperMicrowaveModelRev180907(accessor, serviceProvider);
146         wrapperMicrowaveModelRev180907.readTheFaultsOfMicrowaveModel(ONFLayerProtocolName.MWAIRINTERFACE, null, uid,
147                 resultList);
148     }
149
150     @Test
151     public void testEthernetContainer12WithProblems() {
152         when(accessor.getTransactionUtils().readData(accessor.getDataBroker(), LogicalDatastoreType.OPERATIONAL,
153                 mwEthInterfaceIID)).thenReturn(ethernetContainerCurrentProblems);
154
155         WrapperMicrowaveModelRev180907 wrapperMicrowaveModelRev180907 =
156                 new WrapperMicrowaveModelRev180907(accessor, serviceProvider);
157         wrapperMicrowaveModelRev180907.readTheFaultsOfMicrowaveModel(ONFLayerProtocolName.ETHERNETCONTAINER12, null,
158                 uid, resultList);
159     }
160
161     @Test
162     public void testEthernetContainer12WithNoProblems() {
163         when(accessor.getTransactionUtils().readData(accessor.getDataBroker(), LogicalDatastoreType.OPERATIONAL,
164                 mwEthInterfaceIID)).thenReturn(null);
165
166         WrapperMicrowaveModelRev180907 wrapperMicrowaveModelRev180907 =
167                 new WrapperMicrowaveModelRev180907(accessor, serviceProvider);
168         wrapperMicrowaveModelRev180907.readTheFaultsOfMicrowaveModel(ONFLayerProtocolName.ETHERNETCONTAINER12, null,
169                 uid, resultList);
170     }
171
172     @Test
173     public void testTdmContainer12WithProblems() throws Exception {
174         final Class<MwTdmContainerPac> clazzPac = MwTdmContainerPac.class;
175         final Class<MwTdmContainerPacKey> clazzPacKey = MwTdmContainerPacKey.class;
176         final Class<TdmContainerCurrentProblems> clazzProblems = TdmContainerCurrentProblems.class;
177
178         Constructor<MwTdmContainerPacKey> cons = clazzPacKey.getConstructor(UniversalId.class); // Avoid new()
179         InstanceIdentifier<TdmContainerCurrentProblems> mwEthInterfaceIID =
180                 InstanceIdentifier.builder(clazzPac, cons.newInstance(uid)).child(clazzProblems).build();
181
182         List<org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.tdm.container.current.problems.g.CurrentProblemList> currentProblemList =
183                 Arrays.asList(
184                         new org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.tdm.container.current.problems.g.CurrentProblemListBuilder()
185                                 .setProblemName("Loss of Payload").setProblemSeverity(SeverityType.Major)
186                                 .setSequenceNumber(2).setTimeStamp(null).build());
187         TdmContainerCurrentProblems tdmInterfaceCurrentProblems =
188                 new TdmContainerCurrentProblemsBuilder().setCurrentProblemList(currentProblemList).build();
189         when(accessor.getTransactionUtils().readData(accessor.getDataBroker(), LogicalDatastoreType.OPERATIONAL,
190                 mwEthInterfaceIID)).thenReturn(tdmInterfaceCurrentProblems);
191
192         WrapperMicrowaveModelRev180907 wrapperMicrowaveModelRev180907 =
193                 new WrapperMicrowaveModelRev180907(accessor, serviceProvider);
194         wrapperMicrowaveModelRev180907.readTheFaultsOfMicrowaveModel(ONFLayerProtocolName.TDMCONTAINER, null, uid,
195                 resultList);
196
197     }
198
199     @Test
200     public void testMwHybridMwStructureWithProblems() throws Exception {
201         final Class<MwHybridMwStructurePac> clazzPac = MwHybridMwStructurePac.class;
202         final Class<HybridMwStructureCurrentProblems> clazzProblems = HybridMwStructureCurrentProblems.class;
203
204         InstanceIdentifier<HybridMwStructureCurrentProblems> mwEthInterfaceIID =
205                 InstanceIdentifier.builder(clazzPac, new MwHybridMwStructurePacKey(uid)).child(clazzProblems).build();
206
207         List<org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.hybrid.mw.structure.current.problems.g.CurrentProblemList> currentProblemList =
208                 Arrays.asList(
209                         new org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.hybrid.mw.structure.current.problems.g.CurrentProblemListBuilder()
210                                 .setProblemName("Loss of Payload").setProblemSeverity(SeverityType.Major)
211                                 .setSequenceNumber(2).setTimeStamp(null).build());
212         HybridMwStructureCurrentProblems hybridMwStructureCurrentProblems =
213                 new HybridMwStructureCurrentProblemsBuilder().setCurrentProblemList(currentProblemList).build();
214         when(accessor.getTransactionUtils().readData(accessor.getDataBroker(), LogicalDatastoreType.OPERATIONAL,
215                 mwEthInterfaceIID)).thenReturn(hybridMwStructureCurrentProblems);
216
217         WrapperMicrowaveModelRev180907 wrapperMicrowaveModelRev180907 =
218                 new WrapperMicrowaveModelRev180907(accessor, serviceProvider);
219         wrapperMicrowaveModelRev180907.readTheFaultsOfMicrowaveModel(ONFLayerProtocolName.STRUCTURE,
220                 MwHybridMwStructurePac.class, uid, resultList);
221
222     }
223
224     @Test
225     public void testMwAirInterfaceDiversityStructureWithProblems() throws Exception {
226         final Class<MwAirInterfaceDiversityPac> clazzPac = MwAirInterfaceDiversityPac.class;
227         final Class<AirInterfaceDiversityCurrentProblems> clazzProblems = AirInterfaceDiversityCurrentProblems.class;
228
229         InstanceIdentifier<AirInterfaceDiversityCurrentProblems> mwEthInterfaceIID = InstanceIdentifier
230                 .builder(clazzPac, new MwAirInterfaceDiversityPacKey(uid)).child(clazzProblems).build();
231
232         List<org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.air._interface.diversity.current.problems.g.CurrentProblemList> currentProblemList =
233                 Arrays.asList(
234                         new org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.air._interface.diversity.current.problems.g.CurrentProblemListBuilder()
235                                 .setProblemName("Loss of Payload").setProblemSeverity(SeverityType.Major)
236                                 .setSequenceNumber(2).setTimeStamp(null).build());
237         AirInterfaceDiversityCurrentProblems hybridMwStructureCurrentProblems =
238                 new AirInterfaceDiversityCurrentProblemsBuilder().setCurrentProblemList(currentProblemList).build();
239         when(accessor.getTransactionUtils().readData(accessor.getDataBroker(), LogicalDatastoreType.OPERATIONAL,
240                 mwEthInterfaceIID)).thenReturn(hybridMwStructureCurrentProblems);
241
242         WrapperMicrowaveModelRev180907 wrapperMicrowaveModelRev180907 =
243                 new WrapperMicrowaveModelRev180907(accessor, serviceProvider);
244         wrapperMicrowaveModelRev180907.readTheFaultsOfMicrowaveModel(ONFLayerProtocolName.STRUCTURE,
245                 MwAirInterfaceDiversityPac.class, uid, resultList);
246
247     }
248
249     @Test
250     public void testMwPureEthernetStructureWithProblems() throws Exception {
251         final Class<MwPureEthernetStructurePac> clazzPac = MwPureEthernetStructurePac.class;
252         final Class<PureEthernetStructureCurrentProblems> clazzProblems = PureEthernetStructureCurrentProblems.class;
253
254         InstanceIdentifier<PureEthernetStructureCurrentProblems> mwEthInterfaceIID = InstanceIdentifier
255                 .builder(clazzPac, new MwPureEthernetStructurePacKey(uid)).child(clazzProblems).build();
256
257         List<org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.pure.ethernet.structure.current.problems.g.CurrentProblemList> currentProblemList =
258                 Arrays.asList(
259                         new org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.pure.ethernet.structure.current.problems.g.CurrentProblemListBuilder()
260                                 .setProblemName("Loss of Payload").setProblemSeverity(SeverityType.Major)
261                                 .setSequenceNumber(2).setTimeStamp(null).build());
262         PureEthernetStructureCurrentProblems hybridMwStructureCurrentProblems =
263                 new PureEthernetStructureCurrentProblemsBuilder().setCurrentProblemList(currentProblemList).build();
264         when(accessor.getTransactionUtils().readData(accessor.getDataBroker(), LogicalDatastoreType.OPERATIONAL,
265                 mwEthInterfaceIID)).thenReturn(hybridMwStructureCurrentProblems);
266
267         WrapperMicrowaveModelRev180907 wrapperMicrowaveModelRev180907 =
268                 new WrapperMicrowaveModelRev180907(accessor, serviceProvider);
269         wrapperMicrowaveModelRev180907.readTheFaultsOfMicrowaveModel(ONFLayerProtocolName.STRUCTURE,
270                 MwPureEthernetStructurePac.class, uid, resultList);
271
272     }
273
274     @Test
275     public void testNullStructureWithProblems() throws Exception {
276
277         WrapperMicrowaveModelRev180907 wrapperMicrowaveModelRev180907 =
278                 new WrapperMicrowaveModelRev180907(accessor, serviceProvider);
279         wrapperMicrowaveModelRev180907.readTheFaultsOfMicrowaveModel(ONFLayerProtocolName.STRUCTURE, null, uid,
280                 resultList);
281
282     }
283
284     @Test
285     public void testgetLtpHistoricalPerformanceData() throws InconsistentPMDataException {
286         InstanceIdentifier<AirInterfaceConfiguration> mwAirInterfaceConfigurationIID =
287                 InstanceIdentifier.builder(MwAirInterfacePac.class, new MwAirInterfacePacKey(uid))
288                         .child(AirInterfaceConfiguration.class).build();
289
290         AirInterfaceConfiguration airConfiguration =
291                 new AirInterfaceConfigurationBuilder().setAirInterfaceName("TESTINTF").build();
292         when(accessor.getTransactionUtils().readData(accessor.getDataBroker(), LogicalDatastoreType.OPERATIONAL,
293                 mwAirInterfaceConfigurationIID)).thenReturn(airConfiguration);
294
295         InstanceIdentifier<AirInterfaceHistoricalPerformances> mwAirInterfaceHistoricalPerformanceIID =
296                 InstanceIdentifier.builder(MwAirInterfacePac.class, new MwAirInterfacePacKey(uid))
297                         .child(AirInterfaceHistoricalPerformances.class).build();
298
299         PerformanceData performanceData = new PerformanceDataBuilder().build();
300         List<org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.air._interface.historical.performances.g.HistoricalPerformanceDataList> airHistPMList =
301                 Arrays.asList(
302                         new org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.air._interface.historical.performances.g.HistoricalPerformanceDataListBuilder()
303                         .setHistoryDataId("123")
304                         .setGranularityPeriod(GranularityPeriodType.Period15Min)
305                                 .setPerformanceData(performanceData).build());
306         AirInterfaceHistoricalPerformances airHistoricalPerformanceData =
307                 new AirInterfaceHistoricalPerformancesBuilder().setHistoricalPerformanceDataList(airHistPMList).build();
308         when(accessor.getTransactionUtils().readData(accessor.getDataBroker(), LogicalDatastoreType.OPERATIONAL,
309                 mwAirInterfaceHistoricalPerformanceIID)).thenReturn(airHistoricalPerformanceData);
310
311         InstanceIdentifier<EthernetContainerHistoricalPerformances> ethContainerIID =
312                 InstanceIdentifier.builder(MwEthernetContainerPac.class, new MwEthernetContainerPacKey(uid))
313                         .child(EthernetContainerHistoricalPerformances.class).build();
314
315         org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.container.historical.performance.type.g.PerformanceData ethPerformanceData =
316                 new org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.container.historical.performance.type.g.PerformanceDataBuilder()
317                         .build();
318         List<org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.ethernet.container.historical.performances.g.HistoricalPerformanceDataList> ethHistPMList =
319                 Arrays.asList(
320                         new org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.microwave.model.rev180907.ethernet.container.historical.performances.g.HistoricalPerformanceDataListBuilder()
321                         .setHistoryDataId("123")
322                         .setGranularityPeriod(GranularityPeriodType.Period24Hours)
323                                 .setPerformanceData(ethPerformanceData).build());
324         EthernetContainerHistoricalPerformances ethContainerHistoricalPerformanceData =
325                 new EthernetContainerHistoricalPerformancesBuilder().setHistoricalPerformanceDataList(ethHistPMList)
326                         .build();
327         when(accessor.getTransactionUtils().readData(accessor.getDataBroker(), LogicalDatastoreType.OPERATIONAL,
328                 ethContainerIID)).thenReturn(ethContainerHistoricalPerformanceData);
329
330         Lp lp = new LpBuilder().setUuid(uid).build();;
331         WrapperMicrowaveModelRev180907 wrapperMicrowaveModelRev180907 =
332                 new WrapperMicrowaveModelRev180907(accessor, serviceProvider);
333
334         wrapperMicrowaveModelRev180907.getLtpHistoricalPerformanceData(ONFLayerProtocolName.MWAIRINTERFACE, lp);
335     }
336 }