aboutsummaryrefslogtreecommitdiffstats
path: root/workflow-designer-be/src/test/java/org/onap/sdc/workflow/services/impl
diff options
context:
space:
mode:
authorayalaben <ayala.benzvi@amdocs.com>2018-06-27 12:41:14 +0300
committerayalaben <ayala.benzvi@amdocs.com>2018-06-27 14:37:16 +0300
commit2dc593aabe936a21783d7d4e6b7475cab59be6a9 (patch)
treee4cea88a5b3a1b55ee5af52122f9b669589b326d /workflow-designer-be/src/test/java/org/onap/sdc/workflow/services/impl
parente9d97234f17d8ecdbfc0481d6a2ba2698d52ddd0 (diff)
Service layer unit tests
Change-Id: Ia1c87e81feab7b918a7af52ee1f52914e253dc09 Issue-ID: SDC-1445 Signed-off-by: ayalaben <ayala.benzvi@amdocs.com>
Diffstat (limited to 'workflow-designer-be/src/test/java/org/onap/sdc/workflow/services/impl')
-rw-r--r--workflow-designer-be/src/test/java/org/onap/sdc/workflow/services/impl/WorkflowManagerTest.java122
-rw-r--r--workflow-designer-be/src/test/java/org/onap/sdc/workflow/services/impl/WorkflowVersionManagerTest.java85
2 files changed, 207 insertions, 0 deletions
diff --git a/workflow-designer-be/src/test/java/org/onap/sdc/workflow/services/impl/WorkflowManagerTest.java b/workflow-designer-be/src/test/java/org/onap/sdc/workflow/services/impl/WorkflowManagerTest.java
new file mode 100644
index 00000000..31da825a
--- /dev/null
+++ b/workflow-designer-be/src/test/java/org/onap/sdc/workflow/services/impl/WorkflowManagerTest.java
@@ -0,0 +1,122 @@
+package org.onap.sdc.workflow.services.impl;
+
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.verify;
+import static org.onap.sdc.workflow.TestUtil.createItem;
+import static org.onap.sdc.workflow.TestUtil.createWorkflow;
+
+import java.util.Arrays;
+import java.util.List;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.onap.sdc.workflow.persistence.types.Workflow;
+import org.onap.sdc.workflow.services.UniqueValueService;
+import org.onap.sdc.workflow.services.exceptions.WorkflowNotFoundException;
+import org.onap.sdc.workflow.services.mappers.WorkflowMapper;
+import org.openecomp.sdc.versioning.ItemManager;
+import org.openecomp.sdc.versioning.types.Item;
+import org.openecomp.sdc.versioning.types.ItemStatus;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+
+@RunWith(SpringJUnit4ClassRunner.class)
+public class WorkflowManagerTest {
+
+ private static final String ITEM1_ID = "workflowId1";
+ private static final String ITEM2_ID = "workflowId2";
+ private static final String WORKFLOW_TYPE = "WORKFLOW";
+ private static final String WORKFLOW_NAME_UNIQUE_TYPE = "WORKFLOW_NAME";
+ private List<Item> itemList;
+
+ @Mock
+ WorkflowMapper workflowMapperMock;
+
+ @Mock
+ private ItemManager itemManagerMock;
+
+ @Mock
+ private UniqueValueService uniqueValueServiceMock;
+
+ @InjectMocks
+ private WorkflowManagerImpl workflowManager;
+
+
+
+ @Before
+ public void setUp(){
+ itemList = Arrays.asList(createItem(1,true,true),
+ createItem(2,true,true),createItem(3,true,true));
+
+ }
+
+
+ @Test
+ public void shouldReturnWorkflowVersionList(){
+
+ doReturn(itemList).when(itemManagerMock).list(workflowManager.ITEM_PREDICATE);
+ workflowManager.list();
+ verify(itemManagerMock).list(workflowManager.ITEM_PREDICATE);
+ }
+
+ @Test(expected = WorkflowNotFoundException.class)
+ public void shouldThrowExceptionWhenWorkflowDontExist(){
+ Workflow nonExistingWorkflow = new Workflow();
+ nonExistingWorkflow.setId(ITEM1_ID);
+ doReturn(null).when(itemManagerMock).get(ITEM1_ID);
+ workflowManager.get(nonExistingWorkflow);
+ verify(workflowMapperMock,times(3)).itemToWorkflow(any(Item.class));
+ }
+
+ @Test
+ public void shouldReturnWorkflow(){
+ Item retrievedItem = createItem(1,true,true);
+ doReturn(retrievedItem).when(itemManagerMock).get(ITEM1_ID);
+ Workflow workflow = createWorkflow(1,true);
+ workflowManager.get(workflow);
+ verify(itemManagerMock).get(ITEM1_ID);
+ verify(workflowMapperMock).itemToWorkflow(retrievedItem);
+
+
+ }
+
+ @Test
+ public void shouldCreateWorkflow() {
+ Workflow workflowToBeCreated = createWorkflow(1, false);
+ Item createdWorkflowItem = createItem(1, false, true);
+ doReturn(createdWorkflowItem).when(workflowMapperMock).workflowToItem(workflowToBeCreated);
+ doReturn(createdWorkflowItem).when(itemManagerMock).create(createdWorkflowItem);
+ workflowManager.create(workflowToBeCreated);
+ verify(uniqueValueServiceMock)
+ .validateUniqueValue(WORKFLOW_NAME_UNIQUE_TYPE, new String[] {workflowToBeCreated.getName()});
+
+ createdWorkflowItem.setStatus(ItemStatus.ACTIVE);
+ createdWorkflowItem.setType(WORKFLOW_TYPE);
+ verify(itemManagerMock).create(createdWorkflowItem);
+ verify(uniqueValueServiceMock)
+ .createUniqueValue(WORKFLOW_NAME_UNIQUE_TYPE, new String[] {workflowToBeCreated.getName()});
+ }
+
+ @Test
+ public void shouldUpdateWorkflow(){
+ Item workflowItem = createItem(1, true, true);
+ doReturn(workflowItem).when(itemManagerMock).get(ITEM1_ID);
+ Workflow workflowToBeUpdated = createWorkflow(1, true);
+ doReturn(workflowItem).when(workflowMapperMock).workflowToItem(workflowToBeUpdated);
+ workflowManager.update(workflowToBeUpdated);
+ verify(itemManagerMock).update(workflowItem);
+ verify(uniqueValueServiceMock)
+ .updateUniqueValue(WORKFLOW_NAME_UNIQUE_TYPE,workflowItem.getName(),workflowToBeUpdated.getName());
+
+ }
+
+ @Test(expected = WorkflowNotFoundException.class)
+ public void shouldThrowExceptionWhenWorkflowToUpdateNotFound(){
+ doReturn(null).when(itemManagerMock).get(ITEM1_ID);
+ workflowManager.update(createWorkflow(1, true));
+ }
+
+}
diff --git a/workflow-designer-be/src/test/java/org/onap/sdc/workflow/services/impl/WorkflowVersionManagerTest.java b/workflow-designer-be/src/test/java/org/onap/sdc/workflow/services/impl/WorkflowVersionManagerTest.java
new file mode 100644
index 00000000..d805a2b2
--- /dev/null
+++ b/workflow-designer-be/src/test/java/org/onap/sdc/workflow/services/impl/WorkflowVersionManagerTest.java
@@ -0,0 +1,85 @@
+package org.onap.sdc.workflow.services.impl;
+
+import static org.junit.Assert.assertEquals;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.doThrow;
+import static org.mockito.Mockito.verify;
+
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.List;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.Spy;
+import org.mockito.junit.MockitoJUnitRunner;
+import org.onap.sdc.workflow.services.exceptions.VersionNotFoundException;
+import org.openecomp.sdc.versioning.VersioningManager;
+import org.openecomp.sdc.versioning.dao.types.Version;
+import org.openecomp.sdc.versioning.types.VersionCreationMethod;
+
+@RunWith(MockitoJUnitRunner.class)
+public class WorkflowVersionManagerTest {
+
+
+ private static final String ITEM1_ID = "item_id_1";
+ private static final String VERSION1_ID = "version_id_1";
+ private static final String VERSION2_ID = "version_id_2";
+ private List<Version> versionList;
+
+ @Mock
+ private VersioningManager versioningManagerMock;
+
+ @Spy
+ @InjectMocks
+ private WorkflowVersionManagerImpl workflowVersionManager;
+
+ @Before
+ public void setUp(){
+ versionList = Arrays.asList( new Version(VERSION1_ID),new Version(VERSION2_ID));
+ }
+
+
+ @Test(expected = VersionNotFoundException.class)
+ public void shouldThrowExceptionWhenVersionDontExist(){
+ Version nonExistingVersion = new Version(VERSION1_ID);
+ doThrow(new RuntimeException()).when(versioningManagerMock).get(ITEM1_ID, nonExistingVersion);
+ workflowVersionManager.get(ITEM1_ID, nonExistingVersion);
+ }
+
+ @Test
+ public void shouldReturnWorkflowVersion(){
+ Version version = new Version(VERSION1_ID);
+ doReturn(version).when(versioningManagerMock).get(ITEM1_ID,version);
+ workflowVersionManager.get(ITEM1_ID,version);
+ verify(versioningManagerMock).get(ITEM1_ID,version);
+ }
+
+ @Test
+ public void shouldReturnWorkflowVersionList(){
+ doReturn(versionList).when(versioningManagerMock).list(ITEM1_ID);
+ Collection<Version> result = workflowVersionManager.list(ITEM1_ID);
+ verify(versioningManagerMock).list(ITEM1_ID);
+ assertEquals(versionList,result);
+ }
+
+ @Test
+ public void shouldUpdateWorkflowVersion(){
+ Version version = new Version(VERSION1_ID);
+ workflowVersionManager.update(ITEM1_ID,version);
+ verify(versioningManagerMock).updateVersion(ITEM1_ID,version);
+ }
+
+ @Test
+ public void shouldCreateWorkflowVersion(){
+ Version version = new Version();
+ workflowVersionManager.create(ITEM1_ID,version);
+ verify(versioningManagerMock).create(ITEM1_ID,version, VersionCreationMethod.major);
+ verify(workflowVersionManager).getLatestVersion(ITEM1_ID);
+ }
+
+
+
+}