Upgrade testing frameworks to latest not-vulnerable versions
[sdc.git] / catalog-model / src / test / java / org / openecomp / sdc / be / model / operations / impl / ComponentInstanceOperationTest.java
1 /*
2
3  * Copyright (c) 2018 AT&T Intellectual Property.
4
5  *
6
7  * Licensed under the Apache License, Version 2.0 (the "License");
8
9  * you may not use this file except in compliance with the License.
10
11  * You may obtain a copy of the License at
12
13  *
14
15  *     http://www.apache.org/licenses/LICENSE-2.0
16
17  *
18
19  * Unless required by applicable law or agreed to in writing, software
20
21  * distributed under the License is distributed on an "AS IS" BASIS,
22
23  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
24
25  * See the License for the specific language governing permissions and
26
27  * limitations under the License.
28
29  */
30 package org.openecomp.sdc.be.model.operations.impl;
31
32 import static org.junit.Assert.assertEquals;
33 import static org.junit.Assert.assertNull;
34 import static org.mockito.ArgumentMatchers.any;
35 import static org.mockito.ArgumentMatchers.eq;
36 import static org.mockito.Mockito.when;
37
38 import fj.data.Either;
39 import java.util.ArrayList;
40 import java.util.List;
41 import org.janusgraph.core.JanusGraphVertex;
42 import org.junit.Test;
43 import org.junit.runner.RunWith;
44 import org.mockito.InjectMocks;
45 import org.mockito.Mock;
46 import org.mockito.Mockito;
47 import org.mockito.junit.MockitoJUnitRunner;
48 import org.openecomp.sdc.be.dao.janusgraph.HealingJanusGraphGenericDao;
49 import org.openecomp.sdc.be.dao.janusgraph.JanusGraphOperationStatus;
50 import org.openecomp.sdc.be.dao.neo4j.GraphPropertiesDictionary;
51 import org.openecomp.sdc.be.datatypes.enums.NodeTypeEnum;
52 import org.openecomp.sdc.be.model.ComponentInstance;
53 import org.openecomp.sdc.be.model.ComponentInstanceInput;
54 import org.openecomp.sdc.be.model.GroupInstance;
55 import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus;
56 import org.openecomp.sdc.be.resources.data.ComponentInstanceData;
57
58 @RunWith(MockitoJUnitRunner.class)
59 public class ComponentInstanceOperationTest {
60
61     @InjectMocks
62     private ComponentInstanceOperation componentInstanceOperation;
63
64     @Mock
65     protected HealingJanusGraphGenericDao janusGraphGenericDao;
66
67
68     @Test
69     public void testSetJanusGraphGenericDao() {
70         componentInstanceOperation.setJanusGraphGenericDao(janusGraphGenericDao);
71     }
72
73
74     @Test
75     public void testUpdateInputValueInResourceInstance() {
76         ComponentInstanceInput input = null;
77         String resourceInstanceId = "";
78         boolean b = false;
79         Either<ComponentInstanceInput, StorageOperationStatus> result;
80
81         result = componentInstanceOperation.updateInputValueInResourceInstance(input, resourceInstanceId, b);
82         assertNull(result);
83     }
84
85     @Test
86     public void testUpdateCustomizationUUID() {
87         StorageOperationStatus result;
88         String componentInstanceId = "instanceId";
89         JanusGraphVertex janusGraphVertex = Mockito.mock(JanusGraphVertex.class);
90         when(janusGraphGenericDao.getVertexByProperty(GraphPropertiesDictionary.UNIQUE_ID.getProperty(), componentInstanceId)).thenReturn(
91             Either.left(janusGraphVertex));
92         result = componentInstanceOperation.updateCustomizationUUID(componentInstanceId);
93         assertEquals(StorageOperationStatus.OK, result);
94     }
95
96     @Test
97     public void testupdateComponentInstanceModificationTimeAndCustomizationUuidOnGraph_CatchException() throws Exception {
98         ComponentInstance componentInstance = new ComponentInstance();
99         GroupInstance groupInstance = new GroupInstance();
100         groupInstance.setCreationTime(23234234234L);
101         groupInstance.setCustomizationUUID("CUSTUUID0.1");
102         groupInstance.setGroupUid("GRP0.1");
103         groupInstance.setGroupUUID("GRPU0.1");
104         groupInstance.setGroupName("GRP1");
105         List gilist = new ArrayList<GroupInstance>();
106         gilist.add(groupInstance);
107         componentInstance.setUniqueId("INST0.1");
108         componentInstance.setComponentUid("RES0.1");
109         componentInstance.setGroupInstances(gilist);
110         Either<ComponentInstanceData, StorageOperationStatus> result = componentInstanceOperation.updateComponentInstanceModificationTimeAndCustomizationUuidOnGraph(
111             componentInstance, NodeTypeEnum.Component, 234234545L, false);
112         assertEquals(StorageOperationStatus.GENERAL_ERROR, result.right().value());
113     }
114
115     @Test
116     public void testupdateComponentInstanceModificationTimeAndCustomizationUuidOnGraph_GENERAL_ERROR() throws Exception {
117         ComponentInstance componentInstance = new ComponentInstance();
118         GroupInstance groupInstance = new GroupInstance();
119         groupInstance.setCreationTime(23234234234L);
120         groupInstance.setCustomizationUUID("CUSTUUID0.1");
121         groupInstance.setGroupUid("GRP0.1");
122         groupInstance.setGroupUUID("GRPU0.1");
123         groupInstance.setGroupName("GRP1");
124         List gilist = new ArrayList<GroupInstance>();
125         gilist.add(groupInstance);
126         componentInstance.setUniqueId("INST0.1");
127         componentInstance.setComponentUid("RES0.1");
128         componentInstance.setGroupInstances(gilist);
129         when(janusGraphGenericDao.updateNode(any(), eq(ComponentInstanceData.class))).thenReturn(Either.right(
130             JanusGraphOperationStatus.GENERAL_ERROR));
131         Either<ComponentInstanceData, StorageOperationStatus> result = componentInstanceOperation.updateComponentInstanceModificationTimeAndCustomizationUuidOnGraph(
132             componentInstance, NodeTypeEnum.Component, 234234545L, false);
133         assertEquals(StorageOperationStatus.GENERAL_ERROR, result.right().value());
134     }
135
136     @Test
137     public void testupdateComponentInstanceModificationTimeAndCustomizationUuidOnGraph() throws Exception {
138         ComponentInstance componentInstance = new ComponentInstance();
139         GroupInstance groupInstance = new GroupInstance();
140         groupInstance.setCreationTime(23234234234L);
141         groupInstance.setCustomizationUUID("CUSTUUID0.1");
142         groupInstance.setGroupUid("GRP0.1");
143         groupInstance.setGroupUUID("GRPU0.1");
144         groupInstance.setGroupName("GRP1");
145         List gilist = new ArrayList<GroupInstance>();
146         gilist.add(groupInstance);
147         componentInstance.setUniqueId("INST0.1");
148         componentInstance.setComponentUid("RES0.1");
149         componentInstance.setGroupInstances(gilist);
150         ComponentInstanceData componentInstanceData = new ComponentInstanceData();
151         when(janusGraphGenericDao.updateNode(any(), eq(ComponentInstanceData.class))).thenReturn(Either.left(componentInstanceData));
152         Either<ComponentInstanceData, StorageOperationStatus> result = componentInstanceOperation.updateComponentInstanceModificationTimeAndCustomizationUuidOnGraph(
153             componentInstance, NodeTypeEnum.Component, 234234545L, false);
154         assertEquals(componentInstanceData, result.left().value());
155     }
156
157 }