Enhance or write new tests

Enhance or write new tests

Change-Id: I4281b83410645ca0b6f64ab719adcd01c2a04ed3
Issue-ID: SDC-1816
Signed-off-by: shrikantawachar <shrikant.awachar@amdocs.com>
diff --git a/openecomp-be/backend/openecomp-sdc-action-manager/src/main/java/org/openecomp/sdc/action/impl/ActionManagerImpl.java b/openecomp-be/backend/openecomp-sdc-action-manager/src/main/java/org/openecomp/sdc/action/impl/ActionManagerImpl.java
index 87edc9a..dc101ae 100644
--- a/openecomp-be/backend/openecomp-sdc-action-manager/src/main/java/org/openecomp/sdc/action/impl/ActionManagerImpl.java
+++ b/openecomp-be/backend/openecomp-sdc-action-manager/src/main/java/org/openecomp/sdc/action/impl/ActionManagerImpl.java
@@ -18,6 +18,8 @@
 
 import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.lang.StringUtils;
+import org.openecomp.core.dao.UniqueValueDao;
+import org.openecomp.core.dao.UniqueValueDao;
 import org.openecomp.core.dao.UniqueValueDaoFactory;
 import org.openecomp.core.util.UniqueValueUtil;
 import org.openecomp.core.utilities.CommonMethods;
@@ -73,40 +75,38 @@
     private final ActionVersioningManager versioningManager;
     private final ActionArtifactDao actionArtifactDao;
     private final VersionInfoDao versionInfoDao;
+    private final UniqueValueDao uniqueValueDao;
 
     private final Logger log = LoggerFactory.getLogger(this.getClass()
             .getName());
 
-    public ActionManagerImpl() {
-        actionDao = ActionDaoFactory.getInstance()
-                .createInterface();
-        versioningManager = ActionVersioningManagerFactory.getInstance()
-                .createInterface();
-        actionArtifactDao = ActionArtifactDaoFactory.getInstance()
-                .createInterface();
-        versionInfoDao = VersionInfoDaoFactory.getInstance()
-                .createInterface();
-        actionDao.registerVersioning(ACTION_VERSIONABLE_TYPE);
-    }
+  public ActionManagerImpl() {
+    actionDao = ActionDaoFactory.getInstance().createInterface();
+    versioningManager = ActionVersioningManagerFactory.getInstance().createInterface();
+    actionArtifactDao = ActionArtifactDaoFactory.getInstance().createInterface();
+    versionInfoDao = VersionInfoDaoFactory.getInstance().createInterface();
+    actionDao.registerVersioning(ACTION_VERSIONABLE_TYPE);
+    uniqueValueDao = UniqueValueDaoFactory.getInstance().createInterface();
+  }
 
