Policies import when import VSP
[sdc.git] / catalog-model / src / test / java / org / openecomp / sdc / be / model / cache / ApplicationDataTypeCacheTest.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * SDC
4  * ================================================================================
5  * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
6  * ================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ============LICENSE_END=========================================================
19  */
20
21 package org.openecomp.sdc.be.model.cache;
22
23 import fj.data.Either;
24 import mockit.Deencapsulation;
25 import org.apache.commons.lang3.tuple.ImmutablePair;
26 import org.junit.Before;
27 import org.junit.Test;
28 import org.mockito.InjectMocks;
29 import org.mockito.Mock;
30 import org.mockito.Mockito;
31 import org.mockito.MockitoAnnotations;
32 import org.openecomp.sdc.be.dao.janusgraph.JanusGraphOperationStatus;
33 import org.openecomp.sdc.be.model.DataTypeDefinition;
34 import org.openecomp.sdc.be.model.operations.impl.PropertyOperation;
35 import org.openecomp.sdc.be.resources.data.DataTypeData;
36 import org.openecomp.sdc.be.unittests.utils.ModelConfDependentTest;
37
38 import java.util.HashMap;
39 import java.util.LinkedList;
40 import java.util.List;
41 import java.util.Map;
42 import org.springframework.context.ApplicationEventPublisher;
43
44 public class ApplicationDataTypeCacheTest extends ModelConfDependentTest{
45
46         @InjectMocks
47         private ApplicationDataTypeCache testSubject;
48         
49         @Mock
50         PropertyOperation propertyOperation;
51
52         @Mock
53         ApplicationEventPublisher applicationEventPublisher;
54
55         @Before
56         public void setUpMocks() throws Exception {
57                 MockitoAnnotations.initMocks(this);
58         }
59
60
61         @Test
62         public void testInit() throws Exception {
63                 testSubject.init();
64         }
65
66         @Test
67         public void testDestroy() throws Exception {
68                 testSubject.init();
69                 Deencapsulation.invoke(testSubject, "destroy");
70         }
71
72         @Test
73         public void testShutdownExecutor() throws Exception {
74
75                 // default test
76                 Deencapsulation.invoke(testSubject, "shutdownExecutor");
77         }
78
79         @Test
80         public void testGetAllDataTypesFromGraph() throws Exception {
81                 Either<Map<String, DataTypeDefinition>, JanusGraphOperationStatus> result;
82
83                 // default test
84                 result = Deencapsulation.invoke(testSubject, "getAllDataTypesFromGraph");
85         }
86
87         @Test
88         public void testGetAll() throws Exception {
89                 Either<Map<String, DataTypeDefinition>, JanusGraphOperationStatus> result;
90
91                 // default test
92                 result = testSubject.getAll();
93         }
94
95         @Test
96         public void testGet() throws Exception {
97                 String uniqueId = "";
98                 Either<DataTypeDefinition, JanusGraphOperationStatus> result;
99
100                 // default test
101                 result = testSubject.get(uniqueId);
102         }
103
104         @Test
105         public void testGet2() throws Exception {
106                 String uniqueId = "";
107                 Either<DataTypeDefinition, JanusGraphOperationStatus> result;
108
109                 HashMap<String, DataTypeDefinition> a = new HashMap<>();
110                 DataTypeDefinition value1 = new DataTypeDefinition();
111                 value1.setUniqueId("mock");
112                 a.put("mock", value1);
113                 Either<Map<String, DataTypeDefinition>, JanusGraphOperationStatus> value = Either.left(a);
114                 Mockito.when(propertyOperation.getAllDataTypes()).thenReturn(value);
115                 // default test
116                 Deencapsulation.invoke(testSubject, "replaceAllData");
117                 result = testSubject.get(uniqueId);
118         }
119         
120         @Test
121         public void testRun() throws Exception {
122                 testSubject.run();
123         }
124
125         @Test
126         public void testRun2() throws Exception {
127                 Either<List<DataTypeData>, JanusGraphOperationStatus> value = Either.right(
128         JanusGraphOperationStatus.GENERAL_ERROR);
129                 Mockito.when(propertyOperation.getAllDataTypeNodes()).thenReturn(value);
130                 testSubject.run();
131         }
132         
133         @Test
134         public void testRun3() throws Exception {
135                 LinkedList<DataTypeData> a = new LinkedList<>();
136                 a.add(new DataTypeData());
137                 Either<List<DataTypeData>, JanusGraphOperationStatus> value = Either.left(a);
138                 Mockito.when(propertyOperation.getAllDataTypeNodes()).thenReturn(value);
139                 
140                 HashMap<String, DataTypeDefinition> a1 = new HashMap<>();
141                 DataTypeDefinition value1 = new DataTypeDefinition();
142                 value1.setUniqueId("mock");
143                 a1.put("mock", value1);
144                 Either<Map<String, DataTypeDefinition>, JanusGraphOperationStatus> value2 = Either.left(a1);
145                 Mockito.when(propertyOperation.getAllDataTypes()).thenReturn(value2);
146                 
147                 Deencapsulation.invoke(testSubject, "replaceAllData");
148                 testSubject.run();
149         }
150         
151         @Test
152         public void testCompareDataTypes() throws Exception {
153                 Map<String, ImmutablePair<Long, Long>> dataTypeNameToModificationTime = new HashMap<>();
154                 Map<String, ImmutablePair<Long, Long>> currentDataTypeToModificationTime = new HashMap<>();
155                 boolean result;
156
157                 // default test
158                 result = Deencapsulation.invoke(testSubject, "compareDataTypes", dataTypeNameToModificationTime, currentDataTypeToModificationTime);
159         }
160
161         @Test
162         public void testCompareDataTypes2() throws Exception {
163                 Map<String, ImmutablePair<Long, Long>> dataTypeNameToModificationTime = new HashMap<>();
164                 Map<String, ImmutablePair<Long, Long>> currentDataTypeToModificationTime = new HashMap<>();
165                 boolean result;
166                 
167                 currentDataTypeToModificationTime.put("mock", ImmutablePair.of(1L, 2L));
168                 dataTypeNameToModificationTime.put("mock", ImmutablePair.of(5L, 6L));
169                 
170                 // default test
171                 result = Deencapsulation.invoke(testSubject, "compareDataTypes", dataTypeNameToModificationTime, currentDataTypeToModificationTime);
172         }
173         
174         @Test
175         public void testReplaceAllData() throws Exception {
176                 HashMap<String, DataTypeDefinition> a = new HashMap<>();
177                 DataTypeDefinition value1 = new DataTypeDefinition();
178                 value1.setUniqueId("mock");
179                 a.put("mock", value1);
180                 Either<Map<String, DataTypeDefinition>, JanusGraphOperationStatus> value = Either.left(a);
181                 Mockito.when(propertyOperation.getAllDataTypes()).thenReturn(value);
182                 // default test
183                 Deencapsulation.invoke(testSubject, "replaceAllData");
184         }
185         
186         @Test
187         public void testReplaceAllData2() throws Exception {
188                 Either<Map<String, DataTypeDefinition>, JanusGraphOperationStatus> value = Either.right(
189         JanusGraphOperationStatus.GENERAL_ERROR);
190                 Mockito.when(propertyOperation.getAllDataTypes()).thenReturn(value);
191                 // default test
192                 Deencapsulation.invoke(testSubject, "replaceAllData");
193         }
194 }