Update nf_type for PNF in AAI
[so.git] / bpmn / MSOCommonBPMN / src / test / java / org / onap / so / bpmn / servicedecomposition / tasks / BBInputSetupTest.java
index 458919c..bc751c3 100644 (file)
@@ -46,6 +46,7 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.Optional;
+import java.util.UUID;
 import org.camunda.bpm.engine.delegate.DelegateExecution;
 import org.junit.Assert;
 import org.junit.Rule;
@@ -59,7 +60,6 @@ import org.mockito.Mockito;
 import org.mockito.Spy;
 import org.mockito.junit.MockitoJUnitRunner;
 import org.onap.aaiclient.client.aai.AAICommonObjectMapperProvider;
-import org.onap.aaiclient.client.aai.AAIObjectType;
 import org.onap.aaiclient.client.aai.entities.AAIResultWrapper;
 import org.onap.aaiclient.client.aai.entities.uri.AAIResourceUri;
 import org.onap.aaiclient.client.aai.entities.uri.AAIUriFactory;
@@ -74,6 +74,7 @@ import org.onap.so.bpmn.servicedecomposition.bbobjects.L3Network;
 import org.onap.so.bpmn.servicedecomposition.bbobjects.LineOfBusiness;
 import org.onap.so.bpmn.servicedecomposition.bbobjects.OwningEntity;
 import org.onap.so.bpmn.servicedecomposition.bbobjects.Platform;
+import org.onap.so.bpmn.servicedecomposition.bbobjects.Pnf;
 import org.onap.so.bpmn.servicedecomposition.bbobjects.Project;
 import org.onap.so.bpmn.servicedecomposition.bbobjects.RouteTableReference;
 import org.onap.so.bpmn.servicedecomposition.bbobjects.ServiceInstance;
@@ -96,6 +97,7 @@ import org.onap.so.bpmn.servicedecomposition.modelinfo.ModelInfoGenericVnf;
 import org.onap.so.bpmn.servicedecomposition.modelinfo.ModelInfoInstanceGroup;
 import org.onap.so.bpmn.servicedecomposition.modelinfo.ModelInfoNetwork;
 import org.onap.so.bpmn.servicedecomposition.modelinfo.ModelInfoServiceInstance;
+import org.onap.so.bpmn.servicedecomposition.modelinfo.ModelInfoPnf;
 import org.onap.so.bpmn.servicedecomposition.modelinfo.ModelInfoServiceProxy;
 import org.onap.so.bpmn.servicedecomposition.modelinfo.ModelInfoVfModule;
 import org.onap.so.bpmn.servicedecomposition.tasks.exceptions.NoServiceInstanceFoundException;
@@ -112,6 +114,7 @@ import org.onap.so.db.catalog.beans.NetworkCollectionResourceCustomization;
 import org.onap.so.db.catalog.beans.NetworkResourceCustomization;
 import org.onap.so.db.catalog.beans.OrchestrationStatus;
 import org.onap.so.db.catalog.beans.Service;
+import org.onap.so.db.catalog.beans.PnfResourceCustomization;
 import org.onap.so.db.catalog.beans.ServiceProxyResourceCustomization;
 import org.onap.so.db.catalog.beans.VfModuleCustomization;
 import org.onap.so.db.catalog.beans.VnfResourceCustomization;
@@ -131,6 +134,8 @@ import com.fasterxml.jackson.core.JsonParseException;
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.JsonMappingException;
 import com.fasterxml.jackson.databind.ObjectMapper;
