private List<String> getRecipients() { try (DbSession session = dbClient.openSession(false)) { return dbClient.authorizationDao().selectQualityProfileAdministratorLogins(session); } } }
@Test public void selectQualityProfileAdministratorLogins_does_not_return_non_quality_profile_administrator_logins() { OrganizationDto organization1 = db.organizations().insert(); UserDto user1 = db.users().insertUser(); db.users().insertPermissionOnUser(organization1, user1, ADMINISTER); db.users().insertUser(); List<String> logins = underTest.selectQualityProfileAdministratorLogins(dbSession); assertThat(logins).isEmpty(); }
@Test public void selectQualityProfileAdministratorLogins_return_users_with_quality_profile_administrator_permission() { OrganizationDto organization1 = db.organizations().insert(); UserDto user1 = db.users().insertUser(); db.users().insertPermissionOnUser(organization1, user1, ADMINISTER_QUALITY_PROFILES); OrganizationDto organization2 = db.organizations().insert(); UserDto user2 = db.users().insertUser(); db.users().insertPermissionOnUser(organization2, user2, ADMINISTER_QUALITY_PROFILES); List<String> logins = underTest.selectQualityProfileAdministratorLogins(dbSession); assertThat(logins).containsExactlyInAnyOrder(user1.getLogin(), user2.getLogin()); }
@Test public void selectQualityProfileAdministratorLogins_return_users_within_quality_profile_administrator_group() { OrganizationDto organization1 = db.organizations().insert(); GroupDto qualityProfileAdministratorGroup1 = db.users().insertGroup(organization1); db.users().insertPermissionOnGroup(qualityProfileAdministratorGroup1, ADMINISTER_QUALITY_PROFILES); UserDto user1 = db.users().insertUser(); db.users().insertMember(qualityProfileAdministratorGroup1, user1); OrganizationDto organization2 = db.organizations().insert(); GroupDto qualityProfileAdministratorGroup2 = db.users().insertGroup(organization2); db.users().insertPermissionOnGroup(qualityProfileAdministratorGroup2, ADMINISTER_QUALITY_PROFILES); UserDto user2 = db.users().insertUser(); db.users().insertMember(qualityProfileAdministratorGroup2, user2); List<String> logins = underTest.selectQualityProfileAdministratorLogins(dbSession); assertThat(logins).containsExactlyInAnyOrder(user1.getLogin(), user2.getLogin()); }
private List<String> getRecipients() { try (DbSession session = dbClient.openSession(false)) { return dbClient.authorizationDao().selectQualityProfileAdministratorLogins(session); } } }