re base code
[sdc.git] / catalog-be / src / test / java / org / openecomp / sdc / be / components / merge / instance / ComponentInstanceCapabilitiesPropertiesMergeTest.java
1 package org.openecomp.sdc.be.components.merge.instance;
2
3 import fj.data.Either;
4 import org.junit.Before;
5 import org.junit.Test;
6 import org.junit.runner.RunWith;
7 import org.mockito.InjectMocks;
8 import org.mockito.Mock;
9 import org.mockito.junit.MockitoJUnitRunner;
10 import org.openecomp.sdc.be.dao.api.ActionStatus;
11 import org.openecomp.sdc.be.impl.ComponentsUtils;
12 import org.openecomp.sdc.be.model.*;
13 import org.openecomp.sdc.exception.ResponseFormat;
14
15 import java.util.Collections;
16 import java.util.List;
17
18 import static org.junit.Assert.assertTrue;
19 import static org.mockito.Mockito.when;
20
21 @RunWith(MockitoJUnitRunner.class)
22 public class ComponentInstanceCapabilitiesPropertiesMergeTest {
23
24     @InjectMocks
25     private ComponentInstanceCapabilitiesPropertiesMerge testInstance;
26
27     @Mock
28     private ComponentCapabilitiesPropertiesMergeBL capabilitiesPropertiesMergeBL;
29
30     @Mock
31     private ComponentsUtils componentsUtils;
32
33     private DataForMergeHolder mergeHolder;
34
35     private Resource origInstanceNode;
36     private List<CapabilityDefinition> origInstanceCapabilities;
37
38     @Before
39     public void setUp() throws Exception {
40         origInstanceNode = new Resource();
41         origInstanceCapabilities = Collections.emptyList();
42         mergeHolder = new DataForMergeHolder();
43         mergeHolder.setOrigInstanceNode(origInstanceNode);
44         mergeHolder.setOrigInstanceCapabilities(origInstanceCapabilities);
45     }
46
47     @Test
48     public void mergeDataAfterCreate() {
49         Service currentComponent = new Service();
50         when(capabilitiesPropertiesMergeBL.mergeComponentInstanceCapabilities(currentComponent, origInstanceNode, "instId", origInstanceCapabilities))
51             .thenReturn(ActionStatus.OK);
52         Either<Component, ResponseFormat> mergeResult = testInstance.mergeDataAfterCreate(new User(), mergeHolder, currentComponent, "instId");
53         assertTrue(mergeResult.isLeft());
54     }
55
56     @Test
57     public void mergeDataAfterCreate_error() {
58         Service currentComponent = new Service();
59         when(capabilitiesPropertiesMergeBL.mergeComponentInstanceCapabilities(currentComponent, origInstanceNode, "instId", origInstanceCapabilities))
60                 .thenReturn(ActionStatus.GENERAL_ERROR);
61         when(componentsUtils.getResponseFormat(ActionStatus.GENERAL_ERROR)).thenReturn(new ResponseFormat());
62         Either<Component, ResponseFormat> mergeResult = testInstance.mergeDataAfterCreate(new User(), mergeHolder, currentComponent, "instId");
63         assertTrue(mergeResult.isRight());
64     }
65
66     @Test
67     public void testSaveDataBeforeMerge() {
68         DataForMergeHolder dataHolder = new DataForMergeHolder();
69                 Component containerComponent = new Resource();
70                 ComponentInstance currentResourceInstance = new ComponentInstance();
71                 Component originComponent = new Resource();
72                 testInstance.saveDataBeforeMerge(dataHolder, containerComponent, currentResourceInstance, originComponent);
73     }
74 }