1 package org.openecomp.sdc.healing.healers;
3 import org.junit.Before;
5 import org.mockito.InjectMocks;
6 import org.mockito.Mock;
7 import org.mockito.Mockito;
8 import org.mockito.MockitoAnnotations;
9 import org.openecomp.sdc.vendorsoftwareproduct.dao.OrchestrationTemplateCandidateDao;
10 import org.openecomp.sdc.vendorsoftwareproduct.dao.OrchestrationTemplateDao;
11 import org.openecomp.sdc.vendorsoftwareproduct.dao.VendorSoftwareProductInfoDao;
12 import org.openecomp.sdc.vendorsoftwareproduct.dao.type.OrchestrationTemplateCandidateData;
13 import org.openecomp.sdc.vendorsoftwareproduct.dao.type.OrchestrationTemplateEntity;
14 import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspDetails;
15 import org.openecomp.sdc.versioning.dao.types.Version;
17 import static org.junit.Assert.assertEquals;
18 import static org.mockito.Matchers.any;
20 public class VspOnboardingMethodHealerTest {
21 private static final String vspId = "1";
22 private static final Version version = new Version(1, 1);
25 private VendorSoftwareProductInfoDao vendorSoftwareProductInfoDao;
27 private OrchestrationTemplateDao orchestrationTemplateDao;
29 private OrchestrationTemplateCandidateDao candidateDao;
31 private VspOnboardingMethodHealer vspOnboardingMethodHealer;
33 private OrchestrationTemplateEntity orchestrationTemplateEntity = new OrchestrationTemplateEntity();
34 private OrchestrationTemplateCandidateData candidateData = new OrchestrationTemplateCandidateData();
35 private static final String NETWORK_PACKAGE = "NetworkPackage";
36 private static final String HEAT = "HEAT";
37 private static final String MANUAL = "Manual";
40 public void setUp() throws Exception {
41 MockitoAnnotations.initMocks(VspOnboardingMethodHealerTest.this);
45 public void checkHealingWithNullOnboarding() throws Exception {
46 VspDetails vspDetails = initAndExecuteHealer(null);
47 assertEquals(vspDetails.getOnboardingMethod(), NETWORK_PACKAGE);
51 public void checkHealingWithHEATOnboarding() throws Exception {
52 VspDetails vspDetails = initAndExecuteHealer(HEAT);
53 assertEquals(vspDetails.getOnboardingMethod(), NETWORK_PACKAGE);
57 public void checkHealingWithManualOnboarding() throws Exception {
58 VspDetails vspDetails = initAndExecuteHealer(MANUAL);
59 assertEquals(vspDetails.getOnboardingMethod(), MANUAL);
62 private VspDetails initAndExecuteHealer(String onboardingMethod) throws Exception {
63 VspDetails vspDetails = new VspDetails();
64 vspDetails.setOnboardingMethod(onboardingMethod);
66 setMockActions(vspDetails);
67 vspOnboardingMethodHealer.heal(vspId, version);
71 private void setMockActions(VspDetails vspDetails) {
72 Mockito.doReturn(vspDetails).when(vendorSoftwareProductInfoDao).get(any());
73 Mockito.doReturn(orchestrationTemplateEntity).when(orchestrationTemplateDao).get(any(), any());
74 Mockito.doNothing().when(orchestrationTemplateDao).update(any(), any(), any());
75 Mockito.doReturn(candidateData).when(candidateDao).get(any(), any());
76 Mockito.doNothing().when(candidateDao).update(any(), any(), any());