RequestsBean, Jira issue use correc type of Assert
[so.git] / adapters / mso-requests-db-adapter / src / test / java / org / onap / so / adapters / requestsdb / client / RequestsDbClientTest.java
index 7c037e4..59919c6 100644 (file)
@@ -3,6 +3,7 @@
  * ONAP - SO
  * ================================================================================
  * Copyright (C) 2017 - 2018 AT&T Intellectual Property. All rights reserved.
+ * Copyright (c) 2022, Samsung Electronics. All rights reserved.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
 
 package org.onap.so.adapters.requestsdb.client;
 
+import static com.shazam.shazamcrest.MatcherAssert.assertThat;
+import static com.shazam.shazamcrest.matcher.Matchers.sameBeanAs;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
+import java.sql.Timestamp;
+import java.time.Instant;
+import java.time.temporal.ChronoUnit;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.UUID;
 import org.junit.Before;
 import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.onap.so.adapters.requestsdb.application.MSORequestDBApplication;
+import org.onap.so.adapters.requestsdb.RequestsAdapterBase;
+import org.onap.so.db.request.beans.CloudApiRequests;
 import org.onap.so.db.request.beans.InfraActiveRequests;
 import org.onap.so.db.request.beans.OperationStatus;
 import org.onap.so.db.request.beans.OperationalEnvDistributionStatus;
 import org.onap.so.db.request.beans.OperationalEnvServiceModelStatus;
 import org.onap.so.db.request.beans.RequestProcessingData;
+import org.onap.so.serviceinstancebeans.ModelType;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.context.embedded.LocalServerPort;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.context.ActiveProfiles;
-import org.springframework.test.context.junit4.SpringRunner;
-import java.util.List;
-import java.util.UUID;
-import java.util.Map;
-import java.util.HashMap;
-import java.util.ArrayList;
+import org.springframework.boot.web.server.LocalServerPort;
 