-    public ActionManagerImpl(ActionDao actionDao, ActionVersioningManager versioningManager,
-            ActionArtifactDao actionArtifactDao, VersionInfoDao versionInfoDao) {
-        this.actionDao = actionDao;
-        this.versioningManager = versioningManager;
-        this.actionArtifactDao = actionArtifactDao;
-        this.versionInfoDao = versionInfoDao;
-    }
-
-    /**
-     * List All Major, Last Minor and Candidate version (if any) for Given
-     * Action Invariant UUID
-     *
-     * @param invariantId
-     *            Invariant UUID of the action for which the information is
-     *            required
-     * @return List of All Major, Last Minor and Candidate version if any Of
-     *         {@link Action} with given actionInvariantUuId.
-     */
+  public ActionManagerImpl(ActionDao actionDao, ActionVersioningManager versioningManager,
+                           ActionArtifactDao actionArtifactDao, VersionInfoDao versionInfoDao,
+                           UniqueValueDao uniqueValueDao) {
+    this.actionDao = actionDao;
+    this.versioningManager = versioningManager;
+    this.actionArtifactDao = actionArtifactDao;
+    this.versionInfoDao = versionInfoDao;
+    this.uniqueValueDao = uniqueValueDao;
+  }
+  /**
+   * List All Major, Last Minor and Candidate version (if any) for Given Action Invariant UUID
+   *
+   * @param invariantId Invariant UUID of the action for which the information is required
+   * @return List of All Major, Last Minor and Candidate version if any Of {@link Action} with given
+   * actionInvariantUuId.
+   * @throws ActionException Exception with an action library specific code, short description and
+   *                         detailed message for the error occurred during the operation
+   */
 
     @Override
     public List<Action> getActionsByActionInvariantUuId(String invariantId) {
@@ -239,8 +239,7 @@
      */
     @Override
     public Action createAction(Action action, String user) {
-        UniqueValueUtil uniqueValueUtil = new UniqueValueUtil(UniqueValueDaoFactory.getInstance()
-                .createInterface());
+        UniqueValueUtil uniqueValueUtil = new UniqueValueUtil(uniqueValueDao);
         try {
             actionLogPreProcessor(ActionSubOperation.VALIDATE_ACTION_UNIQUE_NAME, TARGET_ENTITY_API);
             uniqueValueUtil.validateUniqueValue(ActionConstants.UniqueValues.ACTION_NAME, action.getName());
@@ -403,8 +402,7 @@
 
             if (version.equals(new Version(0, 0))) {
                 actionLogPreProcessor(ActionSubOperation.DELETE_UNIQUEVALUE, TARGET_ENTITY_API);
-                UniqueValueUtil uniqueValueUtil = new UniqueValueUtil(UniqueValueDaoFactory.getInstance()
-                        .createInterface());
+                UniqueValueUtil uniqueValueUtil = new UniqueValueUtil(uniqueValueDao);
                 uniqueValueUtil.deleteUniqueValue(ActionConstants.UniqueValues.ACTION_NAME, action.getName());
                 actionLogPostProcessor(StatusCode.COMPLETE);
                 log.metrics("");
diff --git a/openecomp-be/backend/openecomp-sdc-action-manager/src/test/java/org/openecomp/sdc/action/impl/ActionManagerImplTest.java b/openecomp-be/backend/openecomp-sdc-action-manager/src/test/java/org/openecomp/sdc/action/impl/ActionManagerImplTest.java
index 40cf107..7143271 100644
--- a/openecomp-be/backend/openecomp-sdc-action-manager/src/test/java/org/openecomp/sdc/action/impl/ActionManagerImplTest.java
+++ b/openecomp-be/backend/openecomp-sdc-action-manager/src/test/java/org/openecomp/sdc/action/impl/ActionManagerImplTest.java
@@ -27,6 +27,7 @@
 import org.mockito.Mockito;
 import org.mockito.MockitoAnnotations;
 import org.mockito.runners.MockitoJUnitRunner;
+import org.openecomp.core.dao.UniqueValueDao;
 import org.openecomp.sdc.action.ActionConstants;
 import org.openecomp.sdc.action.dao.ActionArtifactDao;
 import org.openecomp.sdc.action.dao.ActionDao;
@@ -57,6 +58,7 @@
 import static org.mockito.Matchers.any;
 import static org.mockito.Matchers.anyInt;
 import static org.mockito.Matchers.anyString;
+import static org.mockito.Mockito.doReturn;
 import static org.mockito.Mockito.times;
 import static org.mockito.Mockito.when;
 
@@ -71,14 +73,26 @@
     private  ActionArtifactDao actionArtifactDao;
     @Mock
     private VersionInfoDao versionInfoDao;
+    @Mock
+    private UniqueValueDao uniqueValueDao;
 
     private ActionManagerImpl actionManager;
 
-
     @Before
     public void init() {
         MockitoAnnotations.initMocks(this);
-        actionManager = new ActionManagerImpl(actionDao, versioningManager, actionArtifactDao, versionInfoDao);
+        actionManager = new ActionManagerImpl(actionDao, versioningManager, actionArtifactDao,
+            versionInfoDao, uniqueValueDao);
+    }
+
+    @Test
+    public void testCreateAction() {
+      Action action = createAction();
+      Version version = createVersion();
+      doReturn(version).when(versioningManager).create(anyString(), anyString(), anyString());
+      doReturn(action).when(actionDao).createAction(any());
+      actionManager.createAction(action, "USER");
+      Mockito.verify(actionDao,times(1)).createAction(any());
     }
 
     @Test
diff --git a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/pom.xml b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/pom.xml
index 07e3226..9904b97 100644
--- a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/pom.xml
+++ b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/pom.xml
@@ -75,7 +75,11 @@
             <version>${project.version}</version>
             <scope>runtime</scope>
         </dependency>
-
+        <dependency>
+            <groupId>org.mockito</groupId>
+            <artifactId>mockito-core</artifactId>
+            <scope>test</scope>
+        </dependency>
     </dependencies>
 
 </project>
diff --git a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/ManufacturerReferenceNumberHealer.java b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/ManufacturerReferenceNumberHealer.java
index 4bb5bc8..0416cc9 100644
--- a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/ManufacturerReferenceNumberHealer.java
+++ b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/ManufacturerReferenceNumberHealer.java
@@ -33,10 +33,19 @@
 public class ManufacturerReferenceNumberHealer implements Healer {
 
   private static final String MANUFACTURER_REFERENCE_NUMBER = "MRN";
-  private VendorLicenseFacade vendorLicenseFacade = VendorLicenseFacadeFactory.getInstance()
-      .createInterface();
-  private static final FeatureGroupDao featureGroupDao =
-      FeatureGroupDaoFactory.getInstance().createInterface();
+  private final VendorLicenseFacade vendorLicenseFacade;
+  private final FeatureGroupDao featureGroupDao;
+
+  public ManufacturerReferenceNumberHealer() {
+    this(VendorLicenseFacadeFactory.getInstance().createInterface(), FeatureGroupDaoFactory
+        .getInstance().createInterface());
+  }
+
+  public ManufacturerReferenceNumberHealer(VendorLicenseFacade vendorLicenseFacade,
+                                           FeatureGroupDao featureGroupDao) {
+    this.vendorLicenseFacade = vendorLicenseFacade;
+    this.featureGroupDao = featureGroupDao;
+  }
 
   @Override
   public boolean isHealingNeeded(String itemId, Version version) {
diff --git a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/NetworkPackageHealer.java b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/NetworkPackageHealer.java
index 5ff90ae..e1807ba 100644
--- a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/NetworkPackageHealer.java
+++ b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/main/java/org/openecomp/sdc/healing/healers/NetworkPackageHealer.java
@@ -75,14 +75,22 @@
       "Vsp with invalid structure: does not contain element OrchestrationTemplateValidationData"
           + " under OrchestrationTemplate element";
 
-  private VendorSoftwareProductInfoDao vspInfoDao;
-  private ZusammenAdaptor zusammenAdaptor;
-  private CandidateService candidateService;
+  private final VendorSoftwareProductInfoDao vspInfoDao;
+  private final ZusammenAdaptor zusammenAdaptor;
+  private final CandidateService candidateService;
 
   public NetworkPackageHealer() {
-    this.vspInfoDao = VendorSoftwareProductInfoDaoFactory.getInstance().createInterface();
-    this.zusammenAdaptor = ZusammenAdaptorFactory.getInstance().createInterface();
-    this.candidateService = CandidateServiceFactory.getInstance().createInterface();
+    this(VendorSoftwareProductInfoDaoFactory.getInstance().createInterface(),
+        ZusammenAdaptorFactory.getInstance().createInterface(), CandidateServiceFactory
+            .getInstance().createInterface());
+  }
+
+  public NetworkPackageHealer(VendorSoftwareProductInfoDao vspInfoDao,
+                              ZusammenAdaptor zusammenAdaptor,
+                              CandidateService candidateService) {
+    this.vspInfoDao = vspInfoDao;
+    this.zusammenAdaptor = zusammenAdaptor;
+    this.candidateService = candidateService;
   }
 
   @Override
diff --git a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/test/java/org/openecomp/sdc/healing/healers/ManufacturerReferenceNumberHealerTest.java b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/test/java/org/openecomp/sdc/healing/healers/ManufacturerReferenceNumberHealerTest.java
new file mode 100644
index 0000000..2d432fc
--- /dev/null
+++ b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/test/java/org/openecomp/sdc/healing/healers/ManufacturerReferenceNumberHealerTest.java
@@ -0,0 +1,126 @@
+/*
+ * Copyright © 2016-2018 European Support Limited
+ *
+ * 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.
+ */
+
+package org.openecomp.sdc.healing.healers;
+
+import static java.lang.Boolean.FALSE;
+import static java.lang.Boolean.TRUE;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.Mockito.doNothing;
+import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.openecomp.sdc.vendorlicense.dao.FeatureGroupDao;
+import org.openecomp.sdc.vendorlicense.dao.types.EntitlementPoolEntity;
+import org.openecomp.sdc.vendorlicense.dao.types.FeatureGroupEntity;
+import org.openecomp.sdc.vendorlicense.dao.types.LicenseKeyGroupEntity;
+import org.openecomp.sdc.vendorlicense.facade.VendorLicenseFacade;
+import org.openecomp.sdc.versioning.dao.types.Version;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.Set;
+
+public class ManufacturerReferenceNumberHealerTest {
+
+  @Mock
+  private VendorLicenseFacade vendorLicenseFacade;
+  @Mock
+  private FeatureGroupDao featureGroupDao;
+  private ManufacturerReferenceNumberHealer manufacturerReferenceNumberHealer;
+
+  private final String ITEM_ID = "ITEM_ID";
+  private final Version version = new Version();
+
+  @Before
+  public void init(){
+    MockitoAnnotations.initMocks(this);
+    manufacturerReferenceNumberHealer = new ManufacturerReferenceNumberHealer
+        (vendorLicenseFacade, featureGroupDao);
+  }
+
+  @Test
+  public void testIsHealingNeeded_Positive() {
+    Collection<EntitlementPoolEntity> entitlementPoolEntities = new ArrayList<>();
+    entitlementPoolEntities.add(new EntitlementPoolEntity(ITEM_ID, version, ""));
+
+    when(vendorLicenseFacade.listEntitlementPools(ITEM_ID, version )).thenReturn(entitlementPoolEntities);
+    Assert.assertEquals(TRUE, manufacturerReferenceNumberHealer.isHealingNeeded("ITEM_ID", version));
+  }
+
+  @Test
+  public void testIsHealingNeeded_Negative() {
+    Collection<EntitlementPoolEntity> entitlementPoolEntities = new ArrayList<>();
+    EntitlementPoolEntity entitlementPoolEntity = new EntitlementPoolEntity(ITEM_ID, version, "");
+    entitlementPoolEntity.setManufacturerReferenceNumber("MRN");
+    entitlementPoolEntities.add(entitlementPoolEntity);
+
+    when(vendorLicenseFacade.listEntitlementPools(ITEM_ID, version )).thenReturn(entitlementPoolEntities);
+    Assert.assertEquals(FALSE, manufacturerReferenceNumberHealer.isHealingNeeded("ITEM_ID", version));
+  }
+
+  @Test
+  public void testHeal() throws Exception {
+
+    Collection<EntitlementPoolEntity> entitlementPoolEntities = getEntitlementPoolEntities();
+    when(vendorLicenseFacade.listEntitlementPools(ITEM_ID, version)).thenReturn(entitlementPoolEntities);
+    doNothing().when(vendorLicenseFacade).updateEntitlementPool(any());
+    Collection<LicenseKeyGroupEntity> licenseKeyGroupEntities = getLicenseKeyGroupEntities();
+    when(vendorLicenseFacade.listLicenseKeyGroups(ITEM_ID, version)).thenReturn
+        (licenseKeyGroupEntities);
+    doNothing().when(vendorLicenseFacade).updateLicenseKeyGroup(any());
+
+    FeatureGroupEntity featureGroupEntity = new FeatureGroupEntity();
+    when(vendorLicenseFacade.getFeatureGroup(any())).thenReturn(featureGroupEntity);
+
+    Collection<FeatureGroupEntity> featureGroupEntities = new ArrayList<>();
+    featureGroupEntities.add(featureGroupEntity);
+    when(vendorLicenseFacade.listFeatureGroups(ITEM_ID, version)).thenReturn
+        (featureGroupEntities);
+    doNothing().when(featureGroupDao).update(any());
+
+    manufacturerReferenceNumberHealer.heal(ITEM_ID, version);
+
+    verify(vendorLicenseFacade, times(1)).updateEntitlementPool(any());
+    verify(vendorLicenseFacade,times(1)).updateLicenseKeyGroup(any());
+  }
+
+  private Collection<EntitlementPoolEntity> getEntitlementPoolEntities() {
+    Set<String> oneReferencingFeatureGroups = new HashSet<String>(Arrays.asList("1"));
+    Collection<EntitlementPoolEntity> entitlementPoolEntities = new ArrayList<>();
+    EntitlementPoolEntity entitlementPoolEntity = new EntitlementPoolEntity();
+    entitlementPoolEntity.setReferencingFeatureGroups(oneReferencingFeatureGroups);
+    entitlementPoolEntities.add(entitlementPoolEntity);
+    return entitlementPoolEntities;
+  }
+
+  private Collection<LicenseKeyGroupEntity> getLicenseKeyGroupEntities() {
+    Set<String> oneReferencingFeatureGroups = new HashSet<String>(Arrays.asList("1"));
+    Collection<LicenseKeyGroupEntity> licenseKeyGroupEntities = new ArrayList<>();
+    LicenseKeyGroupEntity licenseKeyGroupEntity = new LicenseKeyGroupEntity();
+    licenseKeyGroupEntity.setReferencingFeatureGroups(oneReferencingFeatureGroups);
+    licenseKeyGroupEntities.add(licenseKeyGroupEntity);
+    return  licenseKeyGroupEntities;
+  }
+}
\ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/test/java/org/openecomp/sdc/healing/healers/NetworkPackageHealerTest.java b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/test/java/org/openecomp/sdc/healing/healers/NetworkPackageHealerTest.java
new file mode 100644
index 0000000..d94d10c
--- /dev/null
+++ b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/test/java/org/openecomp/sdc/healing/healers/NetworkPackageHealerTest.java
@@ -0,0 +1,116 @@
+/*
+ * Copyright © 2016-2018 European Support Limited
+ *
+ * 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.
+ */
+
+package org.openecomp.sdc.healing.healers;
+
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ElementInfo;
+import com.amdocs.zusammen.datatypes.item.Info;
+import org.junit.After;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.Mock;
+
+import static java.lang.Boolean.FALSE;
+import static java.lang.Boolean.TRUE;
+import static org.mockito.Mockito.any;
+
+import org.mockito.Mockito;
+import org.mockito.MockitoAnnotations;
+import org.openecomp.core.zusammen.api.ZusammenAdaptor;
+import org.openecomp.sdc.common.session.SessionContextProviderFactory;
+import org.openecomp.sdc.datatypes.model.ElementType;
+import org.openecomp.sdc.healing.healers.NetworkPackageHealer;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductInfoDao;
+import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspDetails;
+import org.openecomp.sdc.vendorsoftwareproduct.services.filedatastructuremodule.CandidateService;
+import org.openecomp.sdc.versioning.dao.types.Version;
+import java.util.ArrayList;
+import java.util.Collection;
+
+public class NetworkPackageHealerTest {
+
+  @Mock
+  private VendorSoftwareProductInfoDao vspInfoDaoMock;
+  @Mock
+  private ZusammenAdaptor zusammenAdaptorMock;
+  @Mock
+  private CandidateService candidateService;
+
+  private NetworkPackageHealer networkPackageHealer;
+  private static final String tenant = "dox";
+
+  @Before
+  public void init() {
+    SessionContextProviderFactory.getInstance().createInterface().create("test", tenant);
+    MockitoAnnotations.initMocks(this);
+    networkPackageHealer = new NetworkPackageHealer(vspInfoDaoMock, zusammenAdaptorMock, candidateService);
+  }
+
+  @After
+  public void tearDown(){
+    SessionContextProviderFactory.getInstance().createInterface().close();
+  }
+
+  @Test
+  public void testIsHealingNeeded_Positive() {
+    VspDetails vspDetails = new VspDetails("ITEM_ID",new Version());
+    vspDetails.setOnboardingMethod("NetworkPackage");
+    Mockito.when(vspInfoDaoMock.get(any())).thenReturn(vspDetails);
+    Collection<ElementInfo> elementInfos = new ArrayList<>();
+    ElementInfo elementInfo = new ElementInfo();
+    Info info = new Info();
+    info.setName(ElementType.OrchestrationTemplateCandidate.name());
+    elementInfo.setInfo(info);
+    elementInfos.add(elementInfo);
+    Mockito.when(zusammenAdaptorMock.listElementsByName(any(),any(),any(),any())).thenReturn
+        (elementInfos);
+    Assert.assertEquals(TRUE,networkPackageHealer.isHealingNeeded("ITEM_ID", new Version()));
+}
+
+  @Test
+  public  void testIsHealingNeeded_Negative() {
+    VspDetails vspDetails = new VspDetails("ITEM_ID",new Version());
+    vspDetails.setOnboardingMethod("NetworkPackage");
+    Mockito.when(vspInfoDaoMock.get(any())).thenReturn(vspDetails);
+    Collection<ElementInfo> elementInfos = new ArrayList<>();
+
+    ElementInfo elementInfo = new ElementInfo();
+    Info info = new Info();
+    info.setName(ElementType.OrchestrationTemplateCandidate.name());
+    elementInfo.setInfo(info);
+    elementInfos.add(elementInfo);
+
+    ElementInfo elementInfo1 = new ElementInfo();
+    Info info1 = new Info();
+    info1.setName(ElementType.OrchestrationTemplateCandidateValidationData.name());
+    elementInfo1.setInfo(info1);
+    elementInfos.add(elementInfo1);
+
+    Mockito.when(zusammenAdaptorMock.listElementsByName(any(),any(),any(),any())).thenReturn
+        (elementInfos);
+    Assert.assertEquals(FALSE,networkPackageHealer.isHealingNeeded("ITEM_ID", new Version()));
+  }
+
+  @Test
+  public void testIsHealingNeeded_OnboardingMethod() {
+    VspDetails vspDetails = new VspDetails("ITEM_ID",new Version());
+    vspDetails.setOnboardingMethod("Manual");
+    Mockito.when(vspInfoDaoMock.get(any())).thenReturn(vspDetails);
+
+    Assert.assertEquals(FALSE,networkPackageHealer.isHealingNeeded("ITEM_ID", new Version()));
+  }
+}
diff --git a/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/test/resources/logback-test.xml b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/test/resources/logback-test.xml
new file mode 100644
index 0000000..04378bf
--- /dev/null
+++ b/openecomp-be/lib/openecomp-healing-lib/openecomp-sdc-healing-impl/src/test/resources/logback-test.xml
@@ -0,0 +1,13 @@
+<configuration>
+
+    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+        <encoder>
+            <pattern>%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n</pattern>
+        </encoder>
+    </appender>
+
+    <root level="off">
+        <appender-ref ref="STDOUT" />
+    </root>
+
+</configuration>
\ No newline at end of file