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
 
  10  * http://www.apache.org/licenses/LICENSE-2.0
 
  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
 
  16  * ============LICENSE_END==========================================================================
 
  18 package org.onap.ccsdk.features.sdnr.wt.devicemanager.onf.impl.test;
 
  20 import static org.junit.Assert.assertTrue;
 
  21 import static org.mockito.Mockito.mock;
 
  22 import static org.mockito.Mockito.when;
 
  25 import java.io.IOException;
 
  26 import org.junit.After;
 
  27 import org.junit.AfterClass;
 
  28 import org.junit.BeforeClass;
 
  29 import org.junit.Test;
 
  30 import org.onap.ccsdk.features.sdnr.wt.common.configuration.ConfigurationFileRepresentation;
 
  31 import org.onap.ccsdk.features.sdnr.wt.devicemanager.onf.ifpac.microwave.WrapperMicrowaveModelRev170324;
 
  32 import org.onap.ccsdk.features.sdnr.wt.devicemanager.onf.ifpac.microwave.WrapperMicrowaveModelRev180907;
 
  33 import org.onap.ccsdk.features.sdnr.wt.devicemanager.onf.ifpac.microwave.WrapperMicrowaveModelRev181010;
 
  34 import org.onap.ccsdk.features.sdnr.wt.devicemanager.onf.impl.DeviceManagerOnfConfiguration;
 
  35 import org.onap.ccsdk.features.sdnr.wt.devicemanager.onf.impl.ONFCoreNetworkElementFactory;
 
  36 import org.onap.ccsdk.features.sdnr.wt.devicemanager.service.DeviceManagerServiceProvider;
 
  37 import org.onap.ccsdk.features.sdnr.wt.netconfnodestateservice.Capabilities;
 
  38 import org.onap.ccsdk.features.sdnr.wt.netconfnodestateservice.NetconfAccessor;
 
  39 import org.opendaylight.mdsal.binding.api.DataBroker;
 
  40 import org.opendaylight.yang.gen.v1.urn.onf.params.xml.ns.yang.core.model.rev170320.NetworkElement;
 
  41 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NodeId;
 
  42 import org.opendaylight.yangtools.yang.common.QName;
 
  44 public class TestONFCoreNetworkElementFactory {
 
  46     static NetconfAccessor accessor;
 
  47     static DeviceManagerServiceProvider serviceProvider;
 
  48     static Capabilities capabilities;
 
  49     static DataBroker dataBroker;
 
  50     static NodeId nNodeId;
 
  51     static DeviceManagerOnfConfiguration configuration;
 
  53     static File configFile;
 
  57     public static void init() throws InterruptedException, IOException {
 
  59         capabilities = mock(Capabilities.class);
 
  60         accessor = mock(NetconfAccessor.class);
 
  61         serviceProvider = mock(DeviceManagerServiceProvider.class);
 
  62         dataBroker = mock(DataBroker.class);
 
  64         configFile = new File("devicemanager.properties");
 
  65         ConfigurationFileRepresentation configFileRep = new ConfigurationFileRepresentation(configFile);
 
  66         configuration = new DeviceManagerOnfConfiguration(configFileRep);
 
  68         when(accessor.getCapabilites()).thenReturn(capabilities);
 
  69         //when(serviceProvider.getDataProvider()).thenReturn(dataProvider);
 
  70         nNodeId = new NodeId("nSky");
 
  71         when(accessor.getNodeId()).thenReturn(nNodeId);
 
  77     public static void after() {
 
  82     public void testCreateMWModelRev170324() throws Exception {
 
  85         when(accessor.getCapabilites().isSupportingNamespaceAndRevision(NetworkElement.QNAME)).thenReturn(true);
 
  86         when(accessor.getCapabilites().isSupportingNamespaceAndRevision(WrapperMicrowaveModelRev170324.QNAME)).thenReturn(true);
 
  87         when(accessor.getCapabilites().isSupportingNamespaceAndRevision(WrapperMicrowaveModelRev180907.QNAME)).thenReturn(false);
 
  88         when(accessor.getCapabilites().isSupportingNamespaceAndRevision(WrapperMicrowaveModelRev181010.QNAME)).thenReturn(false);
 
  89         ONFCoreNetworkElementFactory factory = new ONFCoreNetworkElementFactory(configuration);
 
  90         assertTrue(factory.create(accessor, serviceProvider).isPresent());
 
  94     public void testCreateMWModelRev180907() throws Exception {
 
  95         when(accessor.getCapabilites().isSupportingNamespaceAndRevision(NetworkElement.QNAME)).thenReturn(true);
 
  96         when(accessor.getCapabilites().isSupportingNamespaceAndRevision(WrapperMicrowaveModelRev170324.QNAME)).thenReturn(false);
 
  97         when(accessor.getCapabilites().isSupportingNamespaceAndRevision(WrapperMicrowaveModelRev180907.QNAME)).thenReturn(true);
 
  98         when(accessor.getCapabilites().isSupportingNamespaceAndRevision(WrapperMicrowaveModelRev181010.QNAME)).thenReturn(false);
 
  99         ONFCoreNetworkElementFactory factory = new ONFCoreNetworkElementFactory(configuration);
 
 100         assertTrue(factory.create(accessor, serviceProvider).isPresent());
 
 104     public void testCreateMWModelRev181010() throws Exception {
 
 105         when(accessor.getCapabilites().isSupportingNamespaceAndRevision(NetworkElement.QNAME)).thenReturn(true);
 
 106         when(accessor.getCapabilites().isSupportingNamespaceAndRevision(WrapperMicrowaveModelRev170324.QNAME)).thenReturn(false);
 
 107         when(accessor.getCapabilites().isSupportingNamespaceAndRevision(WrapperMicrowaveModelRev180907.QNAME)).thenReturn(false);
 
 108         when(accessor.getCapabilites().isSupportingNamespaceAndRevision(WrapperMicrowaveModelRev181010.QNAME)).thenReturn(true);
 
 109         ONFCoreNetworkElementFactory factory = new ONFCoreNetworkElementFactory(configuration);
 
 110         assertTrue(factory.create(accessor, serviceProvider).isPresent());
 
 114     public void cleanUp() throws Exception {