aboutsummaryrefslogtreecommitdiffstats
path: root/asdc-controller
diff options
context:
space:
mode:
authorElena Kuleshov <evn@att.com>2019-06-06 01:10:32 -0400
committerElena Kuleshov <evn@att.com>2019-06-10 12:25:11 -0400
commit0bac473ab80a2f64b85df51dbaf432ecde73341e (patch)
treefbf71af99a417a9dc3f7d3dc60ad21ce4afd943c /asdc-controller
parentd0cd4dc3d204e80a7419c97b6b0ec59273984a99 (diff)
Beans fixes to workflow record creation
Changes to enable cascading creates and proper id referencing Issue-ID: SO-1998 Signed-off-by: Kuleshov, Elena <evn@att.com> Change-Id: I6c08fc22fbbba1d0d2b8dc04e390cd0b3de64327
Diffstat (limited to 'asdc-controller')
-rw-r--r--asdc-controller/src/main/java/org/onap/so/asdc/installer/bpmn/WorkflowResource.java11
-rw-r--r--asdc-controller/src/test/java/org/onap/so/asdc/installer/bpmn/WorkflowResourceTest.java81
-rw-r--r--asdc-controller/src/test/resources/resource-examples/WorkflowBpmn/workflow-distribution.json2
3 files changed, 60 insertions, 34 deletions
diff --git a/asdc-controller/src/main/java/org/onap/so/asdc/installer/bpmn/WorkflowResource.java b/asdc-controller/src/main/java/org/onap/so/asdc/installer/bpmn/WorkflowResource.java
index daeda2f976..a769b6a2e4 100644
--- a/asdc-controller/src/main/java/org/onap/so/asdc/installer/bpmn/WorkflowResource.java
+++ b/asdc-controller/src/main/java/org/onap/so/asdc/installer/bpmn/WorkflowResource.java
@@ -122,13 +122,14 @@ public class WorkflowResource {
VnfResourceWorkflow vnfResourceWorkflow = new VnfResourceWorkflow();
vnfResourceWorkflow.setVnfResourceModelUUID(vfResourceModelUuid);
+ vnfResourceWorkflow.setWorkflow(workflow);
List<VnfResourceWorkflow> vnfResourceWorkflows = new ArrayList<VnfResourceWorkflow>();
vnfResourceWorkflows.add(vnfResourceWorkflow);
workflow.setVnfResourceWorkflow(vnfResourceWorkflows);
List<String> activityNames = getActivityNameList(artifact.getResult());
- List<WorkflowActivitySpecSequence> wfss = getWorkflowActivitySpecSequence(activityNames);
+ List<WorkflowActivitySpecSequence> wfss = getWorkflowActivitySpecSequence(activityNames, workflow);
workflow.setWorkflowActivitySpecSequence(wfss);
workflowRepo.save(workflow);
@@ -166,17 +167,21 @@ public class WorkflowResource {
return activityNameList;
}
- protected List<WorkflowActivitySpecSequence> getWorkflowActivitySpecSequence(List<String> activityNames)
- throws Exception {
+ protected List<WorkflowActivitySpecSequence> getWorkflowActivitySpecSequence(List<String> activityNames,
+ Workflow workflow) throws Exception {
if (activityNames == null || activityNames.size() == 0) {
return null;
}
List<WorkflowActivitySpecSequence> workflowActivitySpecs = new ArrayList<WorkflowActivitySpecSequence>();
+ int seqNo = 1;
for (String activityName : activityNames) {
ActivitySpec activitySpec = activityRepo.findByName(activityName);
if (activitySpec != null) {
WorkflowActivitySpecSequence workflowActivitySpec = new WorkflowActivitySpecSequence();
workflowActivitySpec.setActivitySpec(activitySpec);
+ workflowActivitySpec.setWorkflow(workflow);
+ workflowActivitySpec.setSeqNo(seqNo);
+ seqNo++;
workflowActivitySpecs.add(workflowActivitySpec);
}
}
diff --git a/asdc-controller/src/test/java/org/onap/so/asdc/installer/bpmn/WorkflowResourceTest.java b/asdc-controller/src/test/java/org/onap/so/asdc/installer/bpmn/WorkflowResourceTest.java
index e655245c31..5a736217b7 100644
--- a/asdc-controller/src/test/java/org/onap/so/asdc/installer/bpmn/WorkflowResourceTest.java
+++ b/asdc-controller/src/test/java/org/onap/so/asdc/installer/bpmn/WorkflowResourceTest.java
@@ -22,45 +22,27 @@
package org.onap.so.asdc.installer.bpmn;
-import static org.assertj.core.api.Assertions.assertThat;
import static org.junit.Assert.*;
-import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.ArgumentMatchers.anyString;
-import static org.mockito.Mockito.doReturn;
-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.io.File;
-import java.io.FileInputStream;
-import java.io.InputStream;
import java.nio.file.Files;
-import java.nio.file.Path;
import java.nio.file.Paths;
+import java.util.ArrayList;
import java.util.List;
import javax.transaction.Transactional;
-import org.apache.commons.io.IOUtils;
-import org.apache.http.HttpEntity;
-import org.apache.http.HttpResponse;
-import org.apache.http.ProtocolVersion;
-import org.apache.http.client.HttpClient;
-import org.apache.http.client.methods.HttpPost;
-import org.apache.http.message.BasicHttpResponse;
-import org.apache.http.message.BasicStatusLine;
-import org.junit.AfterClass;
-import org.junit.Before;
-import org.junit.Rule;
import org.junit.Test;
-import org.junit.rules.TemporaryFolder;
-import org.onap.sdc.api.notification.IArtifactInfo;
+import org.onap.so.asdc.BaseTest;
+import org.onap.so.db.catalog.beans.VnfResourceWorkflow;
+import org.onap.so.db.catalog.beans.Workflow;
+import org.onap.so.db.catalog.beans.WorkflowActivitySpecSequence;
+import org.onap.so.db.catalog.data.repository.WorkflowRepository;
+import org.springframework.beans.factory.annotation.Autowired;
-@Transactional
-public class WorkflowResourceTest {
+public class WorkflowResourceTest extends BaseTest {
- private WorkflowResource workflowResource = new WorkflowResource();
+ @Autowired
+ private WorkflowResource workflowResource;
- private static final String TEST_CSAR = "src/test/resources/resource-examples/WorkflowBpmn/service-CxSvc-csar.csar";
- private Path tempDirectoryPath;
+ @Autowired
+ private WorkflowRepository workflowRepo;
@Test
public void getActivityNameList_Test() throws Exception {
@@ -106,4 +88,43 @@ public class WorkflowResourceTest {
assertTrue(workflowVersion == 1.0);
}
+ @Transactional
+ @Test
+ public void installWorkflowResource_Test() throws Exception {
+ Workflow workflow = new Workflow();
+
+ workflow.setArtifactChecksum("12345");
+ workflow.setArtifactName("myTestWorkflow1");
+ workflow.setArtifactUUID("a5c59864-8407-4175-8060-de8ff95eab41");
+ workflow.setBody("my body");
+ workflow.setDescription("testing workflow");
+ workflow.setName("myTestWorkflow1");
+ workflow.setResourceTarget("vnf");
+ workflow.setSource("sdc");
+ workflow.setTimeoutMinutes(5000);
+ workflow.setOperationName("myTestWorkflow");
+ workflow.setVersion(1.0);
+
+ VnfResourceWorkflow vnfResourceWorkflow = new VnfResourceWorkflow();
+ vnfResourceWorkflow.setVnfResourceModelUUID("ff2ae348-214a-11e7-93ae-92361f002671");
+
+ vnfResourceWorkflow.setWorkflow(workflow);
+ List<VnfResourceWorkflow> vnfResourceWorkflows = new ArrayList<VnfResourceWorkflow>();
+ vnfResourceWorkflows.add(vnfResourceWorkflow);
+
+ workflow.setVnfResourceWorkflow(vnfResourceWorkflows);
+
+ WorkflowActivitySpecSequence wfss1 = new WorkflowActivitySpecSequence();
+ wfss1.setActivitySpecId(1);
+ wfss1.setWorkflow(workflow);
+ wfss1.setSeqNo(1);
+
+ List<WorkflowActivitySpecSequence> wfss = new ArrayList<WorkflowActivitySpecSequence>();
+ wfss.add(wfss1);
+ workflow.setWorkflowActivitySpecSequence(wfss);
+
+ workflowRepo.save(workflow);
+
+ }
+
}
diff --git a/asdc-controller/src/test/resources/resource-examples/WorkflowBpmn/workflow-distribution.json b/asdc-controller/src/test/resources/resource-examples/WorkflowBpmn/workflow-distribution.json
index 9f49be5bbb..85a73aa239 100644
--- a/asdc-controller/src/test/resources/resource-examples/WorkflowBpmn/workflow-distribution.json
+++ b/asdc-controller/src/test/resources/resource-examples/WorkflowBpmn/workflow-distribution.json
@@ -11,7 +11,7 @@
"resourceName": "TestVF",
"resourceVersion": "1.0",
"resoucreType": "VF",
- "resourceUUID": "5185253e-4bef-4eb4-bbf9-8c328c787ebd",
+ "resourceUUID": "ff2ae348-214a-11e7-93ae-92361f002671",
"resourceInvariantUUID": "ea8264db-3e24-4324-87cc-12c6903ed43d",
"resourceCustomizationUUID": "a959a3cb-4988-435c-9cb7-5a40ef2ef2ac",
"category": "Allotted Resource",