87: Update test

This commit is contained in:
Tom Zhao 2025-04-09 15:17:21 +02:00
parent 195e7f3bfb
commit d875d9ce7c

@ -7,6 +7,7 @@ import se.su.dsv.scipro.file.FileUpload;
import se.su.dsv.scipro.project.Project;
import se.su.dsv.scipro.project.ProjectStatus;
import se.su.dsv.scipro.reviewing.ReviewerAssignmentService;
import se.su.dsv.scipro.reviewing.ReviewerCapacityService;
import se.su.dsv.scipro.reviewing.RoughDraftApproval;
import se.su.dsv.scipro.reviewing.RoughDraftApprovalService;
import se.su.dsv.scipro.security.auth.roles.Roles;
@ -30,13 +31,16 @@ import static se.su.dsv.scipro.project.split.SplitOrRestartProjectService.Splitt
public class SplitOrRestartProjectServiceIntegrationTest extends IntegrationTest {
@Inject
private SplitOrRestartProjectService sorpService;
private SplitOrRestartProjectService splitOrRestartProjectService;
@Inject
private RoughDraftApprovalService rdaService;
private RoughDraftApprovalService roughDraftApprovalService;
@Inject
private ReviewerAssignmentService raService;
private ReviewerAssignmentService reviewerAssignmentService;
@Inject
private ReviewerCapacityService reviewerCapacityService;
private ResearchArea researchArea;
private Project parentProject;
@ -58,7 +62,7 @@ public class SplitOrRestartProjectServiceIntegrationTest extends IntegrationTest
@Test
public void project_must_exist() {
SplittableStatusRecord record = sorpService.getSplittableStatus(0);
SplittableStatusRecord record = splitOrRestartProjectService.getSplittableStatus(0);
SplittableStatus status = record.splittableStatus();
assertTrue(status == SplittableStatus.NOT_EXIST);
@ -69,7 +73,7 @@ public class SplitOrRestartProjectServiceIntegrationTest extends IntegrationTest
parentProject.setProjectStatus(ProjectStatus.INACTIVE);
parentProject = save(parentProject);
SplittableStatusRecord record = sorpService.getSplittableStatus(parentProject.getId());
SplittableStatusRecord record = splitOrRestartProjectService.getSplittableStatus(parentProject.getId());
SplittableStatus status = record.splittableStatus();
assertTrue(status == SplittableStatus.NOT_ACTIVE);
@ -77,7 +81,7 @@ public class SplitOrRestartProjectServiceIntegrationTest extends IntegrationTest
@Test
public void project_must_have_two_participants() {
SplittableStatusRecord record = sorpService.getSplittableStatus(parentProject.getId());
SplittableStatusRecord record = splitOrRestartProjectService.getSplittableStatus(parentProject.getId());
SplittableStatus status = record.splittableStatus();
assertTrue(status == SplittableStatus.NOT_TWO_PARTICIPANTS);
@ -87,7 +91,7 @@ public class SplitOrRestartProjectServiceIntegrationTest extends IntegrationTest
public void project_phase_two_started() {
setUpBeforePhaseTwo();
SplittableStatusRecord record = sorpService.getSplittableStatus(parentProject.getId());
SplittableStatusRecord record = splitOrRestartProjectService.getSplittableStatus(parentProject.getId());
SplittableStatus status = record.splittableStatus();
assertTrue(status == SplittableStatus.PHASE_TWO_STARTED);
@ -97,26 +101,38 @@ public class SplitOrRestartProjectServiceIntegrationTest extends IntegrationTest
public void split_on_failed_phase_two() {
setUpBeforePhaseTwo();
Optional<RoughDraftApproval> optional = this.rdaService.findBy(parentProject);
Optional<RoughDraftApproval> optional = this.roughDraftApprovalService.findBy(parentProject);
optional.ifPresent(rda -> rda.reject("Fail", Optional.empty()));
SplittableStatusRecord record = sorpService.getSplittableStatus(parentProject.getId());
SplittableStatusRecord record = splitOrRestartProjectService.getSplittableStatus(parentProject.getId());
SplittableStatus status = record.splittableStatus();
assertTrue(status == SplittableStatus.OK);
sorpService.splitProject(parentProject.getId());
List<Project> childProjects = sorpService.getChildProjects(parentProject.getId());
splitOrRestartProjectService.splitProject(parentProject.getId());
List<Project> childProjects = splitOrRestartProjectService.getChildProjects(parentProject.getId());
assertTrue(parentProject.getProjectStatus() == ProjectStatus.INACTIVE);
assertTrue(childProjects.size() == 2);
childProjects.forEach(project -> {
assertTrue(project.getProjectParticipants().size() == 1);
assertTrue(project.getHeadSupervisor().equals(supervisor));
assertTrue(project.getProjectStatus() == ProjectStatus.ACTIVE);
assertTrue(roughDraftApprovalService.findBy(project).isEmpty());
});
}
@Test
public void split_on_approved_phase_two() {
setUpBeforePhaseTwo();
Optional<RoughDraftApproval> optional = this.roughDraftApprovalService.findBy(parentProject);
optional.ifPresent(rda -> rda.approve("Approve", Optional.empty()));
}
/*
PHASE_TWO_STARTED,
FINAL_SEMINAR_PHASE_STARTED,
@ -165,10 +181,10 @@ public class SplitOrRestartProjectServiceIntegrationTest extends IntegrationTest
parentProject.addProjectParticipant(author2);
save(parentProject);
rdaService.requestApproval(parentProject, dummyFile(), "comment");
roughDraftApprovalService.requestApproval(parentProject, dummyFile(), "comment");
reviwer = createEmployee("Lisa", "Employee", "lisa.employee@example.com", true);
ReviewerAssignmentService.ReviewerAssignment reviewerAssignment = raService.assignReviewer(parentProject, reviwer);
ReviewerAssignmentService.ReviewerAssignment reviewerAssignment = reviewerAssignmentService.assignReviewer(parentProject, reviwer);
}
private FileUpload dummyFile() {