|
|
|
|
@ -1,5 +1,6 @@
|
|
|
|
|
package com.sztzjy.linkCommerce.service.impl;
|
|
|
|
|
|
|
|
|
|
import com.sztzjy.linkCommerce.config.security.JwtUser;
|
|
|
|
|
import com.sztzjy.linkCommerce.entity.SchoolClass;
|
|
|
|
|
import com.sztzjy.linkCommerce.entity.TeachingClassStudent;
|
|
|
|
|
import com.sztzjy.linkCommerce.entity.TrainingTask;
|
|
|
|
|
@ -304,6 +305,37 @@ class TrainingTaskServiceImplTest {
|
|
|
|
|
assertThrows(IllegalArgumentException.class, () -> service.saveClassTask("class-2", "new-product-survey", task, "teacher-b"));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
void teacherCanReadAnotherTeachersTeachingClassInTheSameSchool() {
|
|
|
|
|
TrainingTaskServiceImpl service = new TrainingTaskServiceImpl();
|
|
|
|
|
service.schoolClassMapper = mock(SchoolClassMapper.class);
|
|
|
|
|
SchoolClass schoolClass = teachingClass("class-2", "teacher-a");
|
|
|
|
|
schoolClass.setSchoolId("school-1");
|
|
|
|
|
when(service.schoolClassMapper.selectByPrimaryKey("class-2")).thenReturn(schoolClass);
|
|
|
|
|
|
|
|
|
|
JwtUser reader = new JwtUser();
|
|
|
|
|
reader.setUserId("teacher-b");
|
|
|
|
|
reader.setSchoolId("school-1");
|
|
|
|
|
|
|
|
|
|
assertEquals(schoolClass, service.requireReadableTeachingClass("class-2", reader));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
void teacherCannotReadTeachingClassFromAnotherSchool() {
|
|
|
|
|
TrainingTaskServiceImpl service = new TrainingTaskServiceImpl();
|
|
|
|
|
service.schoolClassMapper = mock(SchoolClassMapper.class);
|
|
|
|
|
SchoolClass schoolClass = teachingClass("class-2", "teacher-a");
|
|
|
|
|
schoolClass.setSchoolId("school-1");
|
|
|
|
|
when(service.schoolClassMapper.selectByPrimaryKey("class-2")).thenReturn(schoolClass);
|
|
|
|
|
|
|
|
|
|
JwtUser reader = new JwtUser();
|
|
|
|
|
reader.setUserId("teacher-b");
|
|
|
|
|
reader.setSchoolId("school-2");
|
|
|
|
|
|
|
|
|
|
assertThrows(IllegalArgumentException.class,
|
|
|
|
|
() -> service.requireReadableTeachingClass("class-2", reader));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Test
|
|
|
|
|
void restoreClassTaskDefaultDeletesOnlySelectedClassTaskCopy() {
|
|
|
|
|
TrainingTaskServiceImpl service = new TrainingTaskServiceImpl();
|
|
|
|
|
@ -444,6 +476,7 @@ class TrainingTaskServiceImplTest {
|
|
|
|
|
schoolClass.setSchoolClassId("class-1");
|
|
|
|
|
schoolClass.setClassType("TEACHING");
|
|
|
|
|
schoolClass.setCreatedBy("teacher-1");
|
|
|
|
|
schoolClass.setSchoolId("school-1");
|
|
|
|
|
when(service.schoolClassMapper.selectByPrimaryKey("class-1")).thenReturn(schoolClass);
|
|
|
|
|
|
|
|
|
|
TrainingTask defaultTask = storedTask("task-1", "new-product-survey");
|
|
|
|
|
@ -454,7 +487,10 @@ class TrainingTaskServiceImplTest {
|
|
|
|
|
override.setEnabled(Boolean.FALSE);
|
|
|
|
|
when(service.trainingTaskClassConfigMapper.selectListByTeachingClass("class-1", null)).thenReturn(Collections.singletonList(override));
|
|
|
|
|
|
|
|
|
|
List<TrainingTask> result = service.listForTeachingClass("class-1", true, "teacher-1");
|
|
|
|
|
JwtUser teacher = new JwtUser();
|
|
|
|
|
teacher.setUserId("teacher-1");
|
|
|
|
|
teacher.setSchoolId("school-1");
|
|
|
|
|
List<TrainingTask> result = service.listForTeachingClass("class-1", true, teacher);
|
|
|
|
|
|
|
|
|
|
assertEquals(0, result.size());
|
|
|
|
|
}
|
|
|
|
|
|