From 552559148ff1a020de74399030fd63fc054f0905 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alecsandru=20Prun=C4=83?= Date: Thu, 8 Dec 2016 17:34:14 +0200 Subject: [PATCH] test: Added GetProcessItemsCoreTests --- .../processes/GetProcessItemsCoreTests.java | 68 +++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 e2e-test/java/org/alfresco/rest/workflow/processes/GetProcessItemsCoreTests.java diff --git a/e2e-test/java/org/alfresco/rest/workflow/processes/GetProcessItemsCoreTests.java b/e2e-test/java/org/alfresco/rest/workflow/processes/GetProcessItemsCoreTests.java new file mode 100644 index 000000000..5d13f3599 --- /dev/null +++ b/e2e-test/java/org/alfresco/rest/workflow/processes/GetProcessItemsCoreTests.java @@ -0,0 +1,68 @@ +package org.alfresco.rest.workflow.processes; + +import org.alfresco.dataprep.CMISUtil; +import org.alfresco.rest.RestTest; +import org.alfresco.rest.model.RestErrorModel; +import org.alfresco.rest.model.RestProcessModel; +import org.alfresco.utility.model.FileModel; +import org.alfresco.utility.model.SiteModel; +import org.alfresco.utility.model.TestGroup; +import org.alfresco.utility.model.UserModel; +import org.alfresco.utility.testrail.ExecutionType; +import org.alfresco.utility.testrail.annotation.TestRail; +import org.springframework.http.HttpStatus; +import org.testng.annotations.BeforeClass; +import org.testng.annotations.Test; + +public class GetProcessItemsCoreTests extends RestTest +{ + private FileModel document; + private SiteModel siteModel; + private UserModel adminUser, userWhoStartsTask, assignee; + private RestProcessModel processModel; + + @BeforeClass(alwaysRun = true) + public void dataPreparation() throws Exception + { + adminUser = dataUser.getAdminUser(); + userWhoStartsTask = dataUser.createRandomTestUser(); + assignee = dataUser.createRandomTestUser(); + siteModel = dataSite.usingUser(userWhoStartsTask).createPublicRandomSite(); + document = dataContent.usingSite(siteModel).createContent(CMISUtil.DocumentType.TEXT_PLAIN); + dataWorkflow.usingUser(userWhoStartsTask).usingSite(siteModel).usingResource(document).createNewTaskAndAssignTo(assignee); + } + + @TestRail(section = { TestGroup.REST_API, TestGroup.PROCESSES }, executionType = ExecutionType.REGRESSION, + description = "Verify that admin calling getProcessItems can see anything with REST API and status code is OK (200)") + @Test(groups = { TestGroup.REST_API, TestGroup.WORKFLOW, TestGroup.PROCESSES, TestGroup.CORE }) + public void getProcessItemsAsAdminReturnsAnything() throws Exception + { + processModel = restClient.authenticateUser(adminUser).withWorkflowAPI().getProcesses().getOneRandomEntry().onModel(); + restClient.withWorkflowAPI().usingProcess(processModel).getProcessItems().assertThat().entriesListIsNotEmpty(); + restClient.assertStatusCodeIs(HttpStatus.OK); + } + + @TestRail(section = { TestGroup.REST_API, TestGroup.PROCESSES }, executionType = ExecutionType.REGRESSION, + description = "Verify getProcessItems for invalid processId with REST API and status code is NOT_FOUND (404)") + @Test(groups = { TestGroup.REST_API, TestGroup.WORKFLOW, TestGroup.PROCESSES, TestGroup.CORE }) + public void getProcessItemsForInvalidProcessId() throws Exception + { + processModel = restClient.authenticateUser(assignee).withWorkflowAPI().getProcesses().getOneRandomEntry().onModel(); + processModel.setId("invalidProcessId"); + restClient.withWorkflowAPI().usingProcess(processModel).getProcessItems().assertThat().entriesListIsEmpty(); + restClient.assertStatusCodeIs(HttpStatus.NOT_FOUND) + .assertLastError().containsSummary(String.format(RestErrorModel.ENTITY_NOT_FOUND, "invalidProcessId")); + } + + @TestRail(section = { TestGroup.REST_API, TestGroup.PROCESSES }, executionType = ExecutionType.REGRESSION, + description = "Verify getProcessItems for empty processId with REST API and status code is NOT_FOUND (404)") + @Test(groups = { TestGroup.REST_API, TestGroup.WORKFLOW, TestGroup.PROCESSES, TestGroup.CORE }) + public void getProcessItemsForEmptyProcessId() throws Exception + { + processModel = restClient.authenticateUser(assignee).withWorkflowAPI().getProcesses().getOneRandomEntry().onModel(); + processModel.setId(""); + restClient.withWorkflowAPI().usingProcess(processModel).getProcessItems().assertThat().entriesListIsEmpty(); + restClient.assertStatusCodeIs(HttpStatus.NOT_FOUND) + .assertLastError().containsSummary(String.format(RestErrorModel.ENTITY_NOT_FOUND, "")); + } +}