+import org.onap.so.serviceinstancebeans.VfModules;
+import org.onap.so.serviceinstancebeans.Vnfs;
 
 @RunWith(MockitoJUnitRunner.class)
 public class BBInputSetupTest {
@@ -815,6 +820,26 @@ public class BBInputSetupTest {
         assertThat(actual, sameBeanAs(expected));
     }
 
+    @Test
+    public void testGetServiceInstanceHelperCreateScenarioExistingWithName() throws Exception {
+        RequestDetails requestDetails = new RequestDetails();
+        RequestInfo requestInfo = new RequestInfo();
+        requestDetails.setRequestInfo(requestInfo);
+        ServiceSubscription serviceSub = new ServiceSubscription();
+        Customer customer = new Customer();
+        customer.setServiceSubscription(serviceSub);
+        ServiceInstance expected = new ServiceInstance();
+        expected.setServiceInstanceId("serviceInstanceId");
+        org.onap.aai.domain.yang.ServiceInstance serviceInstanceAAI = new org.onap.aai.domain.yang.ServiceInstance();
+        serviceInstanceAAI.setServiceInstanceId("serviceInstanceId");
+
+        doReturn(serviceInstanceAAI).when(SPY_bbInputSetupUtils).getAAIServiceInstanceByIdAndCustomer(Mockito.any(),
+                Mockito.any(), Mockito.any());
+        ServiceInstance actual = SPY_bbInputSetup.getServiceInstanceHelper(requestDetails, customer, null, null,
+                new HashMap<>(), "SharansInstanceId", false, new Service(), "ActivateServiceInstanceBB");
+        assertThat(actual, sameBeanAs(expected));
+    }
+
     @Test(expected = Exception.class)
     public void testGetServiceInstanceHelperCreateScenarioExistingNoNameButWithIdExceptionThrown() throws Exception {
         RequestDetails requestDetails = new RequestDetails();
@@ -1316,6 +1341,10 @@ public class BBInputSetupTest {
         Map<ResourceKey, String> lookupKeyMap = new HashMap<>();
         lookupKeyMap.put(ResourceKey.CONFIGURATION_ID, "configurationId");
         String bbName = AssignFlows.FABRIC_CONFIGURATION.toString();
+
+        ServiceModel serviceModel = new ServiceModel();
+        serviceModel.setCurrentService(service);
+
         ConfigurationResourceKeys configResourceKeys = prepareConfigurationResourceKeys();
         configResourceKeys.setVnfcName(vnfcName);
         Vnfc vnfc = new Vnfc();
@@ -1327,7 +1356,8 @@ public class BBInputSetupTest {
         BBInputSetupParameter parameter = new BBInputSetupParameter.Builder().setRequestId(REQUEST_ID)
                 .setModelInfo(modelInfo).setService(service).setBbName(bbName).setServiceInstance(serviceInstance)
                 .setLookupKeyMap(lookupKeyMap).setResourceId(resourceId).setInstanceName(instanceName)
-                .setConfigurationResourceKeys(configResourceKeys).setRequestDetails(requestDetails).build();
+                .setConfigurationResourceKeys(configResourceKeys).setRequestDetails(requestDetails)
+                .setServiceModel(serviceModel).build();
         SPY_bbInputSetup.populateConfiguration(parameter);
         verify(SPY_bbInputSetup, times(1)).mapCatalogConfiguration(configuration, modelInfo, service,
                 configResourceKeys);
@@ -1352,6 +1382,52 @@ public class BBInputSetupTest {
                 configResourceKeys);
     }
 
+    @Test
+    public void testPopulateConfigurationReplace() throws JsonParseException, JsonMappingException, IOException {
+        String instanceName = "configurationName";
+        ModelInfo modelInfo = new ModelInfo();
+        modelInfo.setModelCustomizationUuid("72d9d1cd-f46d-447a-abdb-451d6fb05fa9");
+
+        ServiceInstance serviceInstance = new ServiceInstance();
+        Configuration configuration = new Configuration();
+        configuration.setConfigurationId("configurationId");
+        configuration.setConfigurationName("configurationName");
+        serviceInstance.getConfigurations().add(configuration);
+        String resourceId = "configurationId";
+        String vnfcName = "vnfcName";
+        // Mock service
+        Service service = mapper.readValue(
+                new File(RESOURCE_PATH + "CatalogDBService_getServiceInstanceNOAAIInput.json"), Service.class);
+        ConfigurationResourceCustomization configurationCust = new ConfigurationResourceCustomization();
+        configurationCust.setModelCustomizationUUID("72d9d1cd-f46d-447a-abdb-451d6fb05fa9");
+        service.getConfigurationCustomizations().add(configurationCust);
+        Map<ResourceKey, String> lookupKeyMap = new HashMap<>();
+        lookupKeyMap.put(ResourceKey.CONFIGURATION_ID, "configurationId");
+        String bbName = AssignFlows.FABRIC_CONFIGURATION.toString();
+
+        ServiceModel serviceModel = new ServiceModel();
+        serviceModel.setNewService(service);
+
+        ConfigurationResourceKeys configResourceKeys = prepareConfigurationResourceKeys();
+        configResourceKeys.setVnfcName(vnfcName);
+        Vnfc vnfc = new Vnfc();
+        vnfc.setVnfcName(vnfcName);
+        RequestDetails requestDetails = mapper.readValue(
+                new File(RESOURCE_PATH + "RequestDetailsInput_withRelatedInstanceList.json"), RequestDetails.class);
+        doNothing().when(SPY_bbInputSetup).mapCatalogConfiguration(configuration, modelInfo, service,
+                configResourceKeys);
+        doReturn(vnfc).when(SPY_bbInputSetup).getVnfcToConfiguration(vnfcName);
+        BBInputSetupParameter parameter = new BBInputSetupParameter.Builder().setRequestId(REQUEST_ID)
+                .setModelInfo(modelInfo).setService(service).setBbName(bbName).setServiceInstance(serviceInstance)
+                .setLookupKeyMap(lookupKeyMap).setResourceId(resourceId).setInstanceName(instanceName)
+                .setConfigurationResourceKeys(configResourceKeys).setRequestDetails(requestDetails)
+                .setServiceModel(serviceModel).setIsReplace(true).build();
+        SPY_bbInputSetup.populateConfiguration(parameter);
+        configResourceKeys.setVnfResourceCustomizationUUID("my-test-uuid");
+        verify(SPY_bbInputSetup, times(1)).mapCatalogConfiguration(configuration, modelInfo, service,
+                configResourceKeys);
+    }
+
     @Test
     public void testMapCatalogConfiguration() {
         ModelInfoNetwork modelInfoNetwork = new ModelInfoNetwork();
@@ -1399,6 +1475,9 @@ public class BBInputSetupTest {
         vnfc.setVnfcName(vnfcName);
         RequestDetails requestDetails = new RequestDetails();
 
+        ServiceModel serviceModel = new ServiceModel();
+        serviceModel.setCurrentService(service);
+
         CvnfcConfigurationCustomization vnfVfmoduleCvnfcConfigurationCustomization =
                 new CvnfcConfigurationCustomization();
         ConfigurationResource configurationResource = new ConfigurationResource();
@@ -1411,7 +1490,8 @@ public class BBInputSetupTest {
         BBInputSetupParameter parameter = new BBInputSetupParameter.Builder().setRequestId(REQUEST_ID)
                 .setModelInfo(modelInfo).setService(service).setBbName(bbName).setServiceInstance(serviceInstance)
                 .setLookupKeyMap(lookupKeyMap).setResourceId(resourceId).setInstanceName(instanceName)
-                .setConfigurationResourceKeys(configResourceKeys).setRequestDetails(requestDetails).build();
+                .setConfigurationResourceKeys(configResourceKeys).setRequestDetails(requestDetails)
+                .setServiceModel(serviceModel).build();
         SPY_bbInputSetup.populateConfiguration(parameter);
         verify(SPY_bbInputSetup, times(1)).mapCatalogConfiguration(configuration, modelInfo, service,
                 configResourceKeys);
@@ -1441,6 +1521,10 @@ public class BBInputSetupTest {
         lookupKeyMap.put(ResourceKey.GENERIC_VNF_ID, "genericVnfId");
         String bbName = AssignFlows.VNF.toString();
 
+
+        ServiceModel serviceModel = new ServiceModel();
+        serviceModel.setCurrentService(service);
+
         Platform expectedPlatform = new Platform();
         LineOfBusiness expectedLineOfBusiness = new LineOfBusiness();
         String resourceId = "123";
@@ -1460,7 +1544,8 @@ public class BBInputSetupTest {
                 .setLineOfBusiness(lineOfBusiness).setService(service).setBbName(bbName)
                 .setServiceInstance(serviceInstance).setLookupKeyMap(lookupKeyMap)
                 .setRelatedInstanceList(requestDetails.getRelatedInstanceList()).setResourceId(resourceId)
-                .setVnfType(vnfType).setProductFamilyId(requestDetails.getRequestInfo().getProductFamilyId()).build();
+                .setVnfType(vnfType).setProductFamilyId(requestDetails.getRequestInfo().getProductFamilyId())
+                .setServiceModel(serviceModel).build();
         SPY_bbInputSetup.populateGenericVnf(parameter);
 
         lookupKeyMap.put(ResourceKey.GENERIC_VNF_ID, null);
@@ -1651,6 +1736,28 @@ public class BBInputSetupTest {
         assertEquals(modelInfoGenericVnf, genericVnf.getModelInfoGenericVnf());
     }
 
+    @Test
+    public void testMapCatalogPnf() {
+        ModelInfoPnf modelInfoPnf = new ModelInfoPnf();
+        Pnf pnf = new Pnf();
+        RequestDetails requestDetails = new RequestDetails();
+        ModelInfo modelInfo = new ModelInfo();
+        modelInfo.setModelCustomizationUuid("modelCustomizationUUID");
+        requestDetails.setModelInfo(modelInfo);
+        Service service = new Service();
+
+        PnfResourceCustomization resourceCust = new PnfResourceCustomization();
+        resourceCust.setModelCustomizationUUID("pnfModelCustomizationUUID");
+        service.getPnfCustomizations().add(resourceCust);
+        resourceCust.setModelCustomizationUUID("modelCustomizationUUID");
+
+        doReturn(modelInfoPnf).when(bbInputSetupMapperLayer).mapCatalogPnfToPnf(resourceCust);
+
+        SPY_bbInputSetup.mapCatalogPnf(pnf, modelInfo, service);
+
+        assertEquals(modelInfoPnf, pnf.getModelInfoPnf());
+    }
+
     @Test
     public void testMapCatalogCollectionAndInstanceGroup() {
         ModelInfoCollection modelInfoCollection = new ModelInfoCollection();
@@ -1749,7 +1856,8 @@ public class BBInputSetupTest {
         expectedAAI.setRelationshipList(relationshipList);
 
         Configuration expected = new Configuration();
-        AAIResourceUri aaiResourceUri = AAIUriFactory.createResourceUri(AAIObjectType.CONFIGURATION, "configurationId");
+        AAIResourceUri aaiResourceUri =
+                AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.network().configuration("configurationId"));
         AAIResultWrapper configurationWrapper =
                 new AAIResultWrapper(new AAICommonObjectMapperProvider().getMapper().writeValueAsString(expectedAAI));
 
@@ -1773,7 +1881,8 @@ public class BBInputSetupTest {
         expectedAAI.setRelationshipList(relationshipList);
 
         GenericVnf expected = new GenericVnf();
-        AAIResourceUri aaiResourceUri = AAIUriFactory.createResourceUri(AAIObjectType.GENERIC_VNF, "vnfId");
+        AAIResourceUri aaiResourceUri =
+                AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.network().genericVnf("vnfId"));
         AAIResultWrapper vnfWrapper =
                 new AAIResultWrapper(new AAICommonObjectMapperProvider().getMapper().writeValueAsString(expectedAAI));
 
@@ -1794,6 +1903,29 @@ public class BBInputSetupTest {
         verify(SPY_bbInputSetup, times(1)).mapVolumeGroups(any());
     }
 
+    @Test
+    public void testMapPnfs() throws JsonProcessingException {
+        org.onap.aai.domain.yang.Pnf expectedAAI = new org.onap.aai.domain.yang.Pnf();
+        org.onap.aai.domain.yang.RelationshipList relationshipList = new org.onap.aai.domain.yang.RelationshipList();
+        org.onap.aai.domain.yang.Relationship relationship = new org.onap.aai.domain.yang.Relationship();
+        relationshipList.getRelationship().add(relationship);
+        expectedAAI.setRelationshipList(relationshipList);
+
+        Pnf expected = new Pnf();
+        AAIResourceUri aaiResourceUri = AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.network().pnf("pnfId"));
+        AAIResultWrapper pnfWrapper =
+                new AAIResultWrapper(new AAICommonObjectMapperProvider().getMapper().writeValueAsString(expectedAAI));
+
+        doReturn(pnfWrapper).when(SPY_bbInputSetupUtils).getAAIResourceDepthOne(aaiResourceUri);
+        doReturn(expected).when(bbInputSetupMapperLayer).mapAAIPnfIntoPnf(isA(org.onap.aai.domain.yang.Pnf.class));
+
+        List<Pnf> pnfs = new ArrayList<>();
+
+        SPY_bbInputSetup.mapPnfs(Arrays.asList(aaiResourceUri), pnfs);
+
+        assertEquals(expected, pnfs.get(0));
+    }
+
     @Test
     public void testMapVolumeGroups() throws JsonProcessingException {
         org.onap.aai.domain.yang.VolumeGroup expectedAAI = new org.onap.aai.domain.yang.VolumeGroup();
@@ -1904,7 +2036,8 @@ public class BBInputSetupTest {
         List<L3Network> l3Networks = new ArrayList<>();
         AAIResultWrapper l3NetworksWrapper =
                 new AAIResultWrapper(new AAICommonObjectMapperProvider().getMapper().writeValueAsString(expectedAAI));
-        AAIResourceUri aaiResourceUri = AAIUriFactory.createResourceUri(AAIObjectType.L3_NETWORK, "networkId");
+        AAIResourceUri aaiResourceUri =
+                AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.network().l3Network("networkId"));
 
         doReturn(l3NetworksWrapper).when(SPY_bbInputSetupUtils).getAAIResourceDepthTwo(aaiResourceUri);
         doReturn(expected).when(bbInputSetupMapperLayer).mapAAIL3Network(isA(org.onap.aai.domain.yang.L3Network.class));
@@ -2010,6 +2143,11 @@ public class BBInputSetupTest {
         String volumeGroupId = "volumeGroupId";
         String configurationId = "configurationId";
         String instanceGroupId = "instancegroupId";
+        String vnfInstanceName = "vnfInstanceName";
+        String vfModuleInstanceName = "vfModuleInstanceName";
+        String childServiceInstanceId = "childServiceInstanceId";
+        String childServiceInstanceName = "childServiceInstanceName";
+        String pnfInstanceName = "pnfInstanceName";
 
         expected.put(ResourceKey.SERVICE_INSTANCE_ID, serviceInstanceId);
         expected.put(ResourceKey.NETWORK_ID, networkId);
@@ -2019,6 +2157,11 @@ public class BBInputSetupTest {
         expected.put(ResourceKey.VOLUME_GROUP_ID, volumeGroupId);
         expected.put(ResourceKey.CONFIGURATION_ID, configurationId);
         expected.put(ResourceKey.INSTANCE_GROUP_ID, instanceGroupId);
+        expected.put(ResourceKey.VNF_INSTANCE_NAME, vnfInstanceName);
+        expected.put(ResourceKey.VF_MODULE_INSTANCE_NAME, vfModuleInstanceName);
+        expected.put(ResourceKey.CHILD_SERVICE_INSTANCE_ID, childServiceInstanceId);
+        expected.put(ResourceKey.CHILD_SERVICE_INSTANCE_NAME, childServiceInstanceName);
+        expected.put(ResourceKey.PNF_INSTANCE_NAME, pnfInstanceName);
 
         WorkflowResourceIds workflowResourceIds = new WorkflowResourceIds();
         workflowResourceIds.setServiceInstanceId(serviceInstanceId);
@@ -2029,12 +2172,55 @@ public class BBInputSetupTest {
         workflowResourceIds.setVolumeGroupId(volumeGroupId);
         workflowResourceIds.setConfigurationId(configurationId);
         workflowResourceIds.setInstanceGroupId(instanceGroupId);
+        workflowResourceIds.setVnfInstanceName(vnfInstanceName);
+        workflowResourceIds.setVfModuleInstanceName(vfModuleInstanceName);
+        workflowResourceIds.setChildServiceInstanceId(childServiceInstanceId);
+        workflowResourceIds.setChildServiceInstanceName(childServiceInstanceName);
+        workflowResourceIds.setPnfInstanceName(pnfInstanceName);
 
         SPY_bbInputSetup.populateLookupKeyMapWithIds(workflowResourceIds, actual);
 
         assertThat(actual, sameBeanAs(expected));
     }
 
+    @Test
+    public void testGetVfModulesByInstanceName() throws IOException {
+        org.onap.so.serviceinstancebeans.Service serviceMacro = mapper.readValue(
+                new File(RESOURCE_PATH + "ServiceMacroVfModules.json"), org.onap.so.serviceinstancebeans.Service.class);
+        Resources resources = serviceMacro.getResources();
+        VfModules expectedVfModule = resources.getVnfs().get(0).getVfModules().get(2);
+        assertEquals(expectedVfModule,
+                SPY_bbInputSetup.getVfModulesByInstanceName("vmxnjr001_AVPN_base_vRE_BV_expansion_002", resources));
+    }
+
+    @Test
+    public void testGetVfModulesByKey() throws IOException {
+        org.onap.so.serviceinstancebeans.Service serviceMacro = mapper.readValue(
+                new File(RESOURCE_PATH + "ServiceMacroVfModules.json"), org.onap.so.serviceinstancebeans.Service.class);
+        Resources resources = serviceMacro.getResources();
+        VfModules expectedVfModule = resources.getVnfs().get(0).getVfModules().get(0);
+        assertEquals(expectedVfModule,
+                SPY_bbInputSetup.getVfModulesByKey("a25e8e8c-58b8-4eec-810c-97dcc1f5cb7f", resources));
+    }
+
+    @Test
+    public void testFindVnfsByInstanceName() throws IOException {
+        org.onap.so.serviceinstancebeans.Service serviceMacro = mapper.readValue(
+                new File(RESOURCE_PATH + "ServiceMacroVfModules.json"), org.onap.so.serviceinstancebeans.Service.class);
+        Resources resources = serviceMacro.getResources();
+        Vnfs expectedVnf = resources.getVnfs().get(0);
+        assertEquals(expectedVnf, SPY_bbInputSetup.findVnfsByInstanceName("vmxnjr001", resources));
+    }
+
+    @Test
+    public void testVnfsByKey() throws IOException {
+        org.onap.so.serviceinstancebeans.Service serviceMacro = mapper.readValue(
+                new File(RESOURCE_PATH + "ServiceMacroVfModules.json"), org.onap.so.serviceinstancebeans.Service.class);
+        Resources resources = serviceMacro.getResources();
+        Vnfs expectedVnf = resources.getVnfs().get(0);
+        assertEquals(expectedVnf, SPY_bbInputSetup.findVnfsByKey("ab153b6e-c364-44c0-bef6-1f2982117f04", resources));
+    }
+
     @Test
     public void testGBBMacroNoUserParamsVrfConfiguration() throws Exception {
         String resourceId = "123";
@@ -2128,45 +2314,6 @@ public class BBInputSetupTest {
         assertThat(actual, sameBeanAs(expected));
     }
 
-    @Test
-    public void testgetGBBMacroCloudConfiguration() throws Exception {
-        org.onap.so.serviceinstancebeans.Service serviceMacro = mapper.readValue(
-                new File(RESOURCE_PATH + "ServiceMacroVfModules.json"), org.onap.so.serviceinstancebeans.Service.class);
-        CloudConfiguration cloudConfig = null;
-        org.onap.aai.domain.yang.CloudRegion aaiCloudRegion = new org.onap.aai.domain.yang.CloudRegion();
-        aaiCloudRegion.setCloudOwner("test-owner-name");
-        Resources resources = serviceMacro.getResources();
-        doReturn(aaiCloudRegion).when(SPY_bbInputSetupUtils).getCloudRegion(any(CloudConfiguration.class));
-        CloudRegion expected = new CloudRegion();
-        expected.setLcpCloudRegionId("mdt1");
-        expected.setCloudOwner("test-owner-name");
-        expected.setTenantId("88a6ca3ee0394ade9403f075db23167e");
-
-        CloudRegion actual = SPY_bbInputSetup.getCloudRegionFromMacroRequest(cloudConfig, resources);
-        assertThat(actual, sameBeanAs(expected));
-
-        serviceMacro = mapper.readValue(new File(RESOURCE_PATH + "ServiceMacroVnfs.json"),
-                org.onap.so.serviceinstancebeans.Service.class);
-        resources = serviceMacro.getResources();
-
-        actual = SPY_bbInputSetup.getCloudRegionFromMacroRequest(cloudConfig, resources);
-        assertThat(actual, sameBeanAs(expected));
-
-        serviceMacro = mapper.readValue(new File(RESOURCE_PATH + "ServiceMacroNetworks.json"),
-                org.onap.so.serviceinstancebeans.Service.class);
-        resources = serviceMacro.getResources();
-
-        actual = SPY_bbInputSetup.getCloudRegionFromMacroRequest(cloudConfig, resources);
-        assertThat(actual, sameBeanAs(expected));
-
-        serviceMacro = mapper.readValue(new File(RESOURCE_PATH + "ServiceMacroNoCloudConfig.json"),
-                org.onap.so.serviceinstancebeans.Service.class);
-        resources = serviceMacro.getResources();
-
-        actual = SPY_bbInputSetup.getCloudRegionFromMacroRequest(cloudConfig, resources);
-        assertNull(actual);
-    }
-
     @Test
     public void testgetGBBMacroWithEmptyUserParams() throws Exception {
         String resourceId = "123";
@@ -2831,6 +2978,31 @@ public class BBInputSetupTest {
                 any(Service.class), isA(ConfigurationResourceKeys.class));
     }
 
+    @Test
+    public void testGetGBBMacroExistingServiceUpgrade() throws Exception {
+        String requestAction = "upgradeInstance";
+        GeneralBuildingBlock gBB = mapper.readValue(new File(RESOURCE_PATH + "GeneralBuildingBlockExpected.json"),
+                GeneralBuildingBlock.class);
+        ExecuteBuildingBlock executeBB = mapper.readValue(new File(RESOURCE_PATH + "ExecuteBuildingBlockSimple.json"),
+                ExecuteBuildingBlock.class);
+        RequestDetails requestDetails = mapper
+                .readValue(new File(RESOURCE_PATH + "RequestDetailsInput_serviceUpgrade.json"), RequestDetails.class);
+        Map<ResourceKey, String> lookupKeyMap = prepareLookupKeyMap();
+        executeBB.setRequestDetails(requestDetails);
+
+        doReturn(new Service()).when(SPY_bbInputSetupUtils)
+                .getCatalogServiceByModelUUID(requestDetails.getModelInfo().getModelVersionId());
+        doReturn(new org.onap.aai.domain.yang.ServiceInstance()).when(SPY_bbInputSetupUtils)
+                .getAAIServiceInstanceById(lookupKeyMap.get(ResourceKey.SERVICE_INSTANCE_ID));
+        doReturn(gBB).when(SPY_bbInputSetup).populateGBBWithSIAndAdditionalInfo(any(BBInputSetupParameter.class));
+
+        SPY_bbInputSetup.getGBBMacroExistingService(executeBB, lookupKeyMap,
+                executeBB.getBuildingBlock().getBpmnFlowName(), requestAction, null);
+
+        verify(SPY_bbInputSetupUtils, times(1))
+                .getCatalogServiceByModelUUID(requestDetails.getModelInfo().getModelVersionId());
+    }
+
     @Test
     public void testGetGBBMacroExistingServiceServiceinstancenotFoundInAai() throws Exception {
         ExecuteBuildingBlock executeBB = mapper.readValue(new File(RESOURCE_PATH + "ExecuteBuildingBlockSimple.json"),
@@ -3318,7 +3490,7 @@ public class BBInputSetupTest {
 
         String vnfcName = "vnfcName";
         org.onap.aai.domain.yang.Configuration expectedAAI = new org.onap.aai.domain.yang.Configuration();
-        AAIResourceUri aaiResourceUri = AAIUriFactory.createResourceUri(AAIObjectType.VNFC, vnfcName);
+        AAIResourceUri aaiResourceUri = AAIUriFactory.createResourceUri(AAIFluentTypeBuilder.network().vnfc(vnfcName));
         AAIResultWrapper configurationWrapper =
                 new AAIResultWrapper(new AAICommonObjectMapperProvider().getMapper().writeValueAsString(expectedAAI));