diff --git a/packaging/tests/tas-restapi/src/test/java/org/alfresco/rest/rules/CreateRulesTests.java b/packaging/tests/tas-restapi/src/test/java/org/alfresco/rest/rules/CreateRulesTests.java index 807c159cff..bf9ab1cefe 100644 --- a/packaging/tests/tas-restapi/src/test/java/org/alfresco/rest/rules/CreateRulesTests.java +++ b/packaging/tests/tas-restapi/src/test/java/org/alfresco/rest/rules/CreateRulesTests.java @@ -29,6 +29,7 @@ import static java.util.stream.Collectors.toList; import static org.alfresco.rest.rules.RulesTestsUtils.createRuleModel; import static org.alfresco.utility.constants.UserRole.SiteCollaborator; +import static org.alfresco.utility.constants.UserRole.SiteConsumer; import static org.alfresco.utility.model.FileModel.getRandomFileModel; import static org.alfresco.utility.model.FileType.TEXT_PLAIN; import static org.alfresco.utility.report.log.Step.STEP; @@ -181,6 +182,21 @@ public class CreateRulesTests extends RestTest restClient.assertLastError().containsSummary("Insufficient permissions to manage rules"); } + /** Check that a user consumer permission for the folder cannot create a rule in it. */ + public void failToCreateRuleAsSiteConsumer() + { + STEP("Create a consumer and check they cannot create a rule in the public folder"); + UserModel consumer = dataUser.createRandomTestUser(); + dataUser.addUserToSite(consumer, site, SiteConsumer); + RestRuleModel ruleModel = new RestRuleModel(); + ruleModel.setName("ruleName"); + + restClient.authenticateUser(consumer).withCoreAPI().usingNode(ruleFolder).usingDefaultRuleSet().createSingleRule(ruleModel); + + restClient.assertStatusCodeIs(FORBIDDEN); + restClient.assertLastError().containsSummary("Insufficient permissions to manage rules"); + } + /** Check we can't create a rule under a document node. */ @Test (groups = { TestGroup.REST_API, TestGroup.RULES }) public void tryToCreateRuleUnderDocument()