Search in sources :

Example 46 with Filter

use of org.camunda.bpm.engine.filter.Filter in project camunda-bpm-platform by camunda.

the class FilterAuthorizationsTest method testUpdateFilterNotPermitted.

public void testUpdateFilterNotPermitted() {
    Filter filter = createTestFilter();
    filter.setName("anotherName");
    try {
        filterService.saveFilter(filter);
        fail("Exception expected");
    } catch (AuthorizationException e) {
    // expected
    }
}
Also used : Filter(org.camunda.bpm.engine.filter.Filter) AuthorizationException(org.camunda.bpm.engine.AuthorizationException)

Example 47 with Filter

use of org.camunda.bpm.engine.filter.Filter in project camunda-bpm-platform by camunda.

the class FilterAuthorizationsTest method testReadFilterPermittedWithMultiple.

public void testReadFilterPermittedWithMultiple() {
    Filter filter = createTestFilter();
    grantReadFilter(filter.getId());
    Authorization authorization = processEngine.getAuthorizationService().createNewAuthorization(Authorization.AUTH_TYPE_GRANT);
    authorization.addPermission(Permissions.READ);
    authorization.setUserId(Authorization.ANY);
    authorization.setResource(Resources.FILTER);
    authorization.setResourceId(Authorization.ANY);
    processEngine.getAuthorizationService().saveAuthorization(authorization);
    long count = filterService.createFilterQuery().count();
    assertEquals(1, count);
    Filter returnedFilter = filterService.createFilterQuery().filterId(filter.getId()).singleResult();
    assertNotNull(returnedFilter);
    returnedFilter = filterService.getFilter(filter.getId());
    assertNotNull(returnedFilter);
    processEngine.getAuthorizationService().deleteAuthorization(authorization.getId());
}
Also used : Authorization(org.camunda.bpm.engine.authorization.Authorization) Filter(org.camunda.bpm.engine.filter.Filter)

Example 48 with Filter

use of org.camunda.bpm.engine.filter.Filter in project camunda-bpm-platform by camunda.

the class FilterAuthorizationsTest method testReadFilterPermitted.

public void testReadFilterPermitted() {
    Filter filter = createTestFilter();
    grantReadFilter(filter.getId());
    long count = filterService.createFilterQuery().count();
    assertEquals(1, count);
    Filter returnedFilter = filterService.createFilterQuery().filterId(filter.getId()).singleResult();
    assertNotNull(returnedFilter);
    returnedFilter = filterService.getFilter(filter.getId());
    assertNotNull(returnedFilter);
    // create test Task
    Task task = taskService.newTask("test");
    taskService.saveTask(task);
    Task result = filterService.singleResult(filter.getId());
    assertNotNull(result);
    assertEquals(task.getId(), result.getId());
    List<Task> resultList = filterService.list(filter.getId());
    assertNotNull(resultList);
    assertEquals(1, resultList.size());
    assertEquals(task.getId(), resultList.get(0).getId());
    resultList = filterService.listPage(filter.getId(), 0, 2);
    assertNotNull(resultList);
    assertEquals(1, resultList.size());
    assertEquals(task.getId(), resultList.get(0).getId());
    count = filterService.count(filter.getId());
    assertEquals(1, count);
    // remove Task
    taskService.deleteTask(task.getId(), true);
}
Also used : Task(org.camunda.bpm.engine.task.Task) Filter(org.camunda.bpm.engine.filter.Filter)

Example 49 with Filter

use of org.camunda.bpm.engine.filter.Filter in project camunda-bpm-platform by camunda.

the class FilterAuthorizationsTest method testReadFilterNotPermitted.

