summaryrefslogtreecommitdiffstats
path: root/workflow-designer-be/src
diff options
context:
space:
mode:
authorYarin Dekel <yarind@amdocs.com>2018-12-26 13:14:01 +0200
committerYarin Dekel <yarind@amdocs.com>2018-12-26 13:14:05 +0200
commitbd2841ad36ef57983f8669b470e661d46d309012 (patch)
tree01ef36edbdab7c80298db0382b4ca635127cfd8b /workflow-designer-be/src
parent11ed075eb955be52b1326692fe401dd8e743f4c2 (diff)
WF-validation to empty artifact
Issue-ID: SDC-2023 Change-Id: Idcc690cfad19da0d29232c93b202042f6230ffaf Signed-off-by: Yarin Dekel <yarind@amdocs.com>
Diffstat (limited to 'workflow-designer-be/src')
-rw-r--r--workflow-designer-be/src/main/java/org/onap/sdc/workflow/services/impl/WorkflowVersionManagerImpl.java7
-rw-r--r--workflow-designer-be/src/test/java/org/onap/sdc/workflow/services/impl/WorkflowVersionManagerImplTest.java19
2 files changed, 20 insertions, 6 deletions
diff --git a/workflow-designer-be/src/main/java/org/onap/sdc/workflow/services/impl/WorkflowVersionManagerImpl.java b/workflow-designer-be/src/main/java/org/onap/sdc/workflow/services/impl/WorkflowVersionManagerImpl.java
index 0078d226..33210778 100644
--- a/workflow-designer-be/src/main/java/org/onap/sdc/workflow/services/impl/WorkflowVersionManagerImpl.java
+++ b/workflow-designer-be/src/main/java/org/onap/sdc/workflow/services/impl/WorkflowVersionManagerImpl.java
@@ -232,9 +232,10 @@ public class WorkflowVersionManagerImpl implements WorkflowVersionManager {
workflowId, versionId);
throw new VersionModificationException(workflowId, versionId);
}
-
- artifactRepository.delete(workflowId, versionId);
- versioningManager.publish(workflowId, new Version(versionId), "Delete Artifact");
+ if(retrievedVersion.isHasArtifact()) {
+ artifactRepository.delete(workflowId, versionId);
+ versioningManager.publish(workflowId, new Version(versionId), "Delete Artifact");
+ }
}
private void validateVersionExistAndCertified(String workflowId, List<Version> versions, String versionId) {
diff --git a/workflow-designer-be/src/test/java/org/onap/sdc/workflow/services/impl/WorkflowVersionManagerImplTest.java b/workflow-designer-be/src/test/java/org/onap/sdc/workflow/services/impl/WorkflowVersionManagerImplTest.java
index 640d3e8b..8e714f62 100644
--- a/workflow-designer-be/src/test/java/org/onap/sdc/workflow/services/impl/WorkflowVersionManagerImplTest.java
+++ b/workflow-designer-be/src/test/java/org/onap/sdc/workflow/services/impl/WorkflowVersionManagerImplTest.java
@@ -399,15 +399,28 @@ public class WorkflowVersionManagerImplTest {
}
@Test
- public void shouldDeleteArtifact() {
+ public void shouldNotDeleteArtifactIfNotExist() {
doNothing().when(workflowVersionManager).validateWorkflowStatus(ITEM1_ID);
Version version = new Version(VERSION1_ID);
doReturn(version).when(versioningManagerMock).get(ITEM1_ID, version);
WorkflowVersion workflowVersion = new WorkflowVersion(VERSION1_ID);
doReturn(workflowVersion).when(versionMapperMock).versionToWorkflowVersion(version);
workflowVersionManager.deleteArtifact(ITEM1_ID, VERSION1_ID);
- verify(artifactRepositoryMock).delete(ITEM1_ID, VERSION1_ID);
- verify(versioningManagerMock).publish(ITEM1_ID, version, "Delete Artifact");
+ verify(artifactRepositoryMock, times(0)).delete(ITEM1_ID, VERSION1_ID);
+ verify(versioningManagerMock, times(0)).publish(ITEM1_ID, version, "Delete Artifact");
+ }
+
+ @Test
+ public void shouldDeleteArtifactIfExist() {
+ doNothing().when(workflowVersionManager).validateWorkflowStatus(ITEM1_ID);
+ Version version = new Version(VERSION1_ID);
+ doReturn(version).when(versioningManagerMock).get(ITEM1_ID, version);
+ WorkflowVersion workflowVersion = new WorkflowVersion(VERSION1_ID);
+ doReturn(true).when(artifactRepositoryMock).isExist(ITEM1_ID, VERSION1_ID);
+ doReturn(workflowVersion).when(versionMapperMock).versionToWorkflowVersion(version);
+ workflowVersionManager.deleteArtifact(ITEM1_ID, VERSION1_ID);
+ verify(artifactRepositoryMock, times(1)).delete(ITEM1_ID, VERSION1_ID);
+ verify(versioningManagerMock, times(1)).publish(ITEM1_ID, version, "Delete Artifact");
}
private static Version eqVersion(String versionId) {