fd36995f3d265cd50c63385bb7a43af0eb9b7599
[so.git] /
1 package org.onap.so.adapters.tasks.audit;
2
3 import static org.junit.Assert.assertEquals;
4 import static org.mockito.ArgumentMatchers.any;
5 import static org.mockito.Mockito.when;
6 import java.util.ArrayList;
7 import java.util.List;
8 import org.junit.Before;
9 import org.junit.Test;
10 import org.junit.runner.RunWith;
11 import org.mockito.InjectMocks;
12 import org.mockito.Mock;
13 import org.mockito.Mockito;
14 import org.mockito.junit.MockitoJUnitRunner;
15 import org.onap.aai.domain.yang.Vserver;
16 import org.onap.so.adapters.tasks.audit.AuditDataService;
17 import org.onap.so.audit.beans.AuditInventory;
18 import org.onap.aaiclient.client.graphinventory.GraphInventoryCommonObjectMapperProvider;
19 import org.onap.so.db.request.beans.RequestProcessingData;
20 import org.onap.so.db.request.client.RequestsDbClient;
21 import org.onap.so.objects.audit.AAIObjectAudit;
22 import org.onap.so.objects.audit.AAIObjectAuditList;
23 import com.fasterxml.jackson.core.JsonProcessingException;
24
25 @RunWith(MockitoJUnitRunner.Silent.class)
26 public class AuditDataServiceTest {
27
28     @InjectMocks
29     AuditDataService auditDataService = new AuditDataService();
30
31     @Mock
32     protected RequestsDbClient requestsDbClient;
33
34     AuditInventory auditInventory = new AuditInventory();
35
36     @Before
37     public void before() throws JsonProcessingException {
38         auditInventory.setCloudOwner("testCloudOwner");
39         auditInventory.setCloudRegion("testLcpCloudRegionId");
40         auditInventory.setHeatStackName("testVfModuleName1");
41         auditInventory.setVfModuleId("testVnfModuleId");
42         auditInventory.setTenantId("testTenantId");
43         auditInventory.setGenericVnfId("testVnfId1");
44     }
45
46     @Test
47     public void testWriteStackDataToRequestDb() throws Exception {
48         Mockito.doReturn(new ArrayList<RequestProcessingData>()).when(requestsDbClient)
49                 .getRequestProcessingDataByGroupingIdAndNameAndTag(Mockito.any(), Mockito.any(), Mockito.any());
50         Mockito.doNothing().when(requestsDbClient).saveRequestProcessingData(Mockito.any());
51
52         AAIObjectAuditList auditList = new AAIObjectAuditList();
53         auditList.setHeatStackName("testHeatStackName");
54         AAIObjectAudit audit = new AAIObjectAudit();
55         Vserver vserver = new Vserver();
56         vserver.setVserverId("testVserverId");
57         audit.setAaiObject(vserver);
58         auditList.getAuditList().add(audit);
59
60         GraphInventoryCommonObjectMapperProvider objectMapper = new GraphInventoryCommonObjectMapperProvider();
61         String auditListString = objectMapper.getMapper().writeValueAsString(auditList);;
62
63         RequestProcessingData requestProcessingData = new RequestProcessingData();
64         requestProcessingData.setSoRequestId(auditInventory.getMsoRequestId());
65         requestProcessingData.setGroupingId(auditInventory.getVfModuleId());
66         requestProcessingData.setName(auditInventory.getHeatStackName());
67         requestProcessingData.setTag("AuditStackData");
68         requestProcessingData.setValue(auditListString);
69
70         auditDataService.writeStackDataToRequestDb(auditInventory, auditList);
71         Mockito.verify(requestsDbClient, Mockito.times(1)).saveRequestProcessingData(requestProcessingData);
72     }
73
74     @Test
75     public void testGetStackDataToRequestDb() throws Exception {
76         AAIObjectAuditList auditList = new AAIObjectAuditList();
77         auditList.setHeatStackName("testHeatStackName");
78         AAIObjectAudit audit = new AAIObjectAudit();
79         Vserver vserver = new Vserver();
80         vserver.setVserverId("testVserverId");
81         audit.setAaiObject(vserver);
82         auditList.getAuditList().add(audit);
83         GraphInventoryCommonObjectMapperProvider objectMapper = new GraphInventoryCommonObjectMapperProvider();
84         String auditListString = objectMapper.getMapper().writeValueAsString(audit);
85
86         List<RequestProcessingData> list = new ArrayList();
87         RequestProcessingData requestProcessingData = new RequestProcessingData();
88         requestProcessingData.setId(234321432);
89         requestProcessingData.setGroupingId("testVfModuleId");
90         requestProcessingData.setName("heatStackName");
91         requestProcessingData.setTag("AuditStackData");
92         requestProcessingData.setValue(auditListString);
93         list.add(requestProcessingData);
94
95         Mockito.doReturn(list).when(requestsDbClient).getRequestProcessingDataByGroupingIdAndNameAndTag(Mockito.any(),
96                 Mockito.any(), Mockito.any());
97         auditDataService.getStackDataFromRequestDb(auditInventory);
98         Mockito.verify(requestsDbClient, Mockito.times(1)).getRequestProcessingDataByGroupingIdAndNameAndTag(
99                 "testVnfModuleId", "testVfModuleName1", "AuditStackData");
100     }
101
102 }