public void testReadFilterNotPermitted() {
    Filter filter = createTestFilter();
    long count = filterService.createFilterQuery().count();
    assertEquals(0, count);
    Filter returnedFilter = filterService.createFilterQuery().filterId(filter.getId()).singleResult();
    assertNull(returnedFilter);
    try {
        filterService.getFilter(filter.getId());
        fail("Exception expected");
    } catch (AuthorizationException e) {
    // expected
    }
    try {
        filterService.singleResult(filter.getId());
        fail("Exception expected");
    } catch (AuthorizationException e) {
    // expected
    }
    try {
        filterService.list(filter.getId());
        fail("Exception expected");
    } catch (AuthorizationException e) {
    // expected
    }
    try {
        filterService.listPage(filter.getId(), 1, 2);
        fail("Exception expected");
    } catch (AuthorizationException e) {
    // expected
    }
    try {
        filterService.count(filter.getId());
        fail("Exception expected");
    } catch (AuthorizationException e) {
    // expected
    }
}
Also used : Filter(org.camunda.bpm.engine.filter.Filter) AuthorizationException(org.camunda.bpm.engine.AuthorizationException)

Example 50 with Filter

use of org.camunda.bpm.engine.filter.Filter in project camunda-bpm-platform by camunda.

the class FilterAuthorizationsTest method testDefaultFilterAuthorization.

public void testDefaultFilterAuthorization() {
    // create two other users beside testUser
    User ownerUser = createTestUser("ownerUser");
    User anotherUser = createTestUser("anotherUser");
    // grant testUser create permission
    grantCreateFilter();
    // create a new filter with ownerUser as owner
    Filter filter = filterService.newTaskFilter("testFilter");
    filter.setOwner(ownerUser.getId());
    filterService.saveFilter(filter);
    assertFilterPermission(Permissions.CREATE, testUser, null, true);
    assertFilterPermission(Permissions.CREATE, ownerUser, null, false);
    assertFilterPermission(Permissions.CREATE, anotherUser, null, false);
    assertFilterPermission(Permissions.UPDATE, testUser, filter.getId(), false);
    assertFilterPermission(Permissions.UPDATE, ownerUser, filter.getId(), true);
    assertFilterPermission(Permissions.UPDATE, anotherUser, filter.getId(), false);
    assertFilterPermission(Permissions.READ, testUser, filter.getId(), false);
    assertFilterPermission(Permissions.READ, ownerUser, filter.getId(), true);
    assertFilterPermission(Permissions.READ, anotherUser, filter.getId(), false);
    assertFilterPermission(Permissions.DELETE, testUser, filter.getId(), false);
    assertFilterPermission(Permissions.DELETE, ownerUser, filter.getId(), true);
    assertFilterPermission(Permissions.DELETE, anotherUser, filter.getId(), false);
}
Also used : User(org.camunda.bpm.engine.identity.User) Filter(org.camunda.bpm.engine.filter.Filter)

Aggregations

Filter (org.camunda.bpm.engine.filter.Filter)69 TaskQueryImpl (org.camunda.bpm.engine.impl.TaskQueryImpl)26 TaskQuery (org.camunda.bpm.engine.task.TaskQuery)26 MockProvider.mockFilter (org.camunda.bpm.engine.rest.helper.MockProvider.mockFilter)15 FilterEntity (org.camunda.bpm.engine.impl.persistence.entity.FilterEntity)14 Test (org.junit.Test)14 HashMap (java.util.HashMap)10 Matchers.isEmptyOrNullString (org.hamcrest.Matchers.isEmptyOrNullString)9 Matchers.anyString (org.mockito.Matchers.anyString)9 Map (java.util.Map)7 Response (com.jayway.restassured.response.Response)6 ArrayList (java.util.ArrayList)5 AuthorizationException (org.camunda.bpm.engine.AuthorizationException)4 ProcessEngineException (org.camunda.bpm.engine.ProcessEngineException)4 Date (java.util.Date)3 FilterService (org.camunda.bpm.engine.FilterService)3 NotValidException (org.camunda.bpm.engine.exception.NotValidException)3 FilterQuery (org.camunda.bpm.engine.filter.FilterQuery)3 User (org.camunda.bpm.engine.identity.User)3 Task (org.camunda.bpm.engine.task.Task)3