aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--workflow/workflow-designer-be/src/main/java/org/onap/sdc/workflow/api/RestConstants.java8
-rw-r--r--workflow/workflow-designer-be/src/main/java/org/onap/sdc/workflow/api/WorkflowController.java4
-rw-r--r--workflow/workflow-designer-be/src/main/java/org/onap/sdc/workflow/api/types/CollectionWrapper.java17
-rw-r--r--workflow/workflow-designer-be/src/main/java/org/onap/sdc/workflow/services/impl/WorkflowManagerImpl.java5
-rw-r--r--workflow/workflow-designer-be/src/main/java/org/onap/sdc/workflow/services/impl/WorkflowVersionManagerImpl.java21
-rw-r--r--workflow/workflow-designer-be/src/test/java/org/onap/sdc/workflow/RestPath.java32
-rw-r--r--workflow/workflow-designer-be/src/test/java/org/onap/sdc/workflow/api/WorkflowControllerTest.java122
-rw-r--r--workflow/workflow-designer-be/src/test/java/org/onap/sdc/workflow/persistence/impl/ParameterRepositoryTest.java83
-rw-r--r--workflow/workflow-designer-be/src/test/java/org/onap/sdc/workflow/services/impl/WorkflowVersionManagerImplTest.java7
9 files changed, 187 insertions, 112 deletions
diff --git a/workflow/workflow-designer-be/src/main/java/org/onap/sdc/workflow/api/RestConstants.java b/workflow/workflow-designer-be/src/main/java/org/onap/sdc/workflow/api/RestConstants.java
index 47a757e2..fc2e4408 100644
--- a/workflow/workflow-designer-be/src/main/java/org/onap/sdc/workflow/api/RestConstants.java
+++ b/workflow/workflow-designer-be/src/main/java/org/onap/sdc/workflow/api/RestConstants.java
@@ -6,10 +6,10 @@ public class RestConstants {
}
public static final String USER_ID_HEADER_PARAM = "USER_ID";
- public static final String LIMIT_PARAM = "size";
- public static final String OFFSET_PARAM = "page";
+ public static final String SIZE_PARAM = "size";
+ public static final String PAGE_PARAM = "page";
public static final String SORT_PARAM = "sort";
public static final String SORT_FIELD_NAME = "name";
- public static final int LIMIT_DEFAULT = 20;
- public static final int OFFSET_DEFAULT = 0;
+ public static final int SIZE_DEFAULT = 20;
+ public static final int PAGE_DEFAULT = 0;
}
diff --git a/workflow/workflow-designer-be/src/main/java/org/onap/sdc/workflow/api/WorkflowController.java b/workflow/workflow-designer-be/src/main/java/org/onap/sdc/workflow/api/WorkflowController.java
index de35320d..b0ae7cc1 100644
--- a/workflow/workflow-designer-be/src/main/java/org/onap/sdc/workflow/api/WorkflowController.java
+++ b/workflow/workflow-designer-be/src/main/java/org/onap/sdc/workflow/api/WorkflowController.java
@@ -1,6 +1,6 @@
package org.onap.sdc.workflow.api;
-import static org.onap.sdc.workflow.api.RestConstants.LIMIT_DEFAULT;
+import static org.onap.sdc.workflow.api.RestConstants.SIZE_DEFAULT;
import static org.onap.sdc.workflow.api.RestConstants.SORT_FIELD_NAME;
import static org.onap.sdc.workflow.api.RestConstants.SORT_PARAM;
import static org.onap.sdc.workflow.api.RestConstants.USER_ID_HEADER_PARAM;
@@ -50,7 +50,7 @@ public class WorkflowController {
@GetMapping(produces = MediaType.APPLICATION_JSON_VALUE)
@ApiOperation("List workflows")
public CollectionWrapper<Workflow> list(@RequestHeader(USER_ID_HEADER_PARAM) String user,
- @PageableDefault(size = LIMIT_DEFAULT)
+ @PageableDefault(size = SIZE_DEFAULT)
@SortDefault.SortDefaults({
@SortDefault(sort = SORT_FIELD_NAME, direction = Sort.Direction.ASC)
}) Pageable pageable) {
diff --git a/workflow/workflow-designer-be/src/main/java/org/onap/sdc/workflow/api/types/CollectionWrapper.java b/workflow/workflow-designer-be/src/main/java/org/onap/sdc/workflow/api/types/CollectionWrapper.java
index 1d583dd9..6a437a74 100644
--- a/workflow/workflow-designer-be/src/main/java/org/onap/sdc/workflow/api/types/CollectionWrapper.java
+++ b/workflow/workflow-designer-be/src/main/java/org/onap/sdc/workflow/api/types/CollectionWrapper.java
@@ -2,24 +2,21 @@ package org.onap.sdc.workflow.api.types;
import java.util.Collection;
import lombok.Data;
+import lombok.NoArgsConstructor;
@Data
+@NoArgsConstructor
public class CollectionWrapper<T> {
private int total;
- private int limit;
- private int offset;
+ private int size;
+ private int page;
private Collection<T> results;
-
- public CollectionWrapper() {
- //Default constructor for object mappers
- }
-
- public CollectionWrapper(int limit, int offset, Collection<T> results) {
+ public CollectionWrapper(int size, int page, Collection<T> results) {
this.results = results;
- this.limit = limit;
- this.offset = offset;
+ this.size = size;
+ this.page = page;
this.total = results.size();
}
diff --git a/workflow/workflow-designer-be/src/main/java/org/onap/sdc/workflow/services/impl/WorkflowManagerImpl.java b/workflow/workflow-designer-be/src/main/java/org/onap/sdc/workflow/services/impl/WorkflowManagerImpl.java
index 2cb897fe..97d81689 100644
--- a/workflow/workflow-designer-be/src/main/java/org/onap/sdc/workflow/services/impl/WorkflowManagerImpl.java
+++ b/workflow/workflow-designer-be/src/main/java/org/onap/sdc/workflow/services/impl/WorkflowManagerImpl.java
@@ -15,6 +15,8 @@ import org.onap.sdc.workflow.services.WorkflowManager;
import org.onap.sdc.workflow.services.WorkflowNameComparator;
import org.onap.sdc.workflow.services.exceptions.EntityNotFoundException;
import org.onap.sdc.workflow.services.impl.mappers.WorkflowMapper;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
import org.openecomp.sdc.versioning.ItemManager;
import org.openecomp.sdc.versioning.types.Item;
import org.openecomp.sdc.versioning.types.ItemStatus;
@@ -35,6 +37,7 @@ public class WorkflowManagerImpl implements WorkflowManager {
private final ItemManager itemManager;
private final UniqueValueService uniqueValueService;
private final WorkflowMapper workflowMapper;
+ private static final Logger LOGGER = LoggerFactory.getLogger(WorkflowManagerImpl.class);
@Autowired
public WorkflowManagerImpl(ItemManager itemManager,
@@ -56,6 +59,7 @@ public class WorkflowManagerImpl implements WorkflowManager {
public Workflow get(Workflow workflow) {
Item retrievedItem = itemManager.get(workflow.getId());
if (retrievedItem == null) {
+ LOGGER.error(String.format("Workflow with id %s was not found",workflow.getId()));
throw new EntityNotFoundException(String.format(WORKFLOW_NOT_FOUND_ERROR_MSG, workflow.getId()));
}
return this.workflowMapper.itemToWorkflow(retrievedItem);
@@ -76,6 +80,7 @@ public class WorkflowManagerImpl implements WorkflowManager {
public void update(Workflow workflow) {
Item retrievedItem = itemManager.get(workflow.getId());
if (retrievedItem == null) {
+ LOGGER.error(String.format("Workflow with id %s was not found",workflow.getId()));
throw new EntityNotFoundException(String.format(WORKFLOW_NOT_FOUND_ERROR_MSG, workflow.getId()));
}
diff --git a/workflow/workflow-designer-be/src/main/java/org/onap/sdc/workflow/services/impl/WorkflowVersionManagerImpl.java b/workflow/workflow-designer-be/src/main/java/org/onap/sdc/workflow/services/impl/WorkflowVersionManagerImpl.java
index 0f88d37f..de9c8dd3 100644
--- a/workflow/workflow-designer-be/src/main/java/org/onap/sdc/workflow/services/impl/WorkflowVersionManagerImpl.java
+++ b/workflow/workflow-designer-be/src/main/java/org/onap/sdc/workflow/services/impl/WorkflowVersionManagerImpl.java
@@ -31,6 +31,8 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils;
import org.springframework.web.multipart.MultipartFile;
+import org.openecomp.sdc.logging.api.Logger;
+import org.openecomp.sdc.logging.api.LoggerFactory;
@Service("workflowVersionManager")
public class WorkflowVersionManagerImpl implements WorkflowVersionManager {
@@ -41,7 +43,7 @@ public class WorkflowVersionManagerImpl implements WorkflowVersionManager {
private final ParameterRepository parameterRepository;
private final VersionMapper versionMapper;
private final VersionStateMapper versionStateMapper;
-
+ private static final Logger LOGGER = LoggerFactory.getLogger(WorkflowVersionManagerImpl.class);
@Autowired
public WorkflowVersionManagerImpl(VersioningManager versioningManager, ArtifactRepository artifactRepository,
@@ -130,6 +132,9 @@ public class WorkflowVersionManagerImpl implements WorkflowVersionManager {
WorkflowVersionState retrievedState =
versionStateMapper.versionStatusToWorkflowVersionState(retrievedVersion.getStatus());
if (WorkflowVersionState.CERTIFIED.equals(retrievedState) || retrievedState.equals(state)) {
+ LOGGER.error(String.format(
+ "Workflow Version is certified and can not be edited.Workflow id %s and version id %s", workflowId,
+ versionId));
throw new VersionStateModificationException(workflowId, versionId, retrievedState, state);
}
@@ -144,6 +149,8 @@ public class WorkflowVersionManagerImpl implements WorkflowVersionManager {
Version retrievedVersion = getVersion(workflowId, versionId);
if (WorkflowVersionState.CERTIFIED
.equals(versionStateMapper.versionStatusToWorkflowVersionState(retrievedVersion.getStatus()))) {
+ LOGGER.error(String.format("Workflow Version Artifact was not found for workflow id %s and version id %s",
+ workflowId, versionId));
throw new VersionModificationException(workflowId, versionId);
}
@@ -154,6 +161,8 @@ public class WorkflowVersionManagerImpl implements WorkflowVersionManager {
versioningManager.publish(workflowId, new Version(versionId), "Update Artifact");
} catch (IOException e) {
+ LOGGER.error(String.format("Upload Artifact failed for workflow id %s and version id %s",
+ workflowId, versionId),e);
throw new InvalidArtifactException(e.getMessage());
}
}
@@ -163,8 +172,10 @@ public class WorkflowVersionManagerImpl implements WorkflowVersionManager {
getVersion(workflowId, versionId);
Optional<ArtifactEntity> artifactOptional = artifactRepository.get(workflowId, versionId);
if (!artifactOptional.isPresent()) {
+ LOGGER.error(String.format("Workflow Version Artifact was not found for workflow id %s and version id %s",
+ workflowId, versionId));
throw new EntityNotFoundException(
- String.format("Artifact for workflow id %S version id %S was not found", workflowId, versionId));
+ String.format("Artifact for workflow id %S version id %S was not found", workflowId, versionId));
}
return artifactOptional.get();
}
@@ -173,6 +184,9 @@ public class WorkflowVersionManagerImpl implements WorkflowVersionManager {
public void deleteArtifact(String workflowId, String versionId) {
WorkflowVersion retrievedVersion = get(workflowId, versionId);
if (WorkflowVersionState.CERTIFIED.equals(retrievedVersion.getState())) {
+ LOGGER.error(String.format(
+ "Workflow Version is certified and can not be edited.Workflow id %s and version id %s", workflowId,
+ versionId));
throw new VersionModificationException(workflowId, versionId);
}
@@ -198,6 +212,9 @@ public class WorkflowVersionManagerImpl implements WorkflowVersionManager {
}
return version;
} catch (Exception e) {
+ LOGGER.error(String.format(
+ "Workflow Version was not found.Workflow id %s and version id %s", workflowId,
+ versionId),e);
throw new EntityNotFoundException(String.format(VERSION_NOT_EXIST_MSG, versionId, workflowId));
}
}
diff --git a/workflow/workflow-designer-be/src/test/java/org/onap/sdc/workflow/RestPath.java b/workflow/workflow-designer-be/src/test/java/org/onap/sdc/workflow/RestPath.java
index ba99996a..06d55479 100644
--- a/workflow/workflow-designer-be/src/test/java/org/onap/sdc/workflow/RestPath.java
+++ b/workflow/workflow-designer-be/src/test/java/org/onap/sdc/workflow/RestPath.java
@@ -1,7 +1,7 @@
package org.onap.sdc.workflow;
-import static org.onap.sdc.workflow.api.RestConstants.LIMIT_PARAM;
-import static org.onap.sdc.workflow.api.RestConstants.OFFSET_PARAM;
+import static org.onap.sdc.workflow.api.RestConstants.SIZE_PARAM;
+import static org.onap.sdc.workflow.api.RestConstants.PAGE_PARAM;
import static org.onap.sdc.workflow.api.RestConstants.SORT_PARAM;
public class RestPath {
@@ -14,32 +14,32 @@ public class RestPath {
private static final String VERSIONS_URL_FORMATTER = WORKFLOWS_URL + "/%s/versions";
private static final String VERSION_URL_FORMATTER = WORKFLOWS_URL + "/%s/versions/%s";
private static final String SORT_QUERY_STRING_FORMATTER = SORT_PARAM + "=%s";
- private static final String LIMIT_QUERY_STRING_FORMATTER = LIMIT_PARAM + "=%s";
- private static final String OFFSET_QUERY_STRING_FORMATTER = OFFSET_PARAM + "=%s";
+ private static final String SIZE_QUERY_STRING_FORMATTER = SIZE_PARAM + "=%s";
+ private static final String OFFSET_QUERY_STRING_FORMATTER = PAGE_PARAM + "=%s";
private static final String WORKFLOW_URL_FORMATTER_QUERY_PARAMS_ALL =
- WORKFLOWS_URL + "?" + SORT_QUERY_STRING_FORMATTER+ "&" + LIMIT_QUERY_STRING_FORMATTER + "&" +
+ WORKFLOWS_URL + "?" + SORT_QUERY_STRING_FORMATTER+ "&" + SIZE_QUERY_STRING_FORMATTER + "&" +
OFFSET_QUERY_STRING_FORMATTER;
private static final String WORKFLOW_URL_FORMATTER_QUERY_PARAMS_NO_SORT =
- WORKFLOWS_URL + "?" + LIMIT_QUERY_STRING_FORMATTER + "&" + OFFSET_QUERY_STRING_FORMATTER;
- private static final String WORKFLOW_URL_FORMATTER_QUERY_PARAMS_NO_SORT_AND_LIMIT =
+ WORKFLOWS_URL + "?" + SIZE_QUERY_STRING_FORMATTER + "&" + OFFSET_QUERY_STRING_FORMATTER;
+ private static final String WORKFLOW_URL_FORMATTER_QUERY_PARAMS_NO_SORT_AND_SIZE =
WORKFLOWS_URL + "?" + OFFSET_QUERY_STRING_FORMATTER;
private static final String WORKFLOW_URL_FORMATTER_QUERY_PARAMS_NO_SORT_AND_OFFSET =
- WORKFLOWS_URL + "?" + LIMIT_QUERY_STRING_FORMATTER;
+ WORKFLOWS_URL + "?" + SIZE_QUERY_STRING_FORMATTER;
- public static String getWorkflowsPathAllQueryParams(String sort, String limit, String offset){
- return String.format(WORKFLOW_URL_FORMATTER_QUERY_PARAMS_ALL, sort, limit, offset);
+ public static String getWorkflowsPathAllQueryParams(String sort, String size, String offset){
+ return String.format(WORKFLOW_URL_FORMATTER_QUERY_PARAMS_ALL, sort, size, offset);
}
- public static String getWorkflowsPathNoSort(String limit, String offset){
- return String.format(WORKFLOW_URL_FORMATTER_QUERY_PARAMS_NO_SORT, limit, offset);
+ public static String getWorkflowsPathNoSort(String size, String offset){
+ return String.format(WORKFLOW_URL_FORMATTER_QUERY_PARAMS_NO_SORT, size, offset);
}
- public static String getWorkflowsPathNoSortAndLimit(String offset){
- return String.format(WORKFLOW_URL_FORMATTER_QUERY_PARAMS_NO_SORT_AND_LIMIT, offset);
+ public static String getWorkflowsPathNoSortAndSize(String offset){
+ return String.format(WORKFLOW_URL_FORMATTER_QUERY_PARAMS_NO_SORT_AND_SIZE, offset);
}
- public static String getWorkflowsPathNoSortAndOffset(String limit){
- return String.format(WORKFLOW_URL_FORMATTER_QUERY_PARAMS_NO_SORT_AND_OFFSET, limit);
+ public static String getWorkflowsPathNoSortAndOffset(String size){
+ return String.format(WORKFLOW_URL_FORMATTER_QUERY_PARAMS_NO_SORT_AND_OFFSET, size);
}
public static String getWorkflowsPath(){
diff --git a/workflow/workflow-designer-be/src/test/java/org/onap/sdc/workflow/api/WorkflowControllerTest.java b/workflow/workflow-designer-be/src/test/java/org/onap/sdc/workflow/api/WorkflowControllerTest.java
index 1f36759d..b73427e8 100644
--- a/workflow/workflow-designer-be/src/test/java/org/onap/sdc/workflow/api/WorkflowControllerTest.java
+++ b/workflow/workflow-designer-be/src/test/java/org/onap/sdc/workflow/api/WorkflowControllerTest.java
@@ -8,8 +8,8 @@ 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.createWorkflow;
-import static org.onap.sdc.workflow.api.RestConstants.LIMIT_DEFAULT;
-import static org.onap.sdc.workflow.api.RestConstants.OFFSET_DEFAULT;
+import static org.onap.sdc.workflow.api.RestConstants.PAGE_DEFAULT;
+import static org.onap.sdc.workflow.api.RestConstants.SIZE_DEFAULT;
import static org.onap.sdc.workflow.api.RestConstants.SORT_FIELD_NAME;
import static org.onap.sdc.workflow.api.RestConstants.SORT_PARAM;
import static org.onap.sdc.workflow.api.RestConstants.USER_ID_HEADER_PARAM;
@@ -20,14 +20,14 @@ import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath;
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
+import com.amdocs.zusammen.datatypes.Id;
+import com.amdocs.zusammen.datatypes.item.Item;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.google.common.collect.ImmutableSet;
import com.google.gson.Gson;
-
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
-
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -39,7 +39,6 @@ import org.onap.sdc.workflow.api.exceptionshandlers.CustomizedResponseEntityExce
import org.onap.sdc.workflow.api.types.CollectionWrapper;
import org.onap.sdc.workflow.persistence.types.Workflow;
import org.onap.sdc.workflow.services.WorkflowManager;
-import org.openecomp.sdc.versioning.types.Item;
import org.springframework.data.web.PageableHandlerMethodArgumentResolver;
import org.springframework.http.MediaType;
import org.springframework.mock.web.MockHttpServletResponse;
@@ -73,9 +72,8 @@ public class WorkflowControllerTest {
public void setUp() {
mockMvc = MockMvcBuilders.standaloneSetup(workflowController).build();
mockMvc = MockMvcBuilders.standaloneSetup(workflowController)
- .setCustomArgumentResolvers(new PageableHandlerMethodArgumentResolver())
- .setControllerAdvice(new CustomizedResponseEntityExceptionHandler())
- .build();
+ .setCustomArgumentResolvers(new PageableHandlerMethodArgumentResolver())
+ .setControllerAdvice(new CustomizedResponseEntityExceptionHandler()).build();
}
@Test
@@ -85,17 +83,17 @@ public class WorkflowControllerTest {
mockMvc.perform(get(RestPath.getWorkflowPath(workflowMock.getId())).contentType(APPLICATION_JSON))
.andDo(print()).andExpect(status().isBadRequest()).andExpect(status().is(400)).andReturn()
.getResponse();
- assertEquals(String.format(MISSING_REQUEST_HEADER_ERRROR_FORMAT, USER_ID_HEADER), response.getContentAsString());
+ assertEquals(String.format(MISSING_REQUEST_HEADER_ERRROR_FORMAT, USER_ID_HEADER),
+ response.getContentAsString());
}
@Test
public void shouldReturnWorkflowDataWhenRequestPathIsOk() throws Exception {
Workflow workflowMock = createWorkflow(1, true);
doReturn(workflowMock).when(workflowManagerMock).get(any(Workflow.class));
- mockMvc.perform(
- get(RestPath.getWorkflowPath(workflowMock.getId())).header(USER_ID_HEADER_PARAM, USER_ID)
- .contentType(APPLICATION_JSON)).andDo(print())
- .andExpect(status().isOk()).andExpect(jsonPath("$.id", is(workflowMock.getId())))
+ mockMvc.perform(get(RestPath.getWorkflowPath(workflowMock.getId())).header(USER_ID_HEADER_PARAM, USER_ID)
+ .contentType(APPLICATION_JSON))
+ .andDo(print()).andExpect(status().isOk()).andExpect(jsonPath("$.id", is(workflowMock.getId())))
.andExpect(jsonPath("$.name", is(workflowMock.getName())));
}
@@ -104,7 +102,8 @@ public class WorkflowControllerTest {
MockHttpServletResponse response =
mockMvc.perform(get(RestPath.getWorkflowsPath()).contentType(APPLICATION_JSON)).andDo(print())
.andExpect(status().isBadRequest()).andExpect(status().is(400)).andReturn().getResponse();
- assertEquals(String.format(MISSING_REQUEST_HEADER_ERRROR_FORMAT, USER_ID_HEADER_PARAM), response.getContentAsString());
+ assertEquals(String.format(MISSING_REQUEST_HEADER_ERRROR_FORMAT, USER_ID_HEADER_PARAM),
+ response.getContentAsString());
}
@Test
@@ -118,28 +117,27 @@ public class WorkflowControllerTest {
}
@Test
- public void shouldReturnSortedLimitOffsetAppliedWorkflows() throws Exception {
- List<Workflow> workflowMocks = createLimit2AndOffset1For5WorkflowList();
+ public void shouldReturnSortedSizeOffsetAppliedWorkflows() throws Exception {
+ List<Workflow> workflowMocks = createSize2AndOffset1For5WorkflowList();
doReturn(workflowMocks).when(workflowManagerMock).list(any());
- mockMvc.perform(
- get(RestPath.getWorkflowsPathAllQueryParams(DEFAULT_SORT_VALUE, "2", "1"))
- .header(RestConstants.USER_ID_HEADER_PARAM, USER_ID).contentType(APPLICATION_JSON))
- .andDo(print()).andExpect(status().isOk()).andExpect(jsonPath("$.results", hasSize(2)));
+ mockMvc.perform(get(RestPath.getWorkflowsPathAllQueryParams(DEFAULT_SORT_VALUE, "2", "1"))
+ .header(RestConstants.USER_ID_HEADER_PARAM, USER_ID).contentType(APPLICATION_JSON))
+ .andDo(print()).andExpect(status().isOk()).andExpect(jsonPath("$.results", hasSize(2)));
}
@Test
- public void shouldReturnResultsWithDefaultWhenLimitIsNegative() throws Exception {
- List<Workflow> workflowMocks = createLimit2AndOffset1For5WorkflowList();
+ public void shouldReturnResultsWithDefaultWhenSizeIsNegative() throws Exception {
+ List<Workflow> workflowMocks = createSize2AndOffset1For5WorkflowList();
doReturn(workflowMocks).when(workflowManagerMock).list(any());
MockHttpServletResponse response = mockMvc.perform(
get(RestPath.getWorkflowsPathAllQueryParams(DEFAULT_SORT_VALUE, "-2", "1"))
.header(RestConstants.USER_ID_HEADER_PARAM, USER_ID).contentType(APPLICATION_JSON))
- .andDo(print()).andExpect(status().isOk()).andExpect(status().is(200)).andReturn()
- .getResponse();
+ .andDo(print()).andExpect(status().isOk()).andExpect(status().is(200))
+ .andReturn().getResponse();
CollectionWrapper workflowListResponse =
new ObjectMapper().readValue(response.getContentAsString(), CollectionWrapper.class);
- assertEquals(LIMIT_DEFAULT, workflowListResponse.getLimit());
- assertEquals(1, workflowListResponse.getOffset());
+ assertEquals(SIZE_DEFAULT, workflowListResponse.getSize());
+ assertEquals(1, workflowListResponse.getPage());
assertEquals(2, workflowListResponse.getTotal());
}
@@ -148,26 +146,26 @@ public class WorkflowControllerTest {
MockHttpServletResponse response = mockMvc.perform(
get(RestPath.getWorkflowsPathAllQueryParams(DEFAULT_SORT_VALUE, "2", "-1"))
.header(RestConstants.USER_ID_HEADER_PARAM, USER_ID).contentType(APPLICATION_JSON))
- .andDo(print()).andExpect(status().isOk()).andExpect(status().is(200)).andReturn()
- .getResponse();
+ .andDo(print()).andExpect(status().isOk()).andExpect(status().is(200))
+ .andReturn().getResponse();
CollectionWrapper workflowListResponse =
new ObjectMapper().readValue(response.getContentAsString(), CollectionWrapper.class);
- assertEquals(2, workflowListResponse.getLimit());
- assertEquals(OFFSET_DEFAULT, workflowListResponse.getOffset());
+ assertEquals(2, workflowListResponse.getSize());
+ assertEquals(PAGE_DEFAULT, workflowListResponse.getPage());
assertEquals(0, workflowListResponse.getTotal());
}
@Test
- public void shouldFallbackOnDefaultLimitWhenLimitIsNotAnInteger() throws Exception {
+ public void shouldFallbackOnDefaultSizeWhenSizeIsNotAnInteger() throws Exception {
MockHttpServletResponse response = mockMvc.perform(
get(RestPath.getWorkflowsPathAllQueryParams(DEFAULT_SORT_VALUE, "abc", "0"))
.header(RestConstants.USER_ID_HEADER_PARAM, USER_ID).contentType(APPLICATION_JSON))
- .andDo(print()).andExpect(status().isOk()).andExpect(status().is(200)).andReturn()
- .getResponse();
+ .andDo(print()).andExpect(status().isOk()).andExpect(status().is(200))
+ .andReturn().getResponse();
CollectionWrapper workflowListResponse =
new ObjectMapper().readValue(response.getContentAsString(), CollectionWrapper.class);
- assertEquals(LIMIT_DEFAULT, workflowListResponse.getLimit());
- assertEquals(0, workflowListResponse.getOffset());
+ assertEquals(SIZE_DEFAULT, workflowListResponse.getSize());
+ assertEquals(0, workflowListResponse.getPage());
assertEquals(0, workflowListResponse.getTotal());
}
@@ -176,12 +174,12 @@ public class WorkflowControllerTest {
MockHttpServletResponse response = mockMvc.perform(
get(RestPath.getWorkflowsPathAllQueryParams(DEFAULT_SORT_VALUE, "2", "abc"))
.header(RestConstants.USER_ID_HEADER_PARAM, USER_ID).contentType(APPLICATION_JSON))
- .andDo(print()).andExpect(status().isOk()).andExpect(status().is(200)).andReturn()
- .getResponse();
+ .andDo(print()).andExpect(status().isOk()).andExpect(status().is(200))
+ .andReturn().getResponse();
CollectionWrapper workflowListResponse =
new ObjectMapper().readValue(response.getContentAsString(), CollectionWrapper.class);
- assertEquals(2, workflowListResponse.getLimit());
- assertEquals(OFFSET_DEFAULT, workflowListResponse.getOffset());
+ assertEquals(2, workflowListResponse.getSize());
+ assertEquals(PAGE_DEFAULT, workflowListResponse.getPage());
assertEquals(0, workflowListResponse.getTotal());
}
@@ -190,54 +188,54 @@ public class WorkflowControllerTest {
MockHttpServletResponse response = mockMvc.perform(
get(RestPath.getWorkflowsPathAllQueryParams("invalidSortField,asc", "2", "1"))
.header(RestConstants.USER_ID_HEADER_PARAM, USER_ID).contentType(APPLICATION_JSON))
- .andDo(print()).andExpect(status().isBadRequest()).andExpect(status().is(400)).andReturn()
- .getResponse();
+ .andDo(print()).andExpect(status().isBadRequest())
+ .andExpect(status().is(400)).andReturn().getResponse();
assertEquals(String.format(INVALID_PAGINATION_PARAMETER_FORMAT, SORT_PARAM, "invalidSortField",
PAGINATION_PARAMETER_INVALID_SORT_FIELD_SUFFIX + getSupportedSortFields()),
response.getContentAsString());
}
@Test
- public void shouldReturnAscSortedLimitOffsetAppliedWorkflowsWhenSortIsNotSpecified() throws Exception {
- List<Workflow> workflowMocks = createLimit2AndOffset1For5WorkflowList();
+ public void shouldReturnAscSortedSizeOffsetAppliedWorkflowsWhenSortIsNotSpecified() throws Exception {
+ List<Workflow> workflowMocks = createSize2AndOffset1For5WorkflowList();
doReturn(workflowMocks).when(workflowManagerMock).list(any());
mockMvc.perform(
- get(RestPath.getWorkflowsPathNoSort("2", "1"))
- .header(RestConstants.USER_ID_HEADER_PARAM, USER_ID).contentType(APPLICATION_JSON))
- .andDo(print()).andExpect(status().isOk()).andExpect(jsonPath("$.results", hasSize(2)));
+ get(RestPath.getWorkflowsPathNoSort("2", "1")).header(RestConstants.USER_ID_HEADER_PARAM, USER_ID)
+ .contentType(APPLICATION_JSON)).andDo(print())
+ .andExpect(status().isOk()).andExpect(jsonPath("$.results", hasSize(2)));
}
@Test
- public void shouldReturnDefaultLimitOffsetAppliedWorkflowsWhenLimitIsNotSpecified() throws Exception {
- List<Workflow> workflowMocks = createLimit2AndOffset1For5WorkflowList();
+ public void shouldReturnDefaultSizeOffsetAppliedWorkflowsWhenSizeIsNotSpecified() throws Exception {
+ List<Workflow> workflowMocks = createSize2AndOffset1For5WorkflowList();
doReturn(workflowMocks).when(workflowManagerMock).list(any());
mockMvc.perform(
- get(RestPath.getWorkflowsPathNoSortAndLimit("1"))
- .header(RestConstants.USER_ID_HEADER_PARAM, USER_ID).contentType(APPLICATION_JSON))
- .andDo(print()).andExpect(status().isOk()).andExpect(jsonPath("$.results", hasSize(2)));
+ get(RestPath.getWorkflowsPathNoSortAndSize("1")).header(RestConstants.USER_ID_HEADER_PARAM, USER_ID)
+ .contentType(APPLICATION_JSON)).andDo(print())
+ .andExpect(status().isOk()).andExpect(jsonPath("$.results", hasSize(2)));
}
@Test
public void shouldReturnDefaultOffsetAppliedWorkflowsWhenOffsetIsNotSpecified() throws Exception {
- List<Workflow> workflowMocks = createLimit1WorkflowList();
+ List<Workflow> workflowMocks = createSize1WorkflowList();
doReturn(workflowMocks).when(workflowManagerMock).list(any());
mockMvc.perform(
- get(RestPath.getWorkflowsPathNoSortAndOffset("1"))
- .header(RestConstants.USER_ID_HEADER_PARAM, USER_ID).contentType(APPLICATION_JSON))
- .andDo(print()).andExpect(status().isOk()).andExpect(jsonPath("$.results", hasSize(1)));
+ get(RestPath.getWorkflowsPathNoSortAndOffset("1")).header(RestConstants.USER_ID_HEADER_PARAM, USER_ID)
+ .contentType(APPLICATION_JSON)).andDo(print())
+ .andExpect(status().isOk()).andExpect(jsonPath("$.results", hasSize(1)));
}
- /* @Test
+ @Test
public void shouldCreateWorkflowWhenCallingPostRESTRequest() throws Exception {
Item item = new Item();
- item.setId("abc");
+ item.setId(new Id("abc"));
Workflow reqWorkflow = createWorkflow(1, false);
mockMvc.perform(
post(RestPath.getWorkflowsPath()).header(USER_ID_HEADER_PARAM, USER_ID).contentType(APPLICATION_JSON)
- .content(GSON.toJson(reqWorkflow))).andDo(print()).andExpect(status().isCreated())
- .andExpect(MockMvcResultMatchers.content().contentType(MediaType.APPLICATION_JSON_UTF8_VALUE));
+ .content(GSON.toJson(reqWorkflow))).andDo(print())
+ .andExpect(status().isCreated());
verify(workflowManagerMock, times(1)).create(reqWorkflow);
- }*/
+ }
private List<Workflow> createWorkflows(int numOfWorkflows) {
List<Workflow> workflowList = new ArrayList<>(numOfWorkflows);
@@ -248,14 +246,14 @@ public class WorkflowControllerTest {
return workflowList;
}
- private List<Workflow> createLimit2AndOffset1For5WorkflowList() {
+ private List<Workflow> createSize2AndOffset1For5WorkflowList() {
List<Workflow> workflowList = new ArrayList<>();
workflowList.add(createWorkflow(2, true));
workflowList.add(createWorkflow(3, true));
return workflowList;
}
- private List<Workflow> createLimit1WorkflowList() {
+ private List<Workflow> createSize1WorkflowList() {
List<Workflow> workflowList = new ArrayList<>();
workflowList.add(createWorkflow(0, true));
return workflowList;
diff --git a/workflow/workflow-designer-be/src/test/java/org/onap/sdc/workflow/persistence/impl/ParameterRepositoryTest.java b/workflow/workflow-designer-be/src/test/java/org/onap/sdc/workflow/persistence/impl/ParameterRepositoryTest.java
index 4ddd8d48..63d2e560 100644
--- a/workflow/workflow-designer-be/src/test/java/org/onap/sdc/workflow/persistence/impl/ParameterRepositoryTest.java
+++ b/workflow/workflow-designer-be/src/test/java/org/onap/sdc/workflow/persistence/impl/ParameterRepositoryTest.java
@@ -1,21 +1,27 @@
package org.onap.sdc.workflow.persistence.impl;
import static org.junit.Assert.assertEquals;
-import static org.mockito.Mockito.verify;
+import static org.junit.Assert.assertTrue;
+import static org.mockito.ArgumentMatchers.isNull;
import static org.mockito.Matchers.any;
import static org.mockito.Matchers.eq;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.verify;
+import com.amdocs.zusammen.adaptor.inbound.api.types.item.ElementInfo;
import com.amdocs.zusammen.adaptor.inbound.api.types.item.ZusammenElement;
import com.amdocs.zusammen.datatypes.Id;
import com.amdocs.zusammen.datatypes.SessionContext;
import com.amdocs.zusammen.datatypes.item.ElementContext;
import com.amdocs.zusammen.datatypes.item.Info;
+import java.util.ArrayList;
+import java.util.Collection;
import java.util.Optional;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
+import org.mapstruct.ap.internal.util.Collections;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.Spy;
@@ -24,6 +30,7 @@ import org.onap.sdc.workflow.persistence.types.ParameterEntity;
import org.onap.sdc.workflow.persistence.types.ParameterPropertyName;
import org.onap.sdc.workflow.persistence.types.ParameterRole;
import org.onap.sdc.workflow.persistence.types.ParameterType;
+import org.onap.sdc.workflow.persistence.types.WorkflowElementType;
import org.openecomp.core.zusammen.api.ZusammenAdaptor;
import org.openecomp.sdc.common.session.SessionContextProviderFactory;
@@ -33,6 +40,9 @@ public class ParameterRepositoryTest {
private static final String ITEM1_ID = "item_id_1";
private static final String VERSION1_ID = "version_id_1";
private static final String PARAMETER1_ID = "parameter_id_1";
+ private static final String PARAMETER2_ID = "parameter_id_2";
+ private static final String PARAMETERS_PARENT_ID = "parameters_id";
+
@Mock
private ZusammenAdaptor zusammenAdaptorMock;
@@ -45,25 +55,25 @@ public class ParameterRepositoryTest {
SessionContextProviderFactory.getInstance().createInterface().create("test_user", "workflow");
}
- /*@Test
+ @Test
public void shouldGetParameterById() {
- ZusammenElement element = new ZusammenElement();
- element.setElementId(new Id(PARAMETER1_ID));
+ ElementInfo element = new ElementInfo();
+ element.setId(new Id(PARAMETER1_ID));
Info info = new Info();
info.setName("testInput");
info.addProperty(ParameterPropertyName.TYPE.name(),ParameterType.FLOAT.name());
info.addProperty(ParameterPropertyName.mandatory.name(),true);
element.setInfo(info);
doReturn(Optional.of(element)).when(zusammenAdaptorMock)
- .getElement(any(SessionContext.class), any(ElementContext.class),
- eq(PARAMETER1_ID));
+ .getElementInfo(any(SessionContext.class), any(ElementContext.class),
+ eq(new Id(PARAMETER1_ID)));
ParameterEntity result = parameterRepository.get(ITEM1_ID, VERSION1_ID, PARAMETER1_ID);
- verify(parameterRepository,times(1)).elementToParameterEntity(element);
- verify(zusammenAdaptorMock).getElement(any(SessionContext.class), any(ElementContext.class),eq(PARAMETER1_ID));
- assertEquals("testInput",result.getName());
+ verify(zusammenAdaptorMock)
+ .getElementInfo(any(SessionContext.class), any(ElementContext.class), eq(new Id(PARAMETER1_ID)));
+ assertEquals("testInput", result.getName());
- }*/
+ }
@Test
@@ -101,9 +111,56 @@ public class ParameterRepositoryTest {
}
+ @Test
+ public void shouldListParametersByType() {
+
+ ElementInfo parameter1 = new ElementInfo();
+ parameter1.setId(new Id(PARAMETER1_ID));
+ Info info1 = new Info();
+ info1.setName("input1");
+ info1.addProperty(ParameterPropertyName.TYPE.name(),"INTEGER");
+ info1.addProperty(ParameterPropertyName.mandatory.name(),true);
+ parameter1.setInfo(info1);
+ ElementInfo parameter2 = new ElementInfo();
+ parameter2.setId(new Id(PARAMETER2_ID));
+ Info info2 = new Info();
+ info2.setName("input2");
+ info2.addProperty(ParameterPropertyName.TYPE.name(),"STRING");
+ info2.addProperty(ParameterPropertyName.mandatory.name(),false);
+ parameter2.setInfo(info2);
+ Collection<ElementInfo> parameters = Collections.asSet(parameter1, parameter2);
+ doReturn(parameters).when(zusammenAdaptorMock)
+ .listElementsByName(any(SessionContext.class), any(ElementContext.class),isNull(Id.class),eq(ParameterRole.INPUT.name()));
+ Collection<ParameterEntity> results = parameterRepository.list(ITEM1_ID, VERSION1_ID, ParameterRole.INPUT);
+
+ verify(zusammenAdaptorMock).listElementsByName(any(SessionContext.class), any(ElementContext.class), isNull(Id.class),
+ eq(WorkflowElementType.INPUT.name()));
+ assertTrue(results.stream().anyMatch(parameterEntity -> parameterEntity.getId().equals(PARAMETER1_ID)));
+ assertTrue(results.stream().anyMatch(parameterEntity -> parameterEntity.getId().equals(PARAMETER2_ID)));
+ }
-
-
-
+ @Test
+ public void shouldDeleteAllParametersByType() {
+ ElementInfo parameterParentElement = new ElementInfo();
+ parameterParentElement.setId(new Id(PARAMETERS_PARENT_ID));
+ ElementInfo parameter1 = new ElementInfo();
+ parameter1.setId(new Id(PARAMETER1_ID));
+ ElementInfo parameter2 = new ElementInfo();
+ parameter2.setId(new Id(PARAMETER2_ID));
+ parameterParentElement.setSubElements(new ArrayList<>());
+ parameterParentElement.getSubElements().add(parameter1);
+ parameterParentElement.getSubElements().add(parameter2);
+
+ Optional<ElementInfo> elementOptional = Optional.of(parameterParentElement);
+
+ doReturn(elementOptional).when(zusammenAdaptorMock)
+ .getElementInfoByName(any(SessionContext.class), any(ElementContext.class),
+ isNull(Id.class), eq(WorkflowElementType.INPUTS.name()));
+
+ parameterRepository.deleteAll(ITEM1_ID, VERSION1_ID, ParameterRole.INPUT);
+ verify(zusammenAdaptorMock)
+ .saveElement(any(SessionContext.class), any(ElementContext.class), any(ZusammenElement.class),
+ eq("Delete all INPUT"));
+ }
}
diff --git a/workflow/workflow-designer-be/src/test/java/org/onap/sdc/workflow/services/impl/WorkflowVersionManagerImplTest.java b/workflow/workflow-designer-be/src/test/java/org/onap/sdc/workflow/services/impl/WorkflowVersionManagerImplTest.java
index 53a3cff4..4c511de0 100644
--- a/workflow/workflow-designer-be/src/test/java/org/onap/sdc/workflow/services/impl/WorkflowVersionManagerImplTest.java
+++ b/workflow/workflow-designer-be/src/test/java/org/onap/sdc/workflow/services/impl/WorkflowVersionManagerImplTest.java
@@ -127,20 +127,21 @@ public class WorkflowVersionManagerImplTest {
}
- /*@Test
+ @Test
public void shouldCreateWorkflowVersion(){
Version version = new Version(VERSION1_ID);
version.setDescription("version desc");
doReturn(version).when(versioningManagerMock).create(ITEM1_ID,version, VersionCreationMethod.major);
VersionRequestDto versionRequest = new VersionRequestDto();
versionRequest.setDescription("version desc");
+ versionRequest.setInputs(new ArrayList<>());
+ versionRequest.setOutputs(new ArrayList<>());
WorkflowVersion workflowVersion = new WorkflowVersion(VERSION1_ID);
doReturn(workflowVersion).when(workflowVersionManager).get(ITEM1_ID,VERSION1_ID);
workflowVersionManager.create(ITEM1_ID,versionRequest);
verify(versioningManagerMock).create(ITEM1_ID,version, VersionCreationMethod.major);
-
}
-*/
+
@Test(expected = VersionCreationException.class)
public void shouldTrowExceptionWhenDraftVersionExists() {
VersionRequestDto versionRequestDto = new VersionRequestDto();