Skip to content
Snippets Groups Projects

Add tests for Lab model

1 file
+ 160
57
Compare changes
  • Side-by-side
  • Inline
@@ -19,12 +19,12 @@ package nl.tudelft.ewi.queue.service;
import static org.assertj.core.api.Assertions.assertThat;
import java.time.LocalDateTime;
import nl.tudelft.ewi.queue.QueueApplication;
import nl.tudelft.ewi.queue.model.Course;
import nl.tudelft.ewi.queue.model.Student;
import nl.tudelft.ewi.queue.model.Teacher;
import nl.tudelft.ewi.queue.model.UserPrincipal;
import nl.tudelft.ewi.queue.model.*;
import nl.tudelft.ewi.queue.repository.CourseRepository;
import nl.tudelft.ewi.queue.repository.UserRepository;
import org.junit.Before;
import org.junit.Test;
@@ -36,8 +36,6 @@ import org.springframework.security.test.context.support.WithUserDetails;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.transaction.annotation.Transactional;
import java.time.LocalDateTime;
@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest(classes = QueueApplication.class)
public class PermissionServiceTest {
@@ -81,45 +79,45 @@ public class PermissionServiceTest {
assertThat(permissionService.canViewCourse(principal, 1L)).isFalse();
}
@Test
@WithUserDetails("assistant1@tudelft.nl")
@Transactional
public void canViewCourseAssistant() {
assertThat(permissionService.canViewCourse(principal, 1L)).isTrue();
}
@Test
@WithUserDetails("manager1@tudelft.nl")
@Transactional
public void canViewCourseManager() {
assertThat(permissionService.canViewCourse(principal, 1L)).isTrue();
}
@Test
@WithUserDetails("teacher1@tudelft.nl")
@Transactional
public void canViewCourseTeacher() {
assertThat(permissionService.canViewCourse(principal, 1L)).isTrue();
}
@Test
@WithUserDetails("admin@tudelft.nl")
@Transactional
public void canViewCourseAdmin() {
assertThat(permissionService.canViewCourse(principal, 1L)).isTrue();
}
@Test
@WithUserDetails("student1@tudelft.nl")
@Transactional
public void canViewArchivedCourse() {
Course course = new Course("archived", "archived", "", false, true);
UserPrincipal userPrincipal = (UserPrincipal) principal;
userPrincipal.getUser().addRole(new Student(userPrincipal.getUser(), course, LocalDateTime.now()));
course.setIsArchived(true);
courseRepository.save(course);
assertThat(permissionService.canViewCourse(principal, course.getId())).isFalse();
}
@Test
@WithUserDetails("assistant1@tudelft.nl")
@Transactional
public void canViewCourseAssistant() {
assertThat(permissionService.canViewCourse(principal, 1L)).isTrue();
}
@Test
@WithUserDetails("manager1@tudelft.nl")
@Transactional
public void canViewCourseManager() {
assertThat(permissionService.canViewCourse(principal, 1L)).isTrue();
}
@Test
@WithUserDetails("teacher1@tudelft.nl")
@Transactional
public void canViewCourseTeacher() {
assertThat(permissionService.canViewCourse(principal, 1L)).isTrue();
}
@Test
@WithUserDetails("admin@tudelft.nl")
@Transactional
public void canViewCourseAdmin() {
assertThat(permissionService.canViewCourse(principal, 1L)).isTrue();
}
@Test
@WithUserDetails("student1@tudelft.nl")
@Transactional
public void canViewArchivedCourse() {
Course course = new Course("archived", "archived", "", false, true);
UserPrincipal userPrincipal = (UserPrincipal) principal;
userPrincipal.getUser().addRole(new Student(userPrincipal.getUser(), course, LocalDateTime.now()));
course.setIsArchived(true);
courseRepository.save(course);
assertThat(permissionService.canViewCourse(principal, course.getId())).isFalse();
}
@Test
@WithUserDetails("student1@tudelft.nl")
@@ -135,19 +133,19 @@ public class PermissionServiceTest {
assertThat(permissionService.canLeaveCourse(principal, 1L)).isFalse();
}
@Test
@WithUserDetails("assistant1@tudelft.nl")
@Transactional
public void canLeaveCourseAssistant() {
assertThat(permissionService.canLeaveCourse(principal, 1L)).isTrue();
}
@Test
@WithUserDetails("assistant1@tudelft.nl")
@Transactional
public void canLeaveCourseAssistant() {
assertThat(permissionService.canLeaveCourse(principal, 1L)).isTrue();
}
@Test
@WithUserDetails("manager1@tudelft.nl")
@Transactional
public void canLeaveCourseManager() {
assertThat(permissionService.canLeaveCourse(principal, 1L)).isTrue();
}
@Test
@WithUserDetails("manager1@tudelft.nl")
@Transactional
public void canLeaveCourseManager() {
assertThat(permissionService.canLeaveCourse(principal, 1L)).isTrue();
}
@Test
@WithUserDetails("teacher1@tudelft.nl")
@@ -166,4 +164,109 @@ public class PermissionServiceTest {
assertThat(permissionService.canLeaveCourse(principal, 3L)).isFalse();
}
@Test
@WithUserDetails("admin@tudelft.nl")
@Transactional
public void canManageParticipantsAdmin() {
assertThat(permissionService.canManageParticipants(principal, 1L)).isTrue();
}
@Test
@WithUserDetails("teacher1@tudelft.nl")
@Transactional
public void canManageParticipantsTeacher() {
assertThat(permissionService.canManageParticipants(principal, 1L)).isTrue();
}
@Test
@WithUserDetails("manager1@tudelft.nl")
@Transactional
public void canManageParticipantsManager() {
assertThat(permissionService.canManageParticipants(principal, 1L)).isTrue();
}
@Test
@WithUserDetails("assistant1@tudelft.nl")
@Transactional
public void canManageParticipantsAssistant() {
assertThat(permissionService.canManageParticipants(principal, 1L)).isFalse();
}
@Test
@WithUserDetails("student1@tudelft.nl")
@Transactional
public void canManageParticipantsStudent() {
assertThat(permissionService.canManageParticipants(principal, 1L)).isFalse();
}
@Test
@WithUserDetails("admin@tudelft.nl")
@Transactional
public void canManageTeachersAdmin() {
assertThat(permissionService.canManageTeachers(principal, 1L)).isTrue();
}
@Test
@WithUserDetails("teacher1@tudelft.nl")
@Transactional
public void canManageTeachersTeacher() {
assertThat(permissionService.canManageTeachers(principal, 1L)).isTrue();
}
@Test
@WithUserDetails("manager1@tudelft.nl")
@Transactional
public void canManageTeachersManager() {
assertThat(permissionService.canManageTeachers(principal, 1L)).isFalse();
}
@Test
@WithUserDetails("assistant1@tudelft.nl")
@Transactional
public void canManageTeachersAssistant() {
assertThat(permissionService.canManageTeachers(principal, 1L)).isFalse();
}
@Test
@WithUserDetails("student1@tudelft.nl")
@Transactional
public void canManageTeachersStudent() {
assertThat(permissionService.canManageTeachers(principal, 1L)).isFalse();
}
@Test
@WithUserDetails("admin@tudelft.nl")
@Transactional
public void canUpdateParticipantAdminStudent() {
assertThat(permissionService.canUpdateParticipant(principal, 1L, 1L)).isTrue();
}
@Test
@WithUserDetails("teacher1@tudelft.nl")
@Transactional
public void canUpdateParticipantTeacherStudent() {
assertThat(permissionService.canUpdateParticipant(principal, 1L, 1L)).isTrue();
}
@Test
@WithUserDetails("manager1@tudelft.nl")
@Transactional
public void canUpdateParticipantManagerStudent() {
assertThat(permissionService.canUpdateParticipant(principal, 1L, 1L)).isTrue();
}
@Test
@WithUserDetails("manager1@tudelft.nl")
@Transactional
public void canUpdateParticipantManagerTeacher() {
assertThat(permissionService.canUpdateParticipant(principal, 1L, 120L)).isFalse();
}
@Test
@WithUserDetails("student1@tudelft.nl")
@Transactional
public void canUpdateParticipantStudentStudent() {
assertThat(permissionService.canUpdateParticipant(principal, 1L, 1L)).isTrue();
}
}
Loading