2 * ============LICENSE_START=======================================================
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
11 * http://www.apache.org/licenses/LICENSE-2.0
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=========================================================
21 package org.openecomp.sdc.be.dao.cassandra;
23 import com.datastax.driver.core.Session;
24 import com.datastax.driver.mapping.MappingManager;
25 import com.datastax.driver.mapping.Result;
26 import fj.data.Either;
27 import org.apache.commons.lang3.tuple.ImmutablePair;
28 import org.junit.Before;
29 import org.junit.Test;
30 import org.mockito.InjectMocks;
31 import org.mockito.Mock;
32 import org.mockito.Mockito;
33 import org.mockito.MockitoAnnotations;
34 import org.openecomp.sdc.be.dao.api.ActionStatus;
35 import org.openecomp.sdc.be.resources.data.auditing.*;
37 import java.util.LinkedList;
38 import java.util.List;
40 public class AuditCassandraDaoTest {
43 AuditCassandraDao testSubject;
46 AuditAccessor auditAccessor;
49 CassandraClient client;
52 public void setUp() throws Exception {
53 MockitoAnnotations.initMocks(this);
56 @Test(expected = RuntimeException.class)
57 public void testInit() throws Exception {
58 Mockito.when(client.isConnected()).thenReturn(true);
59 Either<ImmutablePair<Session, MappingManager>, CassandraOperationStatus> value = Either
60 .right(CassandraOperationStatus.CLUSTER_NOT_CONNECTED);
61 Mockito.when(client.connect(Mockito.anyString())).thenReturn(value);
66 public void testInitFail2() throws Exception {
67 Mockito.when(client.isConnected()).thenReturn(false);
72 public void testGetListOfDistributionStatuses() throws Exception {
74 Either<List<DistributionStatusEvent>, ActionStatus> result;
76 Result<DistributionStatusEvent> value = Mockito.mock(Result.class);
77 LinkedList<DistributionStatusEvent> value2 = new LinkedList<>();
78 value2.add(new DistributionStatusEvent());
79 Mockito.when(value.all()).thenReturn(value2);
80 Mockito.when(auditAccessor.getListOfDistributionStatuses(Mockito.anyString())).thenReturn(value);
83 result = testSubject.getListOfDistributionStatuses(did);
87 public void testGetListOfDistributionStatusesException() throws Exception {
89 Either<List<DistributionStatusEvent>, ActionStatus> result;
91 Mockito.when(auditAccessor.getListOfDistributionStatuses(Mockito.anyString()))
92 .thenThrow(RuntimeException.class);
95 result = testSubject.getListOfDistributionStatuses(did);
99 public void testGetListOfDistributionStatusesEmptyList() throws Exception {
101 Either<List<DistributionStatusEvent>, ActionStatus> result;
104 result = testSubject.getListOfDistributionStatuses(did);
108 public void testGetDistributionDeployByStatus() throws Exception {
112 Either<List<DistributionDeployEvent>, ActionStatus> result;
114 Result<DistributionDeployEvent> value = Mockito.mock(Result.class);
115 LinkedList<DistributionDeployEvent> value2 = new LinkedList<>();
116 value2.add(new DistributionDeployEvent());
117 Mockito.when(value.all()).thenReturn(value2);
118 Mockito.when(auditAccessor.getDistributionDeployByStatus(Mockito.anyString(), Mockito.anyString(),
119 Mockito.anyString())).thenReturn(value);
122 result = testSubject.getDistributionDeployByStatus(did, action, status);
126 public void testGetDistributionDeployByStatusEmptyList() throws Exception {
130 Either<List<DistributionDeployEvent>, ActionStatus> result;
132 Result<DistributionDeployEvent> value = Mockito.mock(Result.class);
133 LinkedList<DistributionDeployEvent> value2 = new LinkedList<>();
134 value2.add(new DistributionDeployEvent());
135 Mockito.when(value.all()).thenReturn(value2);
136 Mockito.when(auditAccessor.getDistributionDeployByStatus(Mockito.anyString(), Mockito.anyString(),
137 Mockito.anyString())).thenReturn(null);
140 result = testSubject.getDistributionDeployByStatus(did, action, status);
144 public void testGetDistributionDeployByStatusException() throws Exception {
148 Either<List<DistributionDeployEvent>, ActionStatus> result;
150 Mockito.when(auditAccessor.getDistributionDeployByStatus(Mockito.anyString(), Mockito.anyString(),
151 Mockito.anyString())).thenThrow(RuntimeException.class);
154 result = testSubject.getDistributionDeployByStatus(did, action, status);
158 public void testGetDistributionRequest() throws Exception {
161 Either<List<ResourceAdminEvent>, ActionStatus> result;
164 result = testSubject.getDistributionRequest(did, action);
168 public void testGetDistributionRequestList() throws Exception {
171 Either<List<ResourceAdminEvent>, ActionStatus> result;
173 Result<ResourceAdminEvent> value = Mockito.mock(Result.class);
174 List<ResourceAdminEvent> value2 = new LinkedList<>();
175 value2.add(new ResourceAdminEvent());
176 Mockito.when(value.all()).thenReturn(value2);
177 Mockito.when(auditAccessor.getDistributionRequest(Mockito.anyString(), Mockito.anyString())).thenReturn(value);
180 result = testSubject.getDistributionRequest(did, action);
184 public void testGetDistributionRequestException() throws Exception {
187 Either<List<ResourceAdminEvent>, ActionStatus> result;
189 Mockito.when(auditAccessor.getDistributionRequest(Mockito.anyString(), Mockito.anyString()))
190 .thenThrow(RuntimeException.class);
193 result = testSubject.getDistributionRequest(did, action);
197 public void testGetDistributionNotify() throws Exception {
200 Either<List<DistributionNotificationEvent>, ActionStatus> result;
202 Result<DistributionNotificationEvent> value = Mockito.mock(Result.class);
203 List<DistributionNotificationEvent> value2 = new LinkedList<>();
204 value2.add(new DistributionNotificationEvent());
205 Mockito.when(value.all()).thenReturn(value2);
207 Mockito.when(auditAccessor.getDistributionNotify(Mockito.anyString(), Mockito.anyString())).thenReturn(value);
210 result = testSubject.getDistributionNotify(did, action);
214 public void testGetDistributionNotifyException() throws Exception {
217 Either<List<DistributionNotificationEvent>, ActionStatus> result;
219 Mockito.when(auditAccessor.getDistributionNotify(Mockito.anyString(), Mockito.anyString()))
220 .thenThrow(RuntimeException.class);
223 result = testSubject.getDistributionNotify(did, action);
227 public void testGetDistributionNotifyNull() throws Exception {
230 Either<List<DistributionNotificationEvent>, ActionStatus> result;
233 result = testSubject.getDistributionNotify(did, action);
237 public void testGetByServiceInstanceId() throws Exception {
238 String serviceInstanceId = "";
239 Either<List<ResourceAdminEvent>, ActionStatus> result;
241 Result<ResourceAdminEvent> value = Mockito.mock(Result.class);
242 List<ResourceAdminEvent> value2 = new LinkedList<>();
243 value2.add(new ResourceAdminEvent());
244 Mockito.when(value.all()).thenReturn(value2);
245 Mockito.when(auditAccessor.getByServiceInstanceId(Mockito.anyString())).thenReturn(value);
247 result = testSubject.getByServiceInstanceId(serviceInstanceId);
251 public void testGetByServiceInstanceIdException() throws Exception {
252 String serviceInstanceId = "";
253 Either<List<ResourceAdminEvent>, ActionStatus> result;
255 Mockito.when(auditAccessor.getByServiceInstanceId(Mockito.anyString())).thenThrow(RuntimeException.class);
257 result = testSubject.getByServiceInstanceId(serviceInstanceId);
261 public void testGetByServiceInstanceIdNull() throws Exception {
262 String serviceInstanceId = "";
263 Either<List<ResourceAdminEvent>, ActionStatus> result;
266 result = testSubject.getByServiceInstanceId(serviceInstanceId);
270 public void testGetServiceDistributionStatusesList() throws Exception {
271 String serviceInstanceId = "";
272 Either<List<? extends AuditingGenericEvent>, ActionStatus> result;
274 Result<ResourceAdminEvent> value = Mockito.mock(Result.class);
275 List<ResourceAdminEvent> value2 = new LinkedList<>();
276 value2.add(new ResourceAdminEvent());
277 Mockito.when(value.all()).thenReturn(value2);
278 Mockito.when(auditAccessor.getServiceDistributionStatus(Mockito.anyString())).thenReturn(value);
281 result = testSubject.getServiceDistributionStatusesList(serviceInstanceId);
285 public void testGetServiceDistributionStatusesList2() throws Exception {
286 String serviceInstanceId = "";
287 Either<List<? extends AuditingGenericEvent>, ActionStatus> result;
289 Result<ResourceAdminEvent> value = Mockito.mock(Result.class);
290 List<ResourceAdminEvent> value2 = new LinkedList<>();
291 value2.add(new ResourceAdminEvent());
292 Mockito.when(value.all()).thenReturn(value2);
293 Mockito.when(auditAccessor.getServiceDistributionStatus(Mockito.anyString())).thenReturn(value);
295 Result<DistributionDeployEvent> value3 = Mockito.mock(Result.class);
296 List<DistributionDeployEvent> value4 = new LinkedList<>();
297 value4.add(new DistributionDeployEvent());
298 Mockito.when(value3.all()).thenReturn(value4);
299 Mockito.when(auditAccessor.getServiceDistributionDeploy(Mockito.anyString())).thenReturn(value3);
302 result = testSubject.getServiceDistributionStatusesList(serviceInstanceId);
306 public void testGetServiceDistributionStatusesList3() throws Exception {
307 String serviceInstanceId = "";
308 Either<List<? extends AuditingGenericEvent>, ActionStatus> result;
310 Result<ResourceAdminEvent> value = Mockito.mock(Result.class);
311 List<ResourceAdminEvent> value2 = new LinkedList<>();
312 value2.add(new ResourceAdminEvent());
313 Mockito.when(value.all()).thenReturn(value2);
314 Mockito.when(auditAccessor.getServiceDistributionStatus(Mockito.anyString())).thenReturn(value);
316 Result<DistributionDeployEvent> value3 = Mockito.mock(Result.class);
317 List<DistributionDeployEvent> value4 = new LinkedList<>();
318 value4.add(new DistributionDeployEvent());
319 Mockito.when(value3.all()).thenReturn(value4);
320 Mockito.when(auditAccessor.getServiceDistributionDeploy(Mockito.anyString())).thenReturn(value3);
323 Result<DistributionNotificationEvent> value5 = Mockito.mock(Result.class);
324 List<DistributionNotificationEvent> value6 = new LinkedList<>();
325 value6.add(new DistributionNotificationEvent());
326 Mockito.when(value5.all()).thenReturn(value6);
327 Mockito.when(auditAccessor.getServiceDistributionNotify(Mockito.anyString())).thenReturn(value5);
330 result = testSubject.getServiceDistributionStatusesList(serviceInstanceId);
334 public void testGetServiceDistributionStatusesListException3() throws Exception {
335 String serviceInstanceId = "";
336 Either<List<? extends AuditingGenericEvent>, ActionStatus> result;
338 Result<ResourceAdminEvent> value = Mockito.mock(Result.class);
339 List<ResourceAdminEvent> value2 = new LinkedList<>();
340 value2.add(new ResourceAdminEvent());
341 Mockito.when(value.all()).thenReturn(value2);
342 Mockito.when(auditAccessor.getServiceDistributionStatus(Mockito.anyString())).thenReturn(value);
344 Result<DistributionDeployEvent> value3 = Mockito.mock(Result.class);
345 List<DistributionDeployEvent> value4 = new LinkedList<>();
346 value4.add(new DistributionDeployEvent());
347 Mockito.when(value3.all()).thenReturn(value4);
348 Mockito.when(auditAccessor.getServiceDistributionDeploy(Mockito.anyString())).thenReturn(value3);
350 Mockito.when(auditAccessor.getServiceDistributionNotify(Mockito.anyString())).thenThrow(RuntimeException.class);
353 result = testSubject.getServiceDistributionStatusesList(serviceInstanceId);
357 public void testGetServiceDistributionStatusesListException2() throws Exception {
358 String serviceInstanceId = "";
359 Either<List<? extends AuditingGenericEvent>, ActionStatus> result;
361 Result<ResourceAdminEvent> value = Mockito.mock(Result.class);
362 List<ResourceAdminEvent> value2 = new LinkedList<>();
363 value2.add(new ResourceAdminEvent());
364 Mockito.when(value.all()).thenReturn(value2);
365 Mockito.when(auditAccessor.getServiceDistributionStatus(Mockito.anyString())).thenReturn(value);
367 Mockito.when(auditAccessor.getServiceDistributionDeploy(Mockito.anyString())).thenThrow(RuntimeException.class);
370 result = testSubject.getServiceDistributionStatusesList(serviceInstanceId);
374 public void testGetServiceDistributionStatusesListException() throws Exception {
375 String serviceInstanceId = "";
376 Either<List<? extends AuditingGenericEvent>, ActionStatus> result;
378 Mockito.when(auditAccessor.getServiceDistributionStatus(Mockito.anyString())).thenThrow(RuntimeException.class);
381 result = testSubject.getServiceDistributionStatusesList(serviceInstanceId);
385 public void testGetServiceDistributionStatusesListNull() throws Exception {
386 String serviceInstanceId = "";
387 Either<List<? extends AuditingGenericEvent>, ActionStatus> result;
390 result = testSubject.getServiceDistributionStatusesList(serviceInstanceId);
394 public void testGetAuditByServiceIdAndPrevVersionNull() throws Exception {
395 String serviceInstanceId = "";
396 String prevVersion = "";
397 Either<List<ResourceAdminEvent>, ActionStatus> result;
400 result = testSubject.getAuditByServiceIdAndPrevVersion(serviceInstanceId, prevVersion);
404 public void testGetAuditByServiceIdAndPrevVersion() throws Exception {
405 String serviceInstanceId = "";
406 String prevVersion = "";
407 Either<List<ResourceAdminEvent>, ActionStatus> result;
409 Result<ResourceAdminEvent> value = Mockito.mock(Result.class);
410 List<ResourceAdminEvent> value2 = new LinkedList<>();
411 value2.add(new ResourceAdminEvent());
412 Mockito.when(value.all()).thenReturn(value2);
413 Mockito.when(auditAccessor.getAuditByServiceIdAndPrevVersion(Mockito.anyString(), Mockito.anyString())).thenReturn(value);
416 result = testSubject.getAuditByServiceIdAndPrevVersion(serviceInstanceId, prevVersion);
420 public void testGetAuditByServiceIdAndPrevVersionException() throws Exception {
421 String serviceInstanceId = "";
422 String prevVersion = "";
423 Either<List<ResourceAdminEvent>, ActionStatus> result;
425 Mockito.when(auditAccessor.getAuditByServiceIdAndPrevVersion(Mockito.anyString(), Mockito.anyString())).thenThrow(RuntimeException.class);
428 result = testSubject.getAuditByServiceIdAndPrevVersion(serviceInstanceId, prevVersion);
432 public void testGetAuditByServiceIdAndCurrVersionNull() throws Exception {
433 String serviceInstanceId = "";
434 String currVersion = "";
435 Either<List<ResourceAdminEvent>, ActionStatus> result;
438 result = testSubject.getAuditByServiceIdAndCurrVersion(serviceInstanceId, currVersion);
442 public void testGetAuditByServiceIdAndCurrVersion() throws Exception {
443 String serviceInstanceId = "";
444 String currVersion = "";
445 Either<List<ResourceAdminEvent>, ActionStatus> result;
447 Result<ResourceAdminEvent> value = Mockito.mock(Result.class);
448 List<ResourceAdminEvent> value2 = new LinkedList<>();
449 value2.add(new ResourceAdminEvent());
450 Mockito.when(value.all()).thenReturn(value2);
451 Mockito.when(auditAccessor.getAuditByServiceIdAndCurrVersion(Mockito.anyString(), Mockito.anyString())).thenReturn(value);
454 result = testSubject.getAuditByServiceIdAndCurrVersion(serviceInstanceId, currVersion);
458 public void testGetAuditByServiceIdAndCurrVersionException() throws Exception {
459 String serviceInstanceId = "";
460 String currVersion = "";
461 Either<List<ResourceAdminEvent>, ActionStatus> result;
463 Mockito.when(auditAccessor.getAuditByServiceIdAndCurrVersion(Mockito.anyString(), Mockito.anyString())).thenThrow(RuntimeException.class);
466 result = testSubject.getAuditByServiceIdAndCurrVersion(serviceInstanceId, currVersion);
470 public void testIsTableEmpty() throws Exception {
471 String tableName = "";
472 Either<Boolean, CassandraOperationStatus> result;
475 result = testSubject.isTableEmpty(tableName);
479 public void testDeleteAllAudit() throws Exception {
480 CassandraOperationStatus result;
483 result = testSubject.deleteAllAudit();