aboutsummaryrefslogtreecommitdiffstats
path: root/workflow-designer-be/src/test/java
diff options
context:
space:
mode:
authorayalaben <ayala.benzvi@amdocs.com>2018-06-26 09:29:06 +0300
committerayalaben <ayala.benzvi@amdocs.com>2018-06-26 09:29:06 +0300
commite9d97234f17d8ecdbfc0481d6a2ba2698d52ddd0 (patch)
tree0990c708c3b50c84115efeecab6df5346d430749 /workflow-designer-be/src/test/java
parent3fb47c47b301bf8f401cabf63b13f17a39182d85 (diff)
workflow version API
Change-Id: Iadbf5325091084b4feca386740d6655845904d88 Issue-ID: SDC-1445 Signed-off-by: ayalaben <ayala.benzvi@amdocs.com>
Diffstat (limited to 'workflow-designer-be/src/test/java')
-rw-r--r--workflow-designer-be/src/test/java/org/onap/sdc/workflow/api/WorkflowVersionControllerTest.java118
-rw-r--r--workflow-designer-be/src/test/java/org/onap/sdc/workflow/services/WorkflowManagerTest.java41
-rw-r--r--workflow-designer-be/src/test/java/org/onap/sdc/workflow/services/WorkflowVersionManagerTest.java70
3 files changed, 229 insertions, 0 deletions
diff --git a/workflow-designer-be/src/test/java/org/onap/sdc/workflow/api/WorkflowVersionControllerTest.java b/workflow-designer-be/src/test/java/org/onap/sdc/workflow/api/WorkflowVersionControllerTest.java
new file mode 100644
index 00000000..96c31c82
--- /dev/null
+++ b/workflow-designer-be/src/test/java/org/onap/sdc/workflow/api/WorkflowVersionControllerTest.java
@@ -0,0 +1,118 @@
+package org.onap.sdc.workflow.api;
+
+import static org.hamcrest.Matchers.equalTo;
+import static org.hamcrest.Matchers.is;
+import static org.hamcrest.collection.IsCollectionWithSize.hasSize;
+import static org.junit.Assert.assertEquals;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.verify;
+import static org.springframework.http.MediaType.APPLICATION_JSON;
+import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get;
+import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post;
+import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.put;
+import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
+import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath;
+import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
+
+import com.google.gson.Gson;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+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.junit.MockitoJUnitRunner;
+import org.onap.sdc.workflow.api.impl.WorkflowVersionControllerImpl;
+import org.onap.sdc.workflow.services.WorkflowVersionManager;
+import org.openecomp.sdc.versioning.dao.types.Version;
+import org.springframework.http.HttpStatus;
+import org.springframework.mock.web.MockHttpServletResponse;
+import org.springframework.test.web.servlet.MockMvc;
+import org.springframework.test.web.servlet.setup.MockMvcBuilders;
+
+@RunWith(MockitoJUnitRunner.class)
+public class WorkflowVersionControllerTest {
+
+ private static final String USER_ID = "cs0008";
+ 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;
+
+ private static final Gson GSON = new Gson();
+
+ private MockMvc mockMvc;
+
+ @Mock
+ private WorkflowVersionManager workflowVersionManagerMock;
+
+ @InjectMocks
+ private WorkflowVersionControllerImpl workflowVersionController;
+
+ @Before
+ public void setUp() {
+ versionList = Arrays.asList( new Version(VERSION1_ID),new Version(VERSION2_ID));
+ mockMvc = MockMvcBuilders.standaloneSetup(workflowVersionController).build();
+ }
+
+ @Test
+ public void shouldReturnVersionListOfWorkflow() throws Exception {
+
+ doReturn(versionList).when(workflowVersionManagerMock).list(ITEM1_ID);
+ mockMvc.perform(get("/workflows/item_id_1/versions").header(RestConstants.USER_ID_HEADER_PARAM, USER_ID)
+ .contentType(APPLICATION_JSON)).andExpect(status().isOk())
+ .andExpect(jsonPath("$.results", hasSize(2)))
+ .andExpect(jsonPath("$.results[0].id", equalTo(VERSION1_ID)))
+ .andExpect(jsonPath("$.results[1].id", equalTo(VERSION2_ID)));
+
+ verify(workflowVersionManagerMock, times(1)).list(ITEM1_ID);
+ }
+
+
+ @Test
+ public void shouldCreateWorkflowVersion() throws Exception {
+
+ Version version = new Version();
+ version.setDescription("VersionDescription");
+ mockMvc.perform(post("/workflows/item_id_1/versions").header(RestConstants.USER_ID_HEADER_PARAM, USER_ID)
+ .contentType(APPLICATION_JSON)
+ .content(GSON.toJson(version)))
+ .andExpect(status().isCreated());
+
+ verify(workflowVersionManagerMock, times(1)).create(ITEM1_ID, version);
+ }
+
+
+ @Test
+ public void shouldReturnWorkflowVersionWhenExists() throws Exception {
+ Version version = new Version(VERSION1_ID);
+ doReturn(version).when(workflowVersionManagerMock).get(ITEM1_ID, version);
+ mockMvc.perform(
+ get("/workflows/item_id_1/versions/" + VERSION1_ID).header(RestConstants.USER_ID_HEADER_PARAM, USER_ID)
+ .contentType(APPLICATION_JSON)).andDo(print())
+ .andExpect(status().isOk()).andExpect(jsonPath("$.id", is(version.getId())));
+ verify(workflowVersionManagerMock, times(1)).get(ITEM1_ID, version);
+ }
+
+ @Test
+ public void shouldUpdateWorkflowVersion() throws Exception {
+ Version version = new Version();
+ version.setDescription("Updated");
+
+ MockHttpServletResponse result = mockMvc.perform(
+ put("/workflows/item_id_1/versions/" + VERSION1_ID).header(RestConstants.USER_ID_HEADER_PARAM, USER_ID)
+ .contentType(APPLICATION_JSON)
+ .content(GSON.toJson(version))).andReturn()
+ .getResponse();
+
+ assertEquals(HttpStatus.OK.value(), result.getStatus());
+ version.setId(VERSION1_ID);
+ verify(workflowVersionManagerMock, times(1)).update(ITEM1_ID, version);
+
+ }
+
+}
diff --git a/workflow-designer-be/src/test/java/org/onap/sdc/workflow/services/WorkflowManagerTest.java b/workflow-designer-be/src/test/java/org/onap/sdc/workflow/services/WorkflowManagerTest.java
new file mode 100644
index 00000000..02035a12
--- /dev/null
+++ b/workflow-designer-be/src/test/java/org/onap/sdc/workflow/services/WorkflowManagerTest.java
@@ -0,0 +1,41 @@
+package org.onap.sdc.workflow.services;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.mockito.junit.MockitoJUnitRunner;
+import org.onap.sdc.workflow.services.impl.WorkflowManagerImpl;
+import org.openecomp.sdc.versioning.ItemManager;
+import org.springframework.test.web.servlet.MockMvc;
+import org.springframework.test.web.servlet.setup.MockMvcBuilders;
+
+@RunWith(MockitoJUnitRunner.class)
+public class WorkflowManagerTest {
+
+ private MockMvc mockMvc;
+
+ @Mock
+ private ItemManager itemManager;
+
+ @Mock
+ private UniqueValueService uniqueValueService;
+
+ @InjectMocks
+ private WorkflowManagerImpl workflowManager;
+
+
+ @Before
+ public void setUp(){
+ mockMvc = MockMvcBuilders.standaloneSetup(workflowManager).build();
+ }
+
+
+ @Test
+ public void testCreate(){
+
+ }
+
+}
diff --git a/workflow-designer-be/src/test/java/org/onap/sdc/workflow/services/WorkflowVersionManagerTest.java b/workflow-designer-be/src/test/java/org/onap/sdc/workflow/services/WorkflowVersionManagerTest.java
new file mode 100644
index 00000000..d9031265
--- /dev/null
+++ b/workflow-designer-be/src/test/java/org/onap/sdc/workflow/services/WorkflowVersionManagerTest.java
@@ -0,0 +1,70 @@
+package org.onap.sdc.workflow.services;
+
+import static org.hamcrest.Matchers.equalTo;
+import static org.hamcrest.collection.IsCollectionWithSize.hasSize;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.verify;
+import static org.springframework.http.MediaType.APPLICATION_JSON;
+import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get;
+import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath;
+import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
+
+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.mockito.junit.MockitoJUnitRunner;
+import org.onap.sdc.workflow.api.RestConstants;
+import org.onap.sdc.workflow.services.impl.WorkflowVersionManagerImpl;
+import org.openecomp.sdc.versioning.VersioningManager;
+import org.openecomp.sdc.versioning.dao.types.Version;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.test.context.TestConfiguration;
+import org.springframework.context.annotation.Bean;
+import org.springframework.test.web.servlet.MockMvc;
+import org.springframework.test.web.servlet.setup.MockMvcBuilders;
+
+@RunWith(MockitoJUnitRunner.class)
+public class WorkflowVersionManagerTest {
+
+ private static final String USER_ID = "cs0008";
+ 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 static VersioningManager versioningManagerMock;
+
+ @TestConfiguration
+ static class WorkflowVersionManagerTestContextConfiguration {
+
+ @Bean
+ public WorkflowVersionManager WorkflowVersionManagerImpl() {
+ return new WorkflowVersionManagerImpl(versioningManagerMock);
+ }
+ }
+
+ @Autowired
+ private WorkflowVersionManager workflowVersionManager;
+
+
+
+ @Before
+ public void setUp(){
+ versionList = Arrays.asList( new Version(VERSION1_ID),new Version(VERSION2_ID));
+
+ }
+
+
+ @Test
+ public void shouldReturnWorkflowVersionList(){
+
+
+ }
+
+}