test: add unit tests for model class
This commit is contained in:
parent
fb591545dc
commit
b01028a13f
20
src/test/model/ApprovalStatusTest.java
Normal file
20
src/test/model/ApprovalStatusTest.java
Normal file
@ -0,0 +1,20 @@
|
||||
package test.model;
|
||||
|
||||
import model.ApprovalStatus;
|
||||
import org.junit.Test;
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
public class ApprovalStatusTest {
|
||||
|
||||
@Test
|
||||
public void testEnumValues() {
|
||||
assertEquals("待审批状态描述不匹配", "待审批", ApprovalStatus.PENDING.getDescription());
|
||||
assertEquals("已批准状态描述不匹配", "已批准", ApprovalStatus.APPROVED.getDescription());
|
||||
assertEquals("已驳回状态描述不匹配", "已驳回", ApprovalStatus.REJECTED.getDescription());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testEnumCount() {
|
||||
assertEquals("审批状态枚举值数量应为3", 3, ApprovalStatus.values().length);
|
||||
}
|
||||
}
|
74
src/test/model/LeaveRequestTest.java
Normal file
74
src/test/model/LeaveRequestTest.java
Normal file
@ -0,0 +1,74 @@
|
||||
package test.model;
|
||||
|
||||
import model.ApprovalStatus;
|
||||
import model.LeaveRequest;
|
||||
import model.Student;
|
||||
import model.Teacher;
|
||||
import org.junit.Test;
|
||||
import java.util.Date;
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
public class LeaveRequestTest {
|
||||
|
||||
@Test
|
||||
public void testDefaultConstructor() {
|
||||
LeaveRequest request = new LeaveRequest();
|
||||
|
||||
assertEquals("新建请假申请应为待审批状态", ApprovalStatus.PENDING, request.getStatus());
|
||||
assertNotNull("申请时间不应为空", request.getRequestTime());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testSettersAndGetters() {
|
||||
LeaveRequest request = new LeaveRequest();
|
||||
|
||||
// 设置测试数据
|
||||
int id = 1;
|
||||
Student student = new Student();
|
||||
student.setId(1);
|
||||
student.setName("张三");
|
||||
|
||||
Teacher approver = new Teacher();
|
||||
approver.setId(1);
|
||||
approver.setName("李老师");
|
||||
|
||||
Date startTime = new Date();
|
||||
Date endTime = new Date(startTime.getTime() + 86400000); // 一天后
|
||||
double duration = 24.0;
|
||||
String location = "北京";
|
||||
String reasonType = "事假";
|
||||
String reasonDetail = "参加比赛";
|
||||
String approvalComment = "同意";
|
||||
Date approvalTime = new Date();
|
||||
|
||||
// 设置属性
|
||||
request.setId(id);
|
||||
request.setStudent(student);
|
||||
request.setStartTime(startTime);
|
||||
request.setEndTime(endTime);
|
||||
request.setDuration(duration);
|
||||
request.setLocation(location);
|
||||
request.setReasonType(reasonType);
|
||||
request.setReasonDetail(reasonDetail);
|
||||
request.setLeavingCity(true);
|
||||
request.setStatus(ApprovalStatus.APPROVED);
|
||||
request.setApprover(approver);
|
||||
request.setApprovalComment(approvalComment);
|
||||
request.setApprovalTime(approvalTime);
|
||||
|
||||
// 验证
|
||||
assertEquals("ID应匹配", id, request.getId());
|
||||
assertEquals("学生信息应匹配", student, request.getStudent());
|
||||
assertEquals("开始时间应匹配", startTime, request.getStartTime());
|
||||
assertEquals("结束时间应匹配", endTime, request.getEndTime());
|
||||
assertEquals("时长应匹配", duration, request.getDuration(), 0.01);
|
||||
assertEquals("地点应匹配", location, request.getLocation());
|
||||
assertEquals("请假类型应匹配", reasonType, request.getReasonType());
|
||||
assertEquals("请假原因应匹配", reasonDetail, request.getReasonDetail());
|
||||
assertTrue("是否离津应匹配", request.isLeavingCity());
|
||||
assertEquals("状态应匹配", ApprovalStatus.APPROVED, request.getStatus());
|
||||
assertEquals("审批人应匹配", approver, request.getApprover());
|
||||
assertEquals("审批意见应匹配", approvalComment, request.getApprovalComment());
|
||||
assertEquals("审批时间应匹配", approvalTime, request.getApprovalTime());
|
||||
}
|
||||
}
|
51
src/test/model/TeacherTest.java
Normal file
51
src/test/model/TeacherTest.java
Normal file
@ -0,0 +1,51 @@
|
||||
package test.model;
|
||||
|
||||
import model.Teacher;
|
||||
import org.junit.Test;
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
public class TeacherTest {
|
||||
|
||||
@Test
|
||||
public void testConstructorAndGetters() {
|
||||
String teacherId = "T001";
|
||||
String name = "张老师";
|
||||
String department = "计算机系";
|
||||
String contact = "13800138000";
|
||||
String password = "password123";
|
||||
|
||||
Teacher teacher = new Teacher(teacherId, name, department, contact, password);
|
||||
|
||||
assertEquals("教师工号应匹配", teacherId, teacher.getTeacherId());
|
||||
assertEquals("教师姓名应匹配", name, teacher.getName());
|
||||
assertEquals("所属部门应匹配", department, teacher.getDepartment());
|
||||
assertEquals("联系方式应匹配", contact, teacher.getContact());
|
||||
assertEquals("密码应匹配", password, teacher.getPassword());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testSetters() {
|
||||
Teacher teacher = new Teacher();
|
||||
|
||||
int id = 1;
|
||||
String teacherId = "T002";
|
||||
String name = "李老师";
|
||||
String department = "数学系";
|
||||
String contact = "13900139000";
|
||||
String password = "newpass123";
|
||||
|
||||
teacher.setId(id);
|
||||
teacher.setTeacherId(teacherId);
|
||||
teacher.setName(name);
|
||||
teacher.setDepartment(department);
|
||||
teacher.setContact(contact);
|
||||
teacher.setPassword(password);
|
||||
|
||||
assertEquals("ID应匹配", id, teacher.getId());
|
||||
assertEquals("教师工号应匹配", teacherId, teacher.getTeacherId());
|
||||
assertEquals("教师姓名应匹配", name, teacher.getName());
|
||||
assertEquals("所属部门应匹配", department, teacher.getDepartment());
|
||||
assertEquals("联系方式应匹配", contact, teacher.getContact());
|
||||
assertEquals("密码应匹配", password, teacher.getPassword());
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user