-import static com.shazam.shazamcrest.matcher.Matchers.sameBeanAs;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.assertThat;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertFalse;
-
-@RunWith(SpringRunner.class)
-@SpringBootTest(classes = MSORequestDBApplication.class, webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
-@ActiveProfiles("test")
-public class RequestsDbClientTest {
+public class RequestsDbClientTest extends RequestsAdapterBase {
 
     @Autowired
     private RequestDbClientPortChanger requestsDbClient;
@@ -79,25 +77,63 @@ public class RequestsDbClientTest {
         infraActiveRequests.setNetworkName("networkInstanceNameTest");
         infraActiveRequests.setConfigurationId(UUID.randomUUID().toString());
         infraActiveRequests.setConfigurationName("configurationInstanceNameTest");
-        infraActiveRequests.setAicCloudRegion("1");
+        infraActiveRequests.setCloudRegion("1");
         infraActiveRequests.setTenantId(UUID.randomUUID().toString());
         infraActiveRequests.setRequestScope("operationalEnvironment");
         infraActiveRequests.setRequestorId(UUID.randomUUID().toString());
         infraActiveRequests.setSource("sourceTest");
         infraActiveRequests.setOperationalEnvName(UUID.randomUUID().toString());
         infraActiveRequests.setRequestStatus("IN_PROGRESS");
-        infraActiveRequests.setAction("create");
         infraActiveRequests.setRequestAction("someaction");
+        infraActiveRequests.setStartTime(new Timestamp(System.currentTimeMillis()));
+        infraActiveRequests
+                .setRequestUrl("http://localhost:8080/onap/so/infra/serviceInstantiation/v7/serviceInstances");
+        List<CloudApiRequests> cloudApiRequests = new ArrayList<>();
+        CloudApiRequests cloudRequest = new CloudApiRequests();
+        cloudRequest.setCloudIdentifier("heatstackanme/id");
+        cloudRequest.setId(1);
+        cloudRequest.setRequestBody("requestBody");
+        cloudRequest.setRequestId(infraActiveRequests.getRequestId());
+        cloudApiRequests.add(cloudRequest);
+        infraActiveRequests.setCloudApiRequests(cloudApiRequests);
         requestsDbClient.save(infraActiveRequests);
+
+        InfraActiveRequests infraActiveRequests2 = new InfraActiveRequests();
+        infraActiveRequests2.setRequestId(UUID.randomUUID().toString());
+        infraActiveRequests2.setOperationalEnvId(UUID.randomUUID().toString());
+        infraActiveRequests2.setServiceInstanceId(UUID.randomUUID().toString());
+        infraActiveRequests2.setServiceInstanceName("serviceInstanceNameTest");
+        infraActiveRequests2.setVnfId(UUID.randomUUID().toString());
+        infraActiveRequests2.setVnfName("vnfInstanceNameTest");
+        infraActiveRequests2.setVfModuleId(UUID.randomUUID().toString());
+        infraActiveRequests2.setVfModuleName("vfModuleInstanceNameTest");
+        infraActiveRequests2.setVolumeGroupId(UUID.randomUUID().toString());
+        infraActiveRequests2.setVolumeGroupName("volumeGroupInstanceNameTest");
+        infraActiveRequests2.setNetworkId(UUID.randomUUID().toString());
+        infraActiveRequests2.setNetworkName("networkInstanceNameTest");
+        infraActiveRequests2.setConfigurationId(UUID.randomUUID().toString());
+        infraActiveRequests2.setConfigurationName("configurationInstanceNameTest");
+        infraActiveRequests2.setCloudRegion("1");
+        infraActiveRequests2.setTenantId(UUID.randomUUID().toString());
+        infraActiveRequests2.setRequestScope("operationalEnvironment");
+        infraActiveRequests2.setRequestorId(UUID.randomUUID().toString());
+        infraActiveRequests2.setSource("sourceTest");
+        infraActiveRequests2.setOperationalEnvName(UUID.randomUUID().toString());
+        infraActiveRequests2.setRequestStatus("IN_PROGRESS");
+        infraActiveRequests2.setRequestAction("someaction");
+        infraActiveRequests2.setStartTime(new Timestamp(System.currentTimeMillis()));
+        infraActiveRequests
+                .setRequestUrl("http://localhost:8080/onap/so/infra/serviceInstantiation/v7/serviceInstances");
     }
 
-    private void verifyOperationStatus(OperationStatus request,OperationStatus response){
+    private void verifyOperationStatus(OperationStatus request, OperationStatus response) {
         assertThat(request, sameBeanAs(response).ignoring("operateAt").ignoring("finishedAt"));
-   }
+    }
 
 
     private void verifyInfraActiveRequests(InfraActiveRequests infraActiveRequestsResponse) {
-        assertThat(infraActiveRequestsResponse, sameBeanAs(infraActiveRequests).ignoring("modifyTime").ignoring("log"));
+        assertThat(infraActiveRequestsResponse, sameBeanAs(infraActiveRequests).ignoring("modifyTime").ignoring("log")
+                .ignoring("cloudApiRequests.created").ignoring("cloudApiRequests.id"));
     }
 
     @Test
@@ -114,17 +150,18 @@ public class RequestsDbClientTest {
         verifyInfraActiveRequests(infraActiveRequestsResponse);
     }
 
-
     @Test
     public void checkVnfIdStatusTest() {
-        InfraActiveRequests infraActiveRequestsResponse = requestsDbClient.checkVnfIdStatus(infraActiveRequests.getOperationalEnvId());
+        InfraActiveRequests infraActiveRequestsResponse =
+                requestsDbClient.checkVnfIdStatus(infraActiveRequests.getOperationalEnvId());
         verifyInfraActiveRequests(infraActiveRequestsResponse);
         assertNull(requestsDbClient.checkVnfIdStatus(UUID.randomUUID().toString()));
     }
 
     @Test
     public void checkInstanceNameDuplicateTest() {
-        InfraActiveRequests infraActiveRequestsResponse = requestsDbClient.checkInstanceNameDuplicate(null,infraActiveRequests.getOperationalEnvName(),infraActiveRequests.getRequestScope());
+        InfraActiveRequests infraActiveRequestsResponse = requestsDbClient.checkInstanceNameDuplicate(null,
+                infraActiveRequests.getOperationalEnvName(), infraActiveRequests.getRequestScope());
 
         verifyInfraActiveRequests(infraActiveRequestsResponse);
     }
@@ -134,7 +171,8 @@ public class RequestsDbClientTest {
         Map<String, String> requestMap = new HashMap<>();
         requestMap.put("operationalEnvironmentId", infraActiveRequests.getOperationalEnvId());
 
-        InfraActiveRequests infraActiveRequestsResponse = requestsDbClient.checkInstanceNameDuplicate((HashMap<String, String>)requestMap,null,infraActiveRequests.getRequestScope());
+        InfraActiveRequests infraActiveRequestsResponse = requestsDbClient.checkInstanceNameDuplicate(
+                (HashMap<String, String>) requestMap, null, infraActiveRequests.getRequestScope());
 
         verifyInfraActiveRequests(infraActiveRequestsResponse);
     }
@@ -166,17 +204,30 @@ public class RequestsDbClientTest {
     }
 
     @Test
-    public void getInfraActiveRequestbyRequestIdTest(){
-        InfraActiveRequests infraActiveRequestsResponse = requestsDbClient.getInfraActiveRequestbyRequestId(infraActiveRequests.getRequestId());
-        verifyInfraActiveRequests(infraActiveRequestsResponse);       
-        infraActiveRequestsResponse = requestsDbClient.getInfraActiveRequestbyRequestId(infraActiveRequests.getRequestId());
-        
+    public void getInfraActiveRequestbyRequestIdTest() {
+        InfraActiveRequests infraActiveRequestsResponse =
+                requestsDbClient.getInfraActiveRequestbyRequestId(infraActiveRequests.getRequestId());
+        verifyInfraActiveRequests(infraActiveRequestsResponse);
+        infraActiveRequestsResponse =
+                requestsDbClient.getInfraActiveRequestbyRequestId(infraActiveRequests.getRequestId());
+
         assertNull(requestsDbClient.getInfraActiveRequestbyRequestId(UUID.randomUUID().toString()));
     }
-    
 
     @Test
-    public void getOneByServiceIdAndOperationIdTest(){
+    public void getInfraActiveRequestbyRequestIdWhereRequestUrlNullTest() {
+        // requestUrl setup to null and save
+        infraActiveRequests.setRequestUrl(null);
+        requestsDbClient.updateInfraActiveRequests(infraActiveRequests);
+        InfraActiveRequests infraActiveRequestsResponse =
+                requestsDbClient.getInfraActiveRequestbyRequestId(infraActiveRequests.getRequestId());
+        verifyInfraActiveRequests(infraActiveRequestsResponse);
+
+        assertNull(infraActiveRequestsResponse.getRequestUrl());
+    }
+
+    @Test
+    public void getOneByServiceIdAndOperationIdTest() {
         OperationStatus operationStatus = new OperationStatus();
         operationStatus.setProgress("IN_PROGRESS");
         operationStatus.setResult("FAILED");
@@ -189,43 +240,107 @@ public class RequestsDbClientTest {
         operationStatus.setServiceName("test-service");
         requestsDbClient.save(operationStatus);
 
-        OperationStatus operationStatusResponse = requestsDbClient.getOneByServiceIdAndOperationId(operationStatus.getServiceId(),operationStatus.getOperationId());
+        OperationStatus operationStatusResponse = requestsDbClient
+                .getOneByServiceIdAndOperationId(operationStatus.getServiceId(), operationStatus.getOperationId());
 
-        verifyOperationStatus(operationStatus,operationStatusResponse);
+        verifyOperationStatus(operationStatus, operationStatusResponse);
 
-        assertNull(requestsDbClient.getOneByServiceIdAndOperationId(UUID.randomUUID().toString(),operationStatus.getOperationId()));
+        assertNull(requestsDbClient.getOneByServiceIdAndOperationId(UUID.randomUUID().toString(),
+                operationStatus.getOperationId()));
     }
 
 
     @Test
-    public void getRequestProcessingDataBySoRequestIdTest(){
-        List<RequestProcessingData> requestProcessingDataList = requestsDbClient
-                .getRequestProcessingDataBySoRequestId("00032ab7-na18-42e5-965d-8ea592502018");
+    public void getRequestProcessingDataBySoRequestIdTest() {
+        List<RequestProcessingData> requestProcessingDataList =
+                requestsDbClient.getRequestProcessingDataBySoRequestId("00032ab7-na18-42e5-965d-8ea592502018");
         assertNotNull(requestProcessingDataList);
         assertFalse(requestProcessingDataList.isEmpty());
-        assertEquals(2,requestProcessingDataList.size());
+        assertEquals(2, requestProcessingDataList.size());
     }
 
+
     @Test
-    public void findOneByOperationalEnvIdAndServiceModelVersionIdTest(){
-        OperationalEnvServiceModelStatus operationalEnvServiceModelStatus =requestsDbClient.findOneByOperationalEnvIdAndServiceModelVersionId("1234","TEST1234");
+    public void findOneByOperationalEnvIdAndServiceModelVersionIdAndRequestIdTest() {
+        OperationalEnvServiceModelStatus operationalEnvServiceModelStatus =
+                requestsDbClient.findOneByOperationalEnvIdAndServiceModelVersionIdAndRequestId("1234", "TEST1234",
+                        "00032ab7-3fb3-42e5-965d-8ea592502017");
         assertNotNull(operationalEnvServiceModelStatus);
-        assertEquals("1234",operationalEnvServiceModelStatus.getOperationalEnvId());
-        assertEquals("TEST1234",operationalEnvServiceModelStatus.getServiceModelVersionId());
+        assertEquals("1234", operationalEnvServiceModelStatus.getOperationalEnvId());
+        assertEquals("TEST1234", operationalEnvServiceModelStatus.getServiceModelVersionId());
+
+        OperationalEnvServiceModelStatus operationalEnvServiceModelStatus1 =
+                requestsDbClient.findOneByOperationalEnvIdAndServiceModelVersionIdAndRequestId("1234", "TEST1235",
+                        "00032ab7-3fb3-42e5-965d-8ea592502018");
+        assertNotNull(operationalEnvServiceModelStatus1);
+        assertEquals("00032ab7-3fb3-42e5-965d-8ea592502018", operationalEnvServiceModelStatus1.getRequestId());
+        assertEquals("1234", operationalEnvServiceModelStatus1.getOperationalEnvId());
+        assertEquals("TEST1235", operationalEnvServiceModelStatus1.getServiceModelVersionId());
     }
 
     @Test
-    public void getAllByOperationalEnvIdAndRequestId(){
-        List<OperationalEnvServiceModelStatus> operationalEnvServiceModelStatuses =requestsDbClient.getAllByOperationalEnvIdAndRequestId("1234","00032ab7-3fb3-42e5-965d-8ea592502017");
+    public void getAllByOperationalEnvIdAndRequestId() {
+        List<OperationalEnvServiceModelStatus> operationalEnvServiceModelStatuses =
+                requestsDbClient.getAllByOperationalEnvIdAndRequestId("1234", "00032ab7-3fb3-42e5-965d-8ea592502017");
         assertNotNull(operationalEnvServiceModelStatuses);
         assertFalse(operationalEnvServiceModelStatuses.isEmpty());
-        assertEquals(2,operationalEnvServiceModelStatuses.size());
+        assertEquals(2, operationalEnvServiceModelStatuses.size());
     }
 
     @Test
-    public void getDistributionStatusByIdTest(){
-        OperationalEnvDistributionStatus operationalEnvDistributionStatus =requestsDbClient.getDistributionStatusById("111");
+    public void getDistributionStatusByIdTest() {
+        OperationalEnvDistributionStatus operationalEnvDistributionStatus =
+                requestsDbClient.getDistributionStatusById("111");
         assertNotNull(operationalEnvDistributionStatus);
-        assertEquals("111",operationalEnvDistributionStatus.getDistributionId());
+        assertEquals("111", operationalEnvDistributionStatus.getDistributionId());
+        assertEquals("ERROR", operationalEnvDistributionStatus.getDistributionIdErrorReason());
+        assertEquals("00032ab7-3fb3-42e5-965d-8ea592502017", operationalEnvDistributionStatus.getRequestId());
+    }
+
+    @Test
+    public void getRequestProcessingDataBySoRequestIdAndName() {
+        RequestProcessingData requestProcessingData = requestsDbClient
+                .getRequestProcessingDataBySoRequestIdAndNameAndGrouping("00032ab7-na18-42e5-965d-8ea592502018",
+                        "requestAction", "7d2e8c07-4d10-456d-bddc-37abf38ca714");
+        assertNotNull(requestProcessingData);
+
+    }
+
+    @Test
+    public void getInfraActiveRequestbyRequestId_Filters_Test() {
+        Map<String, String[]> filters = new HashMap<>();
+        filters.put("requestStatus", new String[] {"EQ", "IN_PROGRESS"});
+        filters.put("action", new String[] {"EQ", "create"});
+        filters.put("serviceInstanceId", new String[] {"EQ", infraActiveRequests.getServiceInstanceId()});
+        List<InfraActiveRequests> infraActiveRequestsResponse = requestsDbClient.getRequest(filters);
+
+        verifyInfraActiveRequests(infraActiveRequestsResponse.get(0));
+    }
+
+    @Test
+    public void getInProgressVolumeGroupsAndVfModulesTest() {
+        InfraActiveRequests request = new InfraActiveRequests();
+        request.setRequestId(UUID.randomUUID().toString());
+        request.setVfModuleId(UUID.randomUUID().toString());
+        request.setRequestStatus("IN_PROGRESS");
+        request.setRequestScope(ModelType.vfModule.toString());
+        Instant startInstant = Instant.now().minus(3, ChronoUnit.MINUTES);
+        request.setStartTime(Timestamp.from(startInstant));
+        request.setRequestAction("create");
+        requestsDbClient.save(request);
+
+        List<InfraActiveRequests> infraActiveRequests = requestsDbClient.getInProgressVolumeGroupsAndVfModules();
+        assertThat(request, sameBeanAs(infraActiveRequests.get(0)).ignoring("modifyTime"));
+    }
+
+    @Test
+    public void getRequestProcessingDataBySoRequestIdAndNameAndTag() {
+        List<RequestProcessingData> requestProcessingData =
+                requestsDbClient.getRequestProcessingDataBySoRequestIdAndNameAndTagOrderByCreateTimeDesc(
+                        "00032ab7-na18-42e5-965d-8ea592502018", "requestAction", "pincFabricConfigRequest");
+        assertNotNull(requestProcessingData);
+        assertEquals(1, requestProcessingData.size());
+        assertEquals("assign", requestProcessingData.get(0).getValue());
     }
 }
+