diff --git a/src/main/java/nl/tudelft/queue/service/RoleDTOService.java b/src/main/java/nl/tudelft/queue/service/RoleDTOService.java index 70f1ead5b37b5f5b2a0915c14e5c8139c5f91b65..4108b3a4bf481aaa7376844467881315bc6ff111 100644 --- a/src/main/java/nl/tudelft/queue/service/RoleDTOService.java +++ b/src/main/java/nl/tudelft/queue/service/RoleDTOService.java @@ -29,7 +29,6 @@ import nl.tudelft.labracore.api.dto.*; import nl.tudelft.labracore.lib.security.user.Person; import nl.tudelft.queue.cache.EditionRolesCacheManager; -import org.modelmapper.ModelMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -41,9 +40,6 @@ public class RoleDTOService { @Autowired private RoleControllerApi rApi; - @Autowired - private ModelMapper mapper; - public List<String> names(List<PersonSummaryDTO> people) { return people.stream().map(PersonSummaryDTO::getDisplayName).collect(Collectors.toList()); } @@ -149,9 +145,8 @@ public class RoleDTOService { public boolean isStaff(RoleDetailsDTO role) { var type = role.getType(); - return type.equals(RoleDetailsDTO.TypeEnum.TA) || type.equals(RoleDetailsDTO.TypeEnum.HEAD_TA) - || type.equals(RoleDetailsDTO.TypeEnum.TEACHER) - || type.equals(RoleDetailsDTO.TypeEnum.TEACHER_RO); + return Set.of(RoleDetailsDTO.TypeEnum.TA, RoleDetailsDTO.TypeEnum.HEAD_TA, + RoleDetailsDTO.TypeEnum.TEACHER, RoleDetailsDTO.TypeEnum.TEACHER_RO).contains(type); } public boolean isStaff(RolePersonDetailsDTO role) { diff --git a/src/test/java/nl/tudelft/queue/service/LabStatusServiceTest.java b/src/test/java/nl/tudelft/queue/service/LabStatusServiceTest.java index f84f60e9f628a56b4e400b1994c31f9acdc90c73..36b6204e0cdd00c991cc1ff13f6fe9afcc521f2e 100644 --- a/src/test/java/nl/tudelft/queue/service/LabStatusServiceTest.java +++ b/src/test/java/nl/tudelft/queue/service/LabStatusServiceTest.java @@ -24,6 +24,7 @@ import java.util.Set; import javax.transaction.Transactional; +import nl.tudelft.labracore.api.dto.EditionDetailsDTO; import nl.tudelft.queue.model.LabRequest; import nl.tudelft.queue.model.labs.RegularLab; @@ -51,6 +52,10 @@ class LabStatusServiceTest { RegularLab oopNowRegularLab1; + RegularLab rlOopNowSharedLab; + + EditionDetailsDTO oopNow; + LabRequest[] oopNowRegularLab1Requests; @BeforeEach @@ -59,6 +64,8 @@ class LabStatusServiceTest { oopNowRegularLab1 = db.getOopNowRegularLab1(); oopNowRegularLab1Requests = db.getOopNowRegularLab1Requests(); + rlOopNowSharedLab = db.getRlOopNowSharedLab(); + oopNow = db.getOopNow(); } @@ -67,7 +74,7 @@ class LabStatusServiceTest { var result = sessionStatusService.getTimeSinceLastRequestTA(oopNowRegularLab1, new HashSet<>()); assertThat(result).hasSize(db.getOopNowHeadTAs().length + db.getOopNowTAs().length + 1); // 1 for teacher - assertThat(result.get("Student 211")).isEqualTo(Pair.of(-1L, "N/A")); + assertThat(result.get("Student 211")).isEqualTo(Pair.of(0L, "N/A")); assertThat(result.get("Student 200").getKey()).isGreaterThan(0L).isLessThan(10L); assertThat(result.get("Student 200").getValue()).isNotEqualTo("N/A"); } @@ -79,4 +86,11 @@ class LabStatusServiceTest { assertThat(result).isEmpty(); } + @Test + void filterYieldsOnlyRespectiveCourseStaff() throws Exception { + var result = sessionStatusService.getTimeSinceLastRequestTA(rlOopNowSharedLab, + Set.of(oopNow.getId())); + assertThat(result).hasSize(db.getOopNowHeadTAs().length + db.getOopNowTAs().length + 1); + } + }