@Test public void select_by_query_with_special_characters() { String groupNameWithSpecialCharacters = "group%_%/name"; underTest.insert(dbSession, newGroupDto().setName(groupNameWithSpecialCharacters).setOrganizationUuid("org1")); db.commit(); List<GroupDto> result = underTest.selectByQuery(dbSession, "org1", "roup%_%/nam", 0, 10); int resultCount = underTest.countByQuery(dbSession, "org1", "roup%_%/nam"); assertThat(result).hasSize(1); assertThat(result.get(0).getName()).isEqualTo(groupNameWithSpecialCharacters); assertThat(resultCount).isEqualTo(1); }
/** * Create group in specified organization */ public GroupDto insertGroup(OrganizationDto organizationDto) { GroupDto group = newGroupDto().setOrganizationUuid(organizationDto.getUuid()); return insertGroup(group); }
@Test public void set_mock_session() { GroupDto group = newGroupDto(); MockUserSession mock = new MockUserSession("foo").setGroups(group); assertThat(mock.getLogin()).isEqualTo("foo"); assertThat(mock.getUuid()).isEqualTo("foouuid"); assertThat(mock.getGroups()).extracting(GroupDto::getId).containsOnly(group.getId()); assertThat(mock.isLoggedIn()).isTrue(); } }
@Test public void selectByNames() { GroupDto group1InOrg1 = underTest.insert(dbSession, newGroupDto().setName("group1").setOrganizationUuid("org1")); GroupDto group2InOrg1 = underTest.insert(dbSession, newGroupDto().setName("group2").setOrganizationUuid("org1")); GroupDto group1InOrg2 = underTest.insert(dbSession, newGroupDto().setName("group1").setOrganizationUuid("org2")); GroupDto group3InOrg2 = underTest.insert(dbSession, newGroupDto().setName("group3").setOrganizationUuid("org2")); dbSession.commit(); assertThat(underTest.selectByNames(dbSession, "org1", asList("group1", "group2", "group3", "missingGroup"))).extracting(GroupDto::getId) .containsOnly(group1InOrg1.getId(), group2InOrg1.getId()); assertThat(underTest.selectByNames(dbSession, "org1", Collections.emptyList())).isEmpty(); assertThat(underTest.selectByNames(dbSession, "missingOrg", asList("group1"))).isEmpty(); }
@Test public void getDefaultGroupId_returns_data_when_default_group_id_is_not_null() { when(system2.now()).thenReturn(DATE_3); insertOrganization(ORGANIZATION_DTO_1); underTest.setDefaultGroupId(dbSession, ORGANIZATION_DTO_1.getUuid(), GroupTesting.newGroupDto().setId(10)); Optional<Integer> optional = underTest.getDefaultGroupId(dbSession, ORGANIZATION_DTO_1.getUuid()); assertThat(optional).isNotEmpty(); assertThat(optional.get()).isEqualTo(10); verifyOrganizationUpdatedAt(ORGANIZATION_DTO_1.getUuid(), DATE_3); }
@Test public void get_session_for_user() { GroupDto group = GroupTesting.newGroupDto(); MockUserSession expected = new MockUserSession("karadoc") .setUuid("karadoc-uuid") .setUserId(123) .setGroups(group); threadLocalUserSession.set(expected); UserSession session = threadLocalUserSession.get(); assertThat(session).isSameAs(expected); assertThat(threadLocalUserSession.getUserId()).isEqualTo(123); assertThat(threadLocalUserSession.getLogin()).isEqualTo("karadoc"); assertThat(threadLocalUserSession.getUuid()).isEqualTo("karadoc-uuid"); assertThat(threadLocalUserSession.isLoggedIn()).isTrue(); assertThat(threadLocalUserSession.getGroups()).extracting(GroupDto::getId).containsOnly(group.getId()); }
/** * Create group in default organization */ public GroupDto insertGroup() { GroupDto group = newGroupDto().setOrganizationUuid(db.getDefaultOrganization().getUuid()); return insertGroup(group); }
public GroupDto insertGroup(OrganizationDto organization, String name) { GroupDto group = newGroupDto().setName(name).setOrganizationUuid(organization.getUuid()); return insertGroup(group); }
private static GroupDto newGroup(OrganizationDto org, String name, String description) { return GroupTesting.newGroupDto().setName(name).setDescription(description).setOrganizationUuid(org.getUuid()); } }
@Test public void setDefaultGroupId_throws_NPE_when_uuid_is_null() { expectedException.expect(NullPointerException.class); expectedException.expectMessage("uuid can't be null"); underTest.setDefaultGroupId(dbSession, null, GroupTesting.newGroupDto().setId(10)); }
private void insertDefaultGroup(OrganizationDto org, String name, int numberOfMembers) { GroupDto group = newGroupDto().setName(name).setDescription(capitalize(name)).setOrganizationUuid(org.getUuid()); db.users().insertDefaultGroup(group); addMembers(group, numberOfMembers); }
@Test public void setDefaultGroupId_throws_NPE_when_default_group_id_is_null() { expectedException.expect(NullPointerException.class); expectedException.expectMessage("Default group id cannot be null"); underTest.setDefaultGroupId(dbSession, "uuid", GroupTesting.newGroupDto().setId(null)); }
private void insertGroup(OrganizationDto org, String name, int numberOfMembers) { GroupDto group = newGroupDto().setName(name).setDescription(capitalize(name)).setOrganizationUuid(org.getUuid()); db.users().insertGroup(group); addMembers(group, numberOfMembers); }
@Test public void return_group_membership() { UserDto user = db.users().insertUser(); userSession.logIn(user); db.users().insertMember(db.users().insertGroup(newGroupDto().setName("Jedi")), user); db.users().insertMember(db.users().insertGroup(newGroupDto().setName("Rebel")), user); CurrentWsResponse response = call(); assertThat(response.getGroupsList()).containsOnly("Jedi", "Rebel"); }
private GroupDto insertDefaultGroup(String name, String description) { return db.users().insertDefaultGroup(newGroupDto().setName(name).setDescription(description).setOrganizationUuid(db.getDefaultOrganization().getUuid())); }
@Test public void select_group_names_by_query_and_template_returns_anyone() { OrganizationDto organization = db.organizations().insert(); PermissionTemplateDto template = permissionTemplateDbTester.insertTemplate(organization); GroupDto group = db.users().insertGroup(newGroupDto().setName("Group")); PermissionTemplateDto otherTemplate = permissionTemplateDbTester.insertTemplate(organization); permissionTemplateDbTester.addGroupToTemplate(otherTemplate.getId(), group.getId(), USER); assertThat(selectGroupNamesByQueryAndTemplate(builder().setSearchQuery("nyo"), organization, template)) .containsExactly("Anyone"); }
private GroupDto insertGroup(String name, String description) { return db.users().insertGroup(newGroupDto().setName(name).setDescription(description).setOrganizationUuid(db.getDefaultOrganization().getUuid())); }
@Test public void should_find_project_for_which_the_user_has_indirect_permission_through_group() { GroupDto group = newGroupDto(); userSession.logIn().setGroups(group); ComponentDto project = newProject("sonarqube", "Quality Product"); indexer.index(project); assertNoSearchResults("sonarqube"); // give the user implicit access (though group) authorizationIndexerTester.allowOnlyGroup(project, group); assertSearchResults("sonarqube", project); }
private UserGroupDto insertUserGroup(UserDto user) { GroupDto group = newGroupDto().setName(randomAlphanumeric(30)); dbClient.groupDao().insert(session, group); UserGroupDto dto = new UserGroupDto().setUserId(user.getId()).setGroupId(group.getId()); dbClient.userGroupDao().insert(session, dto); return dto; } }
private PermissionTemplateDto insertTemplateAndAssociatedPermissions(OrganizationDto organization) { PermissionTemplateDto dto = db.permissionTemplates().insertTemplate(organization); UserDto user = db.getDbClient().userDao().insert(db.getSession(), UserTesting.newUserDto().setActive(true)); GroupDto group = db.getDbClient().groupDao().insert(db.getSession(), GroupTesting.newGroupDto()); db.getDbClient().permissionTemplateDao().insertUserPermission(db.getSession(), dto.getId(), user.getId(), UserRole.ADMIN); db.getDbClient().permissionTemplateDao().insertGroupPermission(db.getSession(), dto.getId(), group.getId(), UserRole.CODEVIEWER); db.commit(); return dto; }