summaryrefslogtreecommitdiffstats
path: root/asdc-controller/src/test
diff options
context:
space:
mode:
Diffstat (limited to 'asdc-controller/src/test')
-rw-r--r--asdc-controller/src/test/java/org/onap/asdc/activity/DeployActivitySpecsTest.java64
-rw-r--r--asdc-controller/src/test/java/org/onap/so/asdc/installer/heat/ToscaResourceInstallerTest.java56
-rw-r--r--asdc-controller/src/test/resources/ActivitySpec.json23
-rw-r--r--asdc-controller/src/test/resources/ActivitySpecFromCatalog.json41
-rw-r--r--asdc-controller/src/test/resources/ActivitySpecList.json398
-rw-r--r--asdc-controller/src/test/resources/data.sql192
-rw-r--r--asdc-controller/src/test/resources/schema.sql38
7 files changed, 766 insertions, 46 deletions
diff --git a/asdc-controller/src/test/java/org/onap/asdc/activity/DeployActivitySpecsTest.java b/asdc-controller/src/test/java/org/onap/asdc/activity/DeployActivitySpecsTest.java
index 86f6a89af5..aae5e5dc53 100644
--- a/asdc-controller/src/test/java/org/onap/asdc/activity/DeployActivitySpecsTest.java
+++ b/asdc-controller/src/test/java/org/onap/asdc/activity/DeployActivitySpecsTest.java
@@ -19,20 +19,72 @@
*/
package org.onap.asdc.activity;
+import java.nio.file.Files;
+import static com.shazam.shazamcrest.matcher.Matchers.sameBeanAs;
+import static org.junit.Assert.assertThat;
+import static org.junit.Assert.assertTrue;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.when;
import org.junit.Test;
-import org.onap.so.asdc.BaseTest;
+import org.junit.runner.RunWith;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.Mockito;
+import org.mockito.junit.MockitoJUnitRunner;
+import org.onap.so.asdc.activity.ActivitySpecsActions;
import org.onap.so.asdc.activity.DeployActivitySpecs;
-import org.springframework.beans.factory.annotation.Autowired;
+import org.onap.so.asdc.activity.beans.ActivitySpec;
+import org.onap.so.asdc.activity.beans.ActivitySpecCreateResponse;
+import org.onap.so.db.catalog.data.repository.ActivitySpecRepository;
+import org.springframework.core.env.Environment;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import java.nio.file.Paths;
+import java.util.ArrayList;
+import java.util.List;
+@RunWith(MockitoJUnitRunner.class)
+public class DeployActivitySpecsTest {
+ @Mock
+ protected Environment env;
-public class DeployActivitySpecsTest extends BaseTest {
+ @Mock
+ protected ActivitySpecRepository activitySpecRepository;
- @Autowired
+ @Mock
+ protected ActivitySpecsActions activitySpecsActions;
+
+ @InjectMocks
private DeployActivitySpecs deployActivitySpecs;
@Test
- public void DeployActivitySpecs_Test() throws Exception {
- // Mock catalog DB results
+ public void deployActivitySpecs_Test() throws Exception {
+ boolean deploymentSuccessful = true;
+ ActivitySpecCreateResponse activitySpecCreateResponse = new ActivitySpecCreateResponse();
+ activitySpecCreateResponse.setId("testActivityId");
+ ObjectMapper mapper = new ObjectMapper();
+ org.onap.so.db.catalog.beans.ActivitySpec catalogActivitySpec = mapper.readValue(
+ new String(Files.readAllBytes(Paths.get("src/test/resources/ActivitySpecFromCatalog.json"))),
+ org.onap.so.db.catalog.beans.ActivitySpec.class);
+ List<org.onap.so.db.catalog.beans.ActivitySpec> catalogActivitySpecList =
+ new ArrayList<org.onap.so.db.catalog.beans.ActivitySpec>();
+ catalogActivitySpecList.add(catalogActivitySpec);
+ when(env.getProperty("mso.asdc.config.activity.endpoint")).thenReturn("testEndpoint");
+ when(activitySpecRepository.findAll()).thenReturn(catalogActivitySpecList);
+ doReturn("testActivityId").when(activitySpecsActions).createActivitySpec(Mockito.any(), Mockito.any());
+ doReturn(true).when(activitySpecsActions).certifyActivitySpec(Mockito.any(), Mockito.any());
deployActivitySpecs.deployActivities();
+ assertTrue(deploymentSuccessful);
+ }
+
+ @Test
+ public void mapActivitySpecFromCatalogToSdc_Test() throws Exception {
+ ObjectMapper mapper = new ObjectMapper();
+ org.onap.so.db.catalog.beans.ActivitySpec catalogActivitySpec = mapper.readValue(
+ new String(Files.readAllBytes(Paths.get("src/test/resources/ActivitySpecFromCatalog.json"))),
+ org.onap.so.db.catalog.beans.ActivitySpec.class);
+ ActivitySpec activitySpec = deployActivitySpecs.mapActivitySpecFromCatalogToSdc(catalogActivitySpec);
+ ActivitySpec expected = mapper.readValue(
+ new String(Files.readAllBytes(Paths.get("src/test/resources/ActivitySpec.json"))), ActivitySpec.class);
+ assertThat(expected, sameBeanAs(activitySpec));
}
}
diff --git a/asdc-controller/src/test/java/org/onap/so/asdc/installer/heat/ToscaResourceInstallerTest.java b/asdc-controller/src/test/java/org/onap/so/asdc/installer/heat/ToscaResourceInstallerTest.java
index d3c0bdef66..ce70a252c9 100644
--- a/asdc-controller/src/test/java/org/onap/so/asdc/installer/heat/ToscaResourceInstallerTest.java
+++ b/asdc-controller/src/test/java/org/onap/so/asdc/installer/heat/ToscaResourceInstallerTest.java
@@ -20,26 +20,24 @@
package org.onap.so.asdc.installer.heat;
-import static com.shazam.shazamcrest.matcher.Matchers.sameBeanAs;
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.assertNotNull;
-import static org.junit.Assert.assertTrue;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.doThrow;
+import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
import java.util.ArrayList;
import java.util.List;
-import java.util.Optional;
import org.hibernate.exception.LockAcquisitionException;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.ExpectedException;
import org.mockito.Mock;
-import org.mockito.Mockito;
import org.mockito.MockitoAnnotations;
import org.onap.sdc.api.notification.IResourceInstance;
import org.onap.sdc.tosca.parser.api.ISdcCsarHelper;
@@ -58,13 +56,17 @@ import org.onap.so.asdc.client.test.emulators.NotificationDataImpl;
import org.onap.so.asdc.installer.ToscaResourceStructure;
import org.onap.so.db.catalog.beans.ConfigurationResource;
import org.onap.so.db.catalog.beans.ConfigurationResourceCustomization;
+import org.onap.so.db.catalog.beans.Service;
import org.onap.so.db.catalog.beans.ServiceProxyResourceCustomization;
import org.onap.so.db.catalog.data.repository.AllottedResourceCustomizationRepository;
import org.onap.so.db.catalog.data.repository.AllottedResourceRepository;
+import org.onap.so.db.catalog.data.repository.ConfigurationResourceCustomizationRepository;
import org.onap.so.db.catalog.data.repository.ServiceRepository;
import org.onap.so.db.request.beans.WatchdogComponentDistributionStatus;
import org.onap.so.db.request.data.repository.WatchdogComponentDistributionStatusRepository;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.test.util.ReflectionTestUtils;
+
public class ToscaResourceInstallerTest extends BaseTest {
@Autowired
@@ -99,6 +101,8 @@ public class ToscaResourceInstallerTest extends BaseTest {
private ISdcCsarHelper csarHelper;
@Mock
private StatefulEntityType entityType;
+ @Mock
+ private Service service;
private NotificationDataImpl notificationData;
private JsonStatusData statusData;
@@ -350,8 +354,9 @@ public class ToscaResourceInstallerTest extends BaseTest {
public void getConfigurationResourceCustomizationTest() {
prepareConfigurationResourceCustomization();
- ConfigurationResourceCustomization configurationResourceCustomization = toscaInstaller
- .getConfigurationResourceCustomization(nodeTemplate, toscaResourceStructure, spResourceCustomization);
+ ConfigurationResourceCustomization configurationResourceCustomization =
+ toscaInstaller.getConfigurationResourceCustomization(nodeTemplate, toscaResourceStructure,
+ spResourceCustomization, service);
assertNotNull(configurationResourceCustomization);
assertNotNull(configurationResourceCustomization.getConfigurationResource());
assertEquals(MockConstants.MODEL_CUSTOMIZATIONUUID,
@@ -359,16 +364,34 @@ public class ToscaResourceInstallerTest extends BaseTest {
}
@Test
- public void getVnrNodeTemplateTest() {
- prepareConfigurationResourceCustomization();
- List<NodeTemplate> nodeTemplateList = new ArrayList<>();
- doReturn(ToscaResourceInstaller.VLAN_NETWORK_RECEPTOR).when(entityType).getType();
- doReturn(entityType).when(nodeTemplate).getTypeDefinition();
- nodeTemplateList.add(nodeTemplate);
- Optional<ConfigurationResourceCustomization> vnrResourceCustomization =
- toscaInstaller.getVnrNodeTemplate(nodeTemplateList, toscaResourceStructure, spResourceCustomization);
- assertTrue(vnrResourceCustomization.isPresent());
- assertEquals(ToscaResourceInstaller.VLAN_NETWORK_RECEPTOR, entityType.getType());
+ public void correlateConfigCustomResourcesTest() {
+ ConfigurationResource vrfConfigResource = mock(ConfigurationResource.class);
+ ConfigurationResourceCustomization vrfConfigCustom = mock(ConfigurationResourceCustomization.class);
+ doReturn(ToscaResourceInstaller.NODES_VRF_ENTRY).when(vrfConfigResource).getToscaNodeType();
+ doReturn(vrfConfigResource).when(vrfConfigCustom).getConfigurationResource();
+
+ ConfigurationResource vnrConfigResource = mock(ConfigurationResource.class);
+ ConfigurationResourceCustomization vnrConfigCustom = mock(ConfigurationResourceCustomization.class);
+ doReturn(ToscaResourceInstaller.VLAN_NETWORK_RECEPTOR).when(vnrConfigResource).getToscaNodeType();
+ doReturn(vnrConfigResource).when(vnrConfigCustom).getConfigurationResource();
+
+ ConfigurationResourceCustomizationRepository configCustomizationRepo =
+ spy(ConfigurationResourceCustomizationRepository.class);
+ ReflectionTestUtils.setField(toscaInstaller, "configCustomizationRepo", configCustomizationRepo);
+ doReturn(vrfConfigCustom).when(configCustomizationRepo).save(vrfConfigCustom);
+ doReturn(vnrConfigCustom).when(configCustomizationRepo).save(vnrConfigCustom);
+
+ List<ConfigurationResourceCustomization> configList = new ArrayList<>();
+ configList.add(vrfConfigCustom);
+ configList.add(vnrConfigCustom);
+ doReturn(configList).when(service).getConfigurationCustomizations();
+
+ toscaInstaller.correlateConfigCustomResources(service);
+ verify(vrfConfigCustom, times(1)).getConfigurationResource();
+ verify(vrfConfigCustom, times(1)).setConfigResourceCustomization(vnrConfigCustom);
+ verify(service, times(1)).getConfigurationCustomizations();
+ verify(vnrConfigCustom, times(1)).getConfigurationResource();
+ verify(vnrConfigCustom, times(1)).setConfigResourceCustomization(vrfConfigCustom);
}
class MockConstants {
@@ -381,5 +404,6 @@ public class ToscaResourceInstallerTest extends BaseTest {
public final static String TEMPLATE_TYPE = "org.openecomp.nodes.VLANNetworkReceptor";
public final static String TEMPLATE_NAME = "VLAN Network Receptor Configuration 0";
+
}
}
diff --git a/asdc-controller/src/test/resources/ActivitySpec.json b/asdc-controller/src/test/resources/ActivitySpec.json
new file mode 100644
index 0000000000..66e1b1355f
--- /dev/null
+++ b/asdc-controller/src/test/resources/ActivitySpec.json
@@ -0,0 +1,23 @@
+{
+ "name": "VNFQuiesceTrafficActivity",
+ "description": "Activity to QuiesceTraffic on VNF",
+ "categoryList": [
+ "VNF"
+ ],
+ "inputs": [
+ {
+ "name": "parameter1",
+ "type": "string"
+ },
+ {
+ "name": "parameter2",
+ "type": "string"
+ }
+ ],
+ "outputs": [
+ {
+ "name": "parameter3",
+ "type": "string"
+ }
+ ]
+} \ No newline at end of file
diff --git a/asdc-controller/src/test/resources/ActivitySpecFromCatalog.json b/asdc-controller/src/test/resources/ActivitySpecFromCatalog.json
new file mode 100644
index 0000000000..0864a2cba9
--- /dev/null
+++ b/asdc-controller/src/test/resources/ActivitySpecFromCatalog.json
@@ -0,0 +1,41 @@
+{
+ "name": "VNFQuiesceTrafficActivity",
+ "description": "Activity to QuiesceTraffic on VNF",
+ "version": null,
+ "created": null,
+ "workflowActivitySpecSequence": null,
+ "activitySpecActivitySpecCategories": [
+ {
+ "activitySpecCategories": {
+ "name": "VNF"
+ }
+ }
+ ],
+ "activitySpecActivitySpecParameters": [
+ {
+ "activitySpecParameters": {
+ "name": "parameter1",
+ "type": "string",
+ "direction": "input",
+ "description": "Parameter 1"
+ }
+ },
+ {
+ "activitySpecParameters": {
+ "name": "parameter2",
+ "type": "string",
+ "direction": "input",
+ "description": "Parameter 2"
+ }
+ },
+ {
+ "activitySpecParameters": {
+ "name": "parameter3",
+ "type": "string",
+ "direction": "output",
+ "description": "Parameter 3"
+ }
+ }
+ ]
+
+} \ No newline at end of file
diff --git a/asdc-controller/src/test/resources/ActivitySpecList.json b/asdc-controller/src/test/resources/ActivitySpecList.json
new file mode 100644
index 0000000000..c3530a2e7e
--- /dev/null
+++ b/asdc-controller/src/test/resources/ActivitySpecList.json
@@ -0,0 +1,398 @@
+{
+ "activitySpecList": [
+ {
+ "activitySpec": {
+ "name": "VNFQuiesceTrafficActivity",
+ "description": "Activity to QuiesceTraffic on VNF",
+ "version": null,
+ "created": null,
+ "workflowActivitySpecSequence": null,
+ "activitySpecActivitySpecCategories": null,
+ "activitySpecUserParameters": [
+ {
+ "activitySpecId": null,
+ "userParametersId": null,
+ "activitySpec": null,
+ "userParameters": {
+ "name": "operations_timeout",
+ "payloadLocation": "userParams",
+ "label": "Operations Timeout",
+ "type": "text",
+ "description": null,
+ "isRequried": true,
+ "maxLength": 50,
+ "allowableChars": "someRegEx",
+ "created": null,
+ "activitySpecUserParameters": null,
+ "id": null
+ },
+ "id": null
+ },
+ {
+ "activitySpecId": null,
+ "userParametersId": null,
+ "activitySpec": null,
+ "userParameters": {
+ "name": "existing_software_version",
+ "payloadLocation": "userParams",
+ "label": "Existing Software Version",
+ "type": "text",
+ "description": null,
+ "isRequried": true,
+ "maxLength": 50,
+ "allowableChars": "someRegEx",
+ "created": null,
+ "activitySpecUserParameters": null,
+ "id": null
+ },
+ "id": null
+ },
+ {
+ "activitySpecId": null,
+ "userParametersId": null,
+ "activitySpec": null,
+ "userParameters": {
+ "name": "cloudOwner",
+ "payloadLocation": "cloudConfiguration",
+ "label": "Cloud Owner",
+ "type": "text",
+ "description": null,
+ "isRequried": true,
+ "maxLength": 7,
+ "allowableChars": "someRegEx",
+ "created": null,
+ "activitySpecUserParameters": null,
+ "id": null
+ },
+ "id": null
+ },
+ {
+ "activitySpecId": null,
+ "userParametersId": null,
+ "activitySpec": null,
+ "userParameters": {
+ "name": "tenantId",
+ "payloadLocation": "cloudConfiguration",
+ "label": "Tenant/Project ID",
+ "type": "text",
+ "description": null,
+ "isRequried": true,
+ "maxLength": 36,
+ "allowableChars": "someRegEx",
+ "created": null,
+ "activitySpecUserParameters": null,
+ "id": null
+ },
+ "id": null
+ },
+ {
+ "activitySpecId": null,
+ "userParametersId": null,
+ "activitySpec": null,
+ "userParameters": {
+ "name": "new_software_version",
+ "payloadLocation": "userParams",
+ "label": "New Software Version",
+ "type": "text",
+ "description": null,
+ "isRequried": true,
+ "maxLength": 50,
+ "allowableChars": "someRegEx",
+ "created": null,
+ "activitySpecUserParameters": null,
+ "id": null
+ },
+ "id": null
+ },
+ {
+ "activitySpecId": null,
+ "userParametersId": null,
+ "activitySpec": null,
+ "userParameters": {
+ "name": "lcpCloudRegionId",
+ "payloadLocation": "cloudConfiguration",
+ "label": "Cloud Region ID",
+ "type": "text",
+ "description": null,
+ "isRequried": true,
+ "maxLength": 7,
+ "allowableChars": "someRegEx",
+ "created": null,
+ "activitySpecUserParameters": null,
+ "id": null
+ },
+ "id": null
+ }
+ ],
+ "activitySpecActivitySpecParameters": null,
+ "id": null
+ },
+ "workflow": null,
+ "id": null
+ },
+ {
+ "activitySpecId": null,
+ "workflowId": null,
+ "activitySpec": {
+ "name": "VNFHealthCheckActivity",
+ "description": "Activity to HealthCheck VNF",
+ "version": null,
+ "created": null,
+ "workflowActivitySpecSequence": null,
+ "activitySpecActivitySpecCategories": null,
+ "activitySpecUserParameters": [
+ {
+ "activitySpecId": null,
+ "userParametersId": null,
+ "activitySpec": null,
+ "userParameters": {
+ "name": "operations_timeout",
+ "payloadLocation": "userParams",
+ "label": "Operations Timeout",
+ "type": "text",
+ "description": null,
+ "isRequried": true,
+ "maxLength": 50,
+ "allowableChars": "someRegEx",
+ "created": null,
+ "activitySpecUserParameters": null,
+ "id": null
+ },
+ "id": null
+ },
+ {
+ "activitySpecId": null,
+ "userParametersId": null,
+ "activitySpec": null,
+ "userParameters": {
+ "name": "existing_software_version",
+ "payloadLocation": "userParams",
+ "label": "Existing Software Version",
+ "type": "text",
+ "description": null,
+ "isRequried": true,
+ "maxLength": 50,
+ "allowableChars": "someRegEx",
+ "created": null,
+ "activitySpecUserParameters": null,
+ "id": null
+ },
+ "id": null
+ },
+ {
+ "activitySpecId": null,
+ "userParametersId": null,
+ "activitySpec": null,
+ "userParameters": {
+ "name": "cloudOwner",
+ "payloadLocation": "cloudConfiguration",
+ "label": "Cloud Owner",
+ "type": "text",
+ "description": null,
+ "isRequried": true,
+ "maxLength": 7,
+ "allowableChars": "someRegEx",
+ "created": null,
+ "activitySpecUserParameters": null,
+ "id": null
+ },
+ "id": null
+ },
+ {
+ "activitySpecId": null,
+ "userParametersId": null,
+ "activitySpec": null,
+ "userParameters": {
+ "name": "tenantId",
+ "payloadLocation": "cloudConfiguration",
+ "label": "Tenant/Project ID",
+ "type": "text",
+ "description": null,
+ "isRequried": true,
+ "maxLength": 36,
+ "allowableChars": "someRegEx",
+ "created": null,
+ "activitySpecUserParameters": null,
+ "id": null
+ },
+ "id": null
+ },
+ {
+ "activitySpecId": null,
+ "userParametersId": null,
+ "activitySpec": null,
+ "userParameters": {
+ "name": "new_software_version",
+ "payloadLocation": "userParams",
+ "label": "New Software Version",
+ "type": "text",
+ "description": null,
+ "isRequried": true,
+ "maxLength": 50,
+ "allowableChars": "someRegEx",
+ "created": null,
+ "activitySpecUserParameters": null,
+ "id": null
+ },
+ "id": null
+ },
+ {
+ "activitySpecId": null,
+ "userParametersId": null,
+ "activitySpec": null,
+ "userParameters": {
+ "name": "lcpCloudRegionId",
+ "payloadLocation": "cloudConfiguration",
+ "label": "Cloud Region ID",
+ "type": "text",
+ "description": null,
+ "isRequried": true,
+ "maxLength": 7,
+ "allowableChars": "someRegEx",
+ "created": null,
+ "activitySpecUserParameters": null,
+ "id": null
+ },
+ "id": null
+ }
+ ],
+ "activitySpecActivitySpecParameters": null,
+ "id": null
+ },
+ "workflow": null,
+ "id": null
+ },
+ {
+ "activitySpecId": null,
+ "workflowId": null,
+ "activitySpec": {
+ "name": "FlowCompleteActivity",
+ "description": "Activity to Complete the BPMN Flow",
+ "version": null,
+ "created": null,
+ "workflowActivitySpecSequence": null,
+ "activitySpecActivitySpecCategories": null,
+ "activitySpecUserParameters": [
+ {
+ "activitySpecId": null,
+ "userParametersId": null,
+ "activitySpec": null,
+ "userParameters": {
+ "name": "operations_timeout",
+ "payloadLocation": "userParams",
+ "label": "Operations Timeout",
+ "type": "text",
+ "description": null,
+ "isRequried": true,
+ "maxLength": 50,
+ "allowableChars": "someRegEx",
+ "created": null,
+ "activitySpecUserParameters": null,
+ "id": null
+ },
+ "id": null
+ },
+ {
+ "activitySpecId": null,
+ "userParametersId": null,
+ "activitySpec": null,
+ "userParameters": {
+ "name": "existing_software_version",
+ "payloadLocation": "userParams",
+ "label": "Existing Software Version",
+ "type": "text",
+ "description": null,
+ "isRequried": true,
+ "maxLength": 50,
+ "allowableChars": "someRegEx",
+ "created": null,
+ "activitySpecUserParameters": null,
+ "id": null
+ },
+ "id": null
+ },
+ {
+ "activitySpecId": null,
+ "userParametersId": null,
+ "activitySpec": null,
+ "userParameters": {
+ "name": "cloudOwner",
+ "payloadLocation": "cloudConfiguration",
+ "label": "Cloud Owner",
+ "type": "text",
+ "description": null,
+ "isRequried": true,
+ "maxLength": 7,
+ "allowableChars": "someRegEx",
+ "created": null,
+ "activitySpecUserParameters": null,
+ "id": null
+ },
+ "id": null
+ },
+ {
+ "activitySpecId": null,
+ "userParametersId": null,
+ "activitySpec": null,
+ "userParameters": {
+ "name": "tenantId",
+ "payloadLocation": "cloudConfiguration",
+ "label": "Tenant/Project ID",
+ "type": "text",
+ "description": null,
+ "isRequried": true,
+ "maxLength": 36,
+ "allowableChars": "someRegEx",
+ "created": null,
+ "activitySpecUserParameters": null,
+ "id": null
+ },
+ "id": null
+ },
+ {
+ "activitySpecId": null,
+ "userParametersId": null,
+ "activitySpec": null,
+ "userParameters": {
+ "name": "new_software_version",
+ "payloadLocation": "userParams",
+ "label": "New Software Version",
+ "type": "text",
+ "description": null,
+ "isRequried": true,
+ "maxLength": 50,
+ "allowableChars": "someRegEx",
+ "created": null,
+ "activitySpecUserParameters": null,
+ "id": null
+ },
+ "id": null
+ },
+ {
+ "activitySpecId": null,
+ "userParametersId": null,
+ "activitySpec": null,
+ "userParameters": {
+ "name": "lcpCloudRegionId",
+ "payloadLocation": "cloudConfiguration",
+ "label": "Cloud Region ID",
+ "type": "text",
+ "description": null,
+ "isRequried": true,
+ "maxLength": 7,
+ "allowableChars": "someRegEx",
+ "created": null,
+ "activitySpecUserParameters": null,
+ "id": null
+ },
+ "id": null
+ }
+ ],
+ "activitySpecActivitySpecParameters": null,
+ "id": null
+ },
+ "workflow": null,
+ "id": null
+ }
+ ]
+} \ No newline at end of file
diff --git a/asdc-controller/src/test/resources/data.sql b/asdc-controller/src/test/resources/data.sql
index 7cd972ca63..47e6c4c982 100644
--- a/asdc-controller/src/test/resources/data.sql
+++ b/asdc-controller/src/test/resources/data.sql
@@ -22,6 +22,196 @@ INSERT INTO temp_network_heat_template_lookup(NETWORK_RESOURCE_MODEL_NAME, HEAT_
INSERT INTO temp_network_heat_template_lookup(NETWORK_RESOURCE_MODEL_NAME, HEAT_TEMPLATE_ARTIFACT_UUID, AIC_VERSION_MIN, AIC_VERSION_MAX) VALUES
('SRIOV_PROVIDER_NETWORK', 'ff874603-4222-11e7-9252-005056850d2e', '3.0', NULL);
+insert into vnf_resource(orchestration_mode, description, creation_timestamp, model_uuid, aic_version_min, aic_version_max, model_invariant_uuid, model_version, model_name, tosca_node_type, heat_template_artifact_uuid) values
+('HEAT', '1607 vSAMP10a - inherent network', '2017-04-14 21:46:28', 'ff2ae348-214a-11e7-93ae-92361f002671', '', '', '2fff5b20-214b-11e7-93ae-92361f002671', '1.0', 'vSAMP10a', 'VF', null);
+
+insert into workflow(artifact_uuid, artifact_name, name, operation_name, version, description, body, resource_target, source) values
+('5b0c4322-643d-4c9f-b184-4516049e99b1', 'testingWorkflow', 'testingWorkflow', 'create', 1, 'Test Workflow', null, 'vnf', 'sdc');
+
+insert into vnf_resource_to_workflow(vnf_resource_model_uuid, workflow_id) values
+('ff2ae348-214a-11e7-93ae-92361f002671', '1');
+
+insert into activity_spec(name, description, version) values
+('testActivity1', 'Test Activity 1', 1.0);
+
+insert into workflow_activity_spec_sequence(workflow_id, activity_spec_id, seq_no) values
+(1, 1, 1);
+
+INSERT INTO activity_spec (NAME, DESCRIPTION, VERSION)
+VALUES
+('VNFSetInMaintFlagActivity','Activity to Set InMaint Flag in A&AI',1.0),
+('VNFCheckPserversLockedFlagActivity','Activity Check Pservers Locked Flag VNF',1.0),
+('VNFCheckInMaintFlagActivity','Activity CheckIn Maint Flag on VNF',1.0),
+('VNFCheckClosedLoopDisabledFlagActivity','Activity Check Closed Loop Disabled Flag on VNF',1.0),
+('VNFSetClosedLoopDisabledFlagActivity','Activity Set Closed Loop Disabled Flag on VNF',1.0),
+('VNFUnsetClosedLoopDisabledFlagActivity','Activity Unset Closed Loop Disabled Flag on VNF',1.0),
+('VNFLockActivity','Activity Lock on VNF',1.0),
+('VNFUnlockActivity','Activity UnLock on VNF',1.0),
+('VNFStopActivity','Activity Stop on VNF',1.0),
+('VNFStartActivity','Activity Start on VNF',1.0),
+('VNFSnapShotActivity','Activity Snap Shot on VNF',1.0),
+('FlowCompleteActivity','Activity Complete on VNF',1.0),
+('PauseForManualTaskActivity','Activity Pause For Manual Task on VNF',1.0),
+('DistributeTrafficActivity','Activity Distribute Traffic on VNF',1.0),
+('DistributeTrafficCheckActivity','Activity Distribute Traffic Check on VNF',1.0),
+('VNFHealthCheckActivity','Activity Health Check on VNF',1.0),
+('VNFQuiesceTrafficActivity','Activity Quiesce Traffic on VNF',1.0),
+('VNFResumeTrafficActivity','Activity Resume Traffic on VNF',1.0),
+('VNFUnsetInMaintFlagActivity','Activity Unset InMaint Flag on VNF',1.0),
+('VNFUpgradeBackupActivity','Activity Upgrade Backup on VNF',1.0),
+('VNFUpgradePostCheckActivity','Activity Upgrade Post Check on VNF',1.0),
+('VNFUpgradePreCheckActivity','Activity Upgrade PreCheck on VNF',1.0),
+('VNFUpgradeSoftwareActivity','Activity UpgradeS oftware on VNF',1.0),
+('VnfInPlaceSoftwareUpdate','Activity InPlace Software Update on VNF',1.0);
+
+INSERT INTO activity_spec_categories (NAME)
+VALUES ('VNF');
+
+INSERT INTO activity_spec_to_activity_spec_categories(ACTIVITY_SPEC_ID, ACTIVITY_SPEC_CATEGORIES_ID)
+VALUES
+((select ID from activity_spec where NAME='VNFSetInMaintFlagActivity' and VERSION=1.0),
+(select ID from activity_spec_categories where NAME='VNF')),
+((select ID from activity_spec where NAME='VNFCheckPserversLockedFlagActivity' and VERSION=1.0),
+(select ID from activity_spec_categories where NAME='VNF')),
+((select ID from activity_spec where NAME='VNFCheckInMaintFlagActivity' and VERSION=1.0),
+(select ID from activity_spec_categories where NAME='VNF')),
+((select ID from activity_spec where NAME='VNFCheckClosedLoopDisabledFlagActivity' and VERSION=1.0),
+(select ID from activity_spec_categories where NAME='VNF')),
+((select ID from activity_spec where NAME='VNFSetClosedLoopDisabledFlagActivity' and VERSION=1.0),
+(select ID from activity_spec_categories where NAME='VNF')),
+((select ID from activity_spec where NAME='VNFUnsetClosedLoopDisabledFlagActivity' and VERSION=1.0),
+(select ID from activity_spec_categories where NAME='VNF')),
+((select ID from activity_spec where NAME='VNFLockActivity' and VERSION=1.0),
+(select ID from activity_spec_categories where NAME='VNF')),
+((select ID from activity_spec where NAME='VNFUnlockActivity' and VERSION=1.0),
+(select ID from activity_spec_categories where NAME='VNF')),
+((select ID from activity_spec where NAME='VNFStopActivity' and VERSION=1.0),
+(select ID from activity_spec_categories where NAME='VNF')),
+((select ID from activity_spec where NAME='VNFStartActivity' and VERSION=1.0),
+(select ID from activity_spec_categories where NAME='VNF')),
+((select ID from activity_spec where NAME='VNFSnapShotActivity' and VERSION=1.0),
+(select ID from activity_spec_categories where NAME='VNF')),
+((select ID from activity_spec where NAME='FlowCompleteActivity' and VERSION=1.0),
+(select ID from activity_spec_categories where NAME='VNF')),
+((select ID from activity_spec where NAME='PauseForManualTaskActivity' and VERSION=1.0),
+(select ID from activity_spec_categories where NAME='VNF')),
+((select ID from activity_spec where NAME='DistributeTrafficActivity' and VERSION=1.0),
+(select ID from activity_spec_categories where NAME='VNF')),
+((select ID from activity_spec where NAME='DistributeTrafficCheckActivity' and VERSION=1.0),
+(select ID from activity_spec_categories where NAME='VNF')),
+((select ID from activity_spec where NAME='VNFHealthCheckActivity' and VERSION=1.0),
+(select ID from activity_spec_categories where NAME='VNF')),
+((select ID from activity_spec where NAME='VNFQuiesceTrafficActivity' and VERSION=1.0),
+(select ID from activity_spec_categories where NAME='VNF')),
+((select ID from activity_spec where NAME='VNFResumeTrafficActivity' and VERSION=1.0),
+(select ID from activity_spec_categories where NAME='VNF')),
+((select ID from activity_spec where NAME='VNFUnsetInMaintFlagActivity' and VERSION=1.0),
+(select ID from activity_spec_categories where NAME='VNF')),
+((select ID from activity_spec where NAME='VNFUpgradeBackupActivity' and VERSION=1.0),
+(select ID from activity_spec_categories where NAME='VNF')),
+((select ID from activity_spec where NAME='VNFUpgradePostCheckActivity' and VERSION=1.0),
+(select ID from activity_spec_categories where NAME='VNF')),
+((select ID from activity_spec where NAME='VNFUpgradePreCheckActivity' and VERSION=1.0),
+(select ID from activity_spec_categories where NAME='VNF')),
+((select ID from activity_spec where NAME='VNFUpgradeSoftwareActivity' and VERSION=1.0),
+(select ID from activity_spec_categories where NAME='VNF')),
+((select ID from activity_spec where NAME='VnfInPlaceSoftwareUpdate' and VERSION=1.0),
+(select ID from activity_spec_categories where NAME='VNF'));
+
+INSERT INTO activity_spec_parameters (NAME, TYPE, DIRECTION, DESCRIPTION)
+VALUES('WorkflowException','WorkflowException','output','Description');
+
+INSERT INTO activity_spec_to_activity_spec_parameters( ACTIVITY_SPEC_ID, ACTIVITY_SPEC_PARAMETERS_ID)
+VALUES
+((select ID from activity_spec where NAME='VNFSetInMaintFlagActivity' and VERSION=1.0),
+(select ID from activity_spec_parameters where NAME='WorkflowException' and DIRECTION='output')),
+((select ID from activity_spec where NAME='VNFCheckPserversLockedFlagActivity' and VERSION=1.0),
+(select ID from activity_spec_parameters where NAME='WorkflowException' and DIRECTION='output')),
+((select ID from activity_spec where NAME='VNFCheckInMaintFlagActivity' and VERSION=1.0),
+(select ID from activity_spec_parameters where NAME='WorkflowException' and DIRECTION='output')),
+((select ID from activity_spec where NAME='VNFCheckClosedLoopDisabledFlagActivity' and VERSION=1.0),
+(select ID from activity_spec_parameters where NAME='WorkflowException' and DIRECTION='output')),
+((select ID from activity_spec where NAME='VNFSetClosedLoopDisabledFlagActivity' and VERSION=1.0),
+(select ID from activity_spec_parameters where NAME='WorkflowException' and DIRECTION='output')),
+((select ID from activity_spec where NAME='VNFUnsetClosedLoopDisabledFlagActivity' and VERSION=1.0),
+(select ID from activity_spec_parameters where NAME='WorkflowException' and DIRECTION='output')),
+((select ID from activity_spec where NAME='VNFLockActivity' and VERSION=1.0),
+(select ID from activity_spec_parameters where NAME='WorkflowException' and DIRECTION='output')),
+((select ID from activity_spec where NAME='VNFUnlockActivity' and VERSION=1.0),
+(select ID from activity_spec_parameters where NAME='WorkflowException' and DIRECTION='output')),
+((select ID from activity_spec where NAME='VNFStopActivity' and VERSION=1.0),
+(select ID from activity_spec_parameters where NAME='WorkflowException' and DIRECTION='output')),
+((select ID from activity_spec where NAME='VNFStartActivity' and VERSION=1.0),
+(select ID from activity_spec_parameters where NAME='WorkflowException' and DIRECTION='output')),
+((select ID from activity_spec where NAME='VNFSnapShotActivity' and VERSION=1.0),
+(select ID from activity_spec_parameters where NAME='WorkflowException' and DIRECTION='output')),
+((select ID from activity_spec where NAME='FlowCompleteActivity' and VERSION=1.0),
+(select ID from activity_spec_parameters where NAME='WorkflowException' and DIRECTION='output')),
+((select ID from activity_spec where NAME='PauseForManualTaskActivity' and VERSION=1.0),
+(select ID from activity_spec_parameters where NAME='WorkflowException' and DIRECTION='output')),
+((select ID from activity_spec where NAME='DistributeTrafficActivity' and VERSION=1.0),
+(select ID from activity_spec_parameters where NAME='WorkflowException' and DIRECTION='output')),
+((select ID from activity_spec where NAME='DistributeTrafficCheckActivity' and VERSION=1.0),
+(select ID from activity_spec_parameters where NAME='WorkflowException' and DIRECTION='output')),
+((select ID from activity_spec where NAME='VNFHealthCheckActivity' and VERSION=1.0),
+(select ID from activity_spec_parameters where NAME='WorkflowException' and DIRECTION='output')),
+((select ID from activity_spec where NAME='VNFQuiesceTrafficActivity' and VERSION=1.0),
+(select ID from activity_spec_parameters where NAME='WorkflowException' and DIRECTION='output')),
+((select ID from activity_spec where NAME='VNFResumeTrafficActivity' and VERSION=1.0),
+(select ID from activity_spec_parameters where NAME='WorkflowException' and DIRECTION='output')),
+((select ID from activity_spec where NAME='VNFUnsetInMaintFlagActivity' and VERSION=1.0),
+(select ID from activity_spec_parameters where NAME='WorkflowException' and DIRECTION='output')),
+((select ID from activity_spec where NAME='VNFUpgradeBackupActivity' and VERSION=1.0),
+(select ID from activity_spec_parameters where NAME='WorkflowException' and DIRECTION='output')),
+((select ID from activity_spec where NAME='VNFUpgradePostCheckActivity' and VERSION=1.0),
+(select ID from activity_spec_parameters where NAME='WorkflowException' and DIRECTION='output')),
+((select ID from activity_spec where NAME='VNFUpgradePreCheckActivity' and VERSION=1.0),
+(select ID from activity_spec_parameters where NAME='WorkflowException' and DIRECTION='output')),
+((select ID from activity_spec where NAME='VNFUpgradeSoftwareActivity' and VERSION=1.0),
+(select ID from activity_spec_parameters where NAME='WorkflowException' and DIRECTION='output'));
+
+INSERT INTO `user_parameters`(`NAME`,`PAYLOAD_LOCATION`,`LABEL`,`TYPE`,`DESCRIPTION`,`IS_REQUIRED`,`MAX_LENGTH`,`ALLOWABLE_CHARS`)
+VALUES
+('cloudOwner','cloudConfiguration','Cloud Owner','text','',1,7,''),
+('operations_timeout','userParams','Operations Timeout','text','',1,50,''),
+('existing_software_version','userParams','Existing Software Version','text','',1,50,''),
+('tenantId','cloudConfiguration','Tenant/Project ID','text','',1,36,''),
+('new_software_version','userParams','New Software Version','text','',1,50,''),
+('lcpCloudRegionId','cloudConfiguration','Cloud Region ID','text','',1,7,'');
+
+INSERT INTO `activity_spec_to_user_parameters`(`ACTIVITY_SPEC_ID`,`USER_PARAMETERS_ID`)
+VALUES
+((select ID from activity_spec where NAME='VNFStopActivity' and VERSION=1.0),
+(select ID from user_parameters where NAME='lcpCloudRegionId')),
+((select ID from activity_spec where NAME='VNFStopActivity' and VERSION=1.0),
+(select ID from user_parameters where NAME='tenantId')),
+((select ID from activity_spec where NAME='VNFStartActivity' and VERSION=1.0),
+(select ID from user_parameters where NAME='lcpCloudRegionId')),
+((select ID from activity_spec where NAME='VNFStartActivity' and VERSION=1.0),
+(select ID from user_parameters where NAME='tenantId')),
+((select ID from activity_spec where NAME='VNFSnapShotActivity' and VERSION=1.0),
+(select ID from user_parameters where NAME='lcpCloudRegionId')),
+((select ID from activity_spec where NAME='VNFSnapShotActivity' and VERSION=1.0),
+(select ID from user_parameters where NAME='tenantId')),
+((select ID from activity_spec where NAME='VNFQuiesceTrafficActivity' and VERSION=1.0),
+(select ID from user_parameters where NAME='operations_timeout')),
+((select ID from activity_spec where NAME='VNFUpgradeBackupActivity' and VERSION=1.0),
+(select ID from user_parameters where NAME='existing_software_version')),
+((select ID from activity_spec where NAME='VNFUpgradeBackupActivity' and VERSION=1.0),
+(select ID from user_parameters where NAME='new_software_version')),
+((select ID from activity_spec where NAME='VNFUpgradePostCheckActivity' and VERSION=1.0),
+(select ID from user_parameters where NAME='existing_software_version')),
+((select ID from activity_spec where NAME='VNFUpgradePostCheckActivity' and VERSION=1.0),
+(select ID from user_parameters where NAME='new_software_version')),
+((select ID from activity_spec where NAME='VNFUpgradePreCheckActivity' and VERSION=1.0),
+(select ID from user_parameters where NAME='existing_software_version')),
+((select ID from activity_spec where NAME='VNFUpgradePreCheckActivity' and VERSION=1.0),
+(select ID from user_parameters where NAME='new_software_version')),
+((select ID from activity_spec where NAME='VNFUpgradeSoftwareActivity' and VERSION=1.0),
+(select ID from user_parameters where NAME='existing_software_version')),
+((select ID from activity_spec where NAME='VNFUpgradeSoftwareActivity' and VERSION=1.0),
+(select ID from user_parameters where NAME='new_software_version'));
+
--------START Request DB INSERTS --------
insert into requestdb.watchdog_distributionid_status(DISTRIBUTION_ID, DISTRIBUTION_ID_STATUS,LOCK_VERSION) values
@@ -61,4 +251,4 @@ insert into requestdb.watchdog_per_component_distribution_status(DISTRIBUTION_ID
insert into requestdb.watchdog_service_mod_ver_id_lookup(DISTRIBUTION_ID, SERVICE_MODEL_VERSION_ID, DISTRIBUTION_NOTIFICATION, CONSUMER_ID) values
('watchdogTestStatusSuccess', '5df8b6de-2083-11e7-93ae-92361f002671', NULL, NULL),
-('watchdogTestStatusNull', '00000000-0000-0000-0000-000000000000', NULL, NULL);
+('watchdogTestStatusNull', '00000000-0000-0000-0000-000000000000', NULL, NULL); \ No newline at end of file
diff --git a/asdc-controller/src/test/resources/schema.sql b/asdc-controller/src/test/resources/schema.sql
index 0b48b2e35f..8cc5ee9d49 100644
--- a/asdc-controller/src/test/resources/schema.sql
+++ b/asdc-controller/src/test/resources/schema.sql
@@ -283,6 +283,7 @@ DROP TABLE IF EXISTS `configuration_customization`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `configuration_customization` (
+ `ID` int(11) NOT NULL AUTO_INCREMENT,
`MODEL_CUSTOMIZATION_UUID` varchar(200) NOT NULL,
`MODEL_INSTANCE_NAME` varchar(200) NOT NULL,
`CONFIGURATION_TYPE` varchar(200) DEFAULT NULL,
@@ -291,27 +292,18 @@ CREATE TABLE `configuration_customization` (
`CREATION_TIMESTAMP` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`CONFIGURATION_MODEL_UUID` varchar(200) NOT NULL,
`SERVICE_PROXY_CUSTOMIZATION_MODEL_CUSTOMIZATION_UUID` varchar(200) DEFAULT NULL,
- `CONFIGURATION_CUSTOMIZATION_MODEL_CUSTOMIZATION_UUID` varchar(200) DEFAULT NULL,
- PRIMARY KEY (`MODEL_CUSTOMIZATION_UUID`),
- KEY `fk_configuration_customization__configuration_idx` (`CONFIGURATION_MODEL_UUID`),
- KEY `fk_configuration_customization__service_proxy_customization_idx` (`SERVICE_PROXY_CUSTOMIZATION_MODEL_CUSTOMIZATION_UUID`),
- KEY `fk_configuration_customization__configuration_customization_idx` (`CONFIGURATION_CUSTOMIZATION_MODEL_CUSTOMIZATION_UUID`),
- CONSTRAINT `fk_configuration_customization__configuration_customization1` FOREIGN KEY (`CONFIGURATION_CUSTOMIZATION_MODEL_CUSTOMIZATION_UUID`) REFERENCES `configuration_customization` (`MODEL_CUSTOMIZATION_UUID`) ON DELETE CASCADE ON UPDATE CASCADE,
- CONSTRAINT `fk_configuration_resource_customization__configuration_resour1` FOREIGN KEY (`CONFIGURATION_MODEL_UUID`) REFERENCES `configuration` (`MODEL_UUID`) ON DELETE CASCADE ON UPDATE CASCADE
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Table structure for table `configuration_customization_to_service`
---
-
-DROP TABLE IF EXISTS `configuration_customization_to_service`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `configuration_customization_to_service` (
- `SERVICE_MODEL_UUID` varchar(200) NOT NULL,
- `RESOURCE_MODEL_CUSTOMIZATION_UUID` varchar(200) NOT NULL,
- PRIMARY KEY (`SERVICE_MODEL_UUID`,`RESOURCE_MODEL_CUSTOMIZATION_UUID`)
+ `CONFIGURATION_CUSTOMIZATION_MODEL_CUSTOMIZATION_ID` int(11) DEFAULT NULL,
+ `SERVICE_MODEL_UUID` varchar(200),
+ PRIMARY KEY (`ID`),
+ KEY `fk_configuration_customization__configuration_idx` (`CONFIGURATION_MODEL_UUID`),
+ KEY `fk_configuration_customization__service_idx` (`SERVICE_MODEL_UUID`),
+ UNIQUE KEY `uk_configuration_customization` (`MODEL_CUSTOMIZATION_UUID` ASC, `SERVICE_MODEL_UUID` ASC),
+ CONSTRAINT `fk_configuration_customization__configuration1` FOREIGN KEY (`CONFIGURATION_MODEL_UUID`)
+ REFERENCES `configuration` (`MODEL_UUID`)
+ ON DELETE CASCADE ON UPDATE CASCADE,
+ CONSTRAINT `fk_configuration_customization__service1` FOREIGN KEY (`SERVICE_MODEL_UUID`)
+ REFERENCES `service` (`MODEL_UUID`)
+ ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -1204,9 +1196,10 @@ CREATE TABLE IF NOT EXISTS `pnf_resource_customization` (
CREATE TABLE IF NOT EXISTS `pnf_resource_customization_to_service` (
`SERVICE_MODEL_UUID` varchar(200) NOT NULL,
`RESOURCE_MODEL_CUSTOMIZATION_UUID` varchar(200) NOT NULL,
- PRIMARY KEY (`SERVICE_MODEL_UUID`,`RESOURCE_MODEL_CUSTOMIZATION_UUID`)
+ PRIMARY KEY (`SERVICE_MODEL_UUID`,`RESOURCE_MODEL_CUSTOMIZATION_UUID`)
)ENGINE=InnoDB DEFAULT CHARSET=latin1;
+
CREATE TABLE IF NOT EXISTS `workflow` (
`ID` int(11) NOT NULL AUTO_INCREMENT,
`ARTIFACT_UUID` varchar(200) NOT NULL,
@@ -1370,7 +1363,6 @@ ENGINE = InnoDB
DEFAULT CHARACTER SET = latin1;
-
--------START Request DB SCHEMA --------
CREATE DATABASE requestdb;
USE requestdb;