feat: restrict teacher class roster
parent
3e192621ab
commit
36fad32043
@ -0,0 +1,41 @@
|
||||
package com.sztzjy.linkCommerce.service.impl;
|
||||
|
||||
import com.sztzjy.linkCommerce.entity.SchoolClassExample;
|
||||
import com.sztzjy.linkCommerce.mapper.SchoolClassMapper;
|
||||
import com.sztzjy.linkCommerce.mapper.SchoolFacultyMapper;
|
||||
import com.sztzjy.linkCommerce.mapper.SchoolMajorMapper;
|
||||
import com.sztzjy.linkCommerce.mapper.SchoolMapper;
|
||||
import com.sztzjy.linkCommerce.mapper.UserinfoMapper;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.mockito.ArgumentCaptor;
|
||||
|
||||
import java.util.Collections;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertTrue;
|
||||
import static org.mockito.Mockito.mock;
|
||||
import static org.mockito.Mockito.verify;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
class SchoolServiceImplTest {
|
||||
|
||||
@Test
|
||||
void classQueryCanRestrictResultsToTheOwningTeacherTeachingClasses() {
|
||||
SchoolServiceImpl service = new SchoolServiceImpl();
|
||||
service.schoolMapper = mock(SchoolMapper.class);
|
||||
service.schoolFacultyMapper = mock(SchoolFacultyMapper.class);
|
||||
service.schoolMajorMapper = mock(SchoolMajorMapper.class);
|
||||
service.schoolClassMapper = mock(SchoolClassMapper.class);
|
||||
service.userinfoMapper = mock(UserinfoMapper.class);
|
||||
when(service.schoolClassMapper.selectByExample(org.mockito.ArgumentMatchers.any(SchoolClassExample.class)))
|
||||
.thenReturn(Collections.emptyList());
|
||||
|
||||
service.seleteSchoolClass(1, 10, "school-1", "", "", "", "teacher-1", "TEACHING");
|
||||
|
||||
ArgumentCaptor<SchoolClassExample> example = ArgumentCaptor.forClass(SchoolClassExample.class);
|
||||
verify(service.schoolClassMapper).selectByExample(example.capture());
|
||||
assertTrue(example.getValue().getOredCriteria().get(0).getAllCriteria().stream()
|
||||
.anyMatch(c -> "created_by =".equals(c.getCondition()) && "teacher-1".equals(c.getValue())));
|
||||
assertTrue(example.getValue().getOredCriteria().get(0).getAllCriteria().stream()
|
||||
.anyMatch(c -> "class_type =".equals(c.getCondition()) && "TEACHING".equals(c.getValue())));
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue