@Test(expected = ForbiddenException.class) public void check_project_permission_ko() { UserSession session = newServerUserSession().setLogin("marius").setUserId(1); when(authorizationDao.selectAuthorizedRootProjectsKeys(1, UserRole.USER)) .thenReturn(newArrayList("com.foo:Bar2")); session.checkProjectPermission(UserRole.USER, "com.foo:Bar"); }
@Test public void has_project_permission() { UserSession session = newServerUserSession().setLogin("marius").setUserId(1); when(authorizationDao.selectAuthorizedRootProjectsKeys(1, UserRole.USER)) .thenReturn(newArrayList("com.foo:Bar")); assertThat(session.hasProjectPermission(UserRole.USER, "com.foo:Bar")).isTrue(); assertThat(session.hasProjectPermission(UserRole.CODEVIEWER, "com.foo:Bar")).isFalse(); assertThat(session.hasProjectPermission(UserRole.ADMIN, "com.foo:Bar")).isFalse(); }
@Test(expected = ForbiddenException.class) public void check_component_dto_permission_ko() { UserSession session = newServerUserSession().setLogin("marius").setUserId(1); ComponentDto project = ComponentTesting.newProjectDto(); when(authorizationDao.selectAuthorizedRootProjectsKeys(1, UserRole.USER)) .thenReturn(newArrayList(project.uuid())); session.checkComponentPermission(UserRole.USER, "another"); }
@Test(expected = ForbiddenException.class) public void check_component_key_permission_ko() { UserSession session = newServerUserSession().setLogin("marius").setUserId(1); when(resourceDao.getRootProjectByComponentKey("com.foo:Bar:BarFile.xoo")) .thenReturn(new ResourceDto().setKey("com.foo:Bar2")); when(authorizationDao.selectAuthorizedRootProjectsKeys(1, UserRole.USER)) .thenReturn(newArrayList("com.foo:Bar")); session.checkComponentPermission(UserRole.USER, "com.foo:Bar:BarFile.xoo"); }
@Test public void has_component_permission() { UserSession session = newServerUserSession().setLogin("marius").setUserId(1); String componentKey = "com.foo:Bar:BarFile.xoo"; when(resourceDao.getRootProjectByComponentKey(componentKey)) .thenReturn(new ResourceDto().setKey(componentKey)); when(authorizationDao.selectAuthorizedRootProjectsKeys(1, UserRole.USER)) .thenReturn(newArrayList(componentKey)); assertThat(session.hasComponentPermission(UserRole.USER, componentKey)).isTrue(); assertThat(session.hasComponentPermission(UserRole.CODEVIEWER, componentKey)).isFalse(); assertThat(session.hasComponentPermission(UserRole.ADMIN, componentKey)).isFalse(); }