3321 Do not include the current reviewer as a candidate.
This commit is contained in:
parent
36d3ab35ad
commit
764986d007
core/src
main/java/se/su/dsv/scipro/reviewing
test/java/se/su/dsv/scipro/reviewing
@ -136,6 +136,7 @@ class ReviewerCapacityServiceImpl implements ReviewerCapacityService, ReviewerAs
|
||||
public ReviewerCandidates getCandidatesToReview(Project project, LocalDate date) {
|
||||
List<User> reviewers = userService.findActiveReviewers();
|
||||
reviewers.remove(project.getHeadSupervisor());
|
||||
reviewers.removeAll(project.getReviewers());
|
||||
|
||||
List<ReviewerCandidates.Candidate> good = new ArrayList<>();
|
||||
List<ReviewerCandidates.Candidate> wrongLanguage = new ArrayList<>();
|
||||
|
@ -172,6 +172,25 @@ class ReviewerCapacityServiceImplTest extends IntegrationTest {
|
||||
assertFalse(candidates.unavailable().stream().anyMatch(c -> c.reviewer().equals(supervisor)));
|
||||
}
|
||||
|
||||
@Test
|
||||
void the_current_reviewer_should_never_be_suggested_as_a_candidate() {
|
||||
// given
|
||||
reviewer.setLanguages(EnumSet.allOf(Language.class));
|
||||
reviewer.addResearchArea(researchArea);
|
||||
service.assignTarget(reviewer, springTarget(1));
|
||||
service.assignReviewer(project, reviewer);
|
||||
|
||||
// when
|
||||
ReviewerCandidates candidates = service.getCandidatesToReview(project, SOME_DATE_IN_SPRING);
|
||||
|
||||
// then
|
||||
assertFalse(candidates.good().stream().anyMatch(c -> c.reviewer().equals(reviewer)));
|
||||
assertFalse(candidates.wrongResearchArea().stream().anyMatch(c -> c.reviewer().equals(reviewer)));
|
||||
assertFalse(candidates.wrongLanguage().stream().anyMatch(c -> c.reviewer().equals(reviewer)));
|
||||
assertFalse(candidates.busy().stream().anyMatch(c -> c.reviewer().equals(reviewer)));
|
||||
assertFalse(candidates.unavailable().stream().anyMatch(c -> c.reviewer().equals(reviewer)));
|
||||
}
|
||||
|
||||
private static Target springTarget(final int target) {
|
||||
return new Target(YEAR_2024, target, 0, "");
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user