//package cn.lihu.jh.module.ecg.service.appointment;
|
//
|
//import org.junit.jupiter.api.Disabled;
|
//import org.junit.jupiter.api.Test;
|
//import org.springframework.boot.test.mock.mockito.MockBean;
|
//
|
//import jakarta.annotation.Resource;
|
//
|
//import cn.lihu.jh.framework.test.core.ut.BaseDbUnitTest;
|
//
|
//import cn.lihu.jh.module.ecg.controller.admin.appointment.vo.*;
|
//import cn.lihu.jh.module.ecg.dal.dataobject.appointment.AppointmentDO;
|
//import cn.lihu.jh.module.ecg.dal.mysql.appointment.AppointmentMapper;
|
//import cn.lihu.jh.framework.common.pojo.PageResult;
|
//
|
//import jakarta.annotation.Resource;
|
//import org.springframework.context.annotation.Import;
|
//import java.util.*;
|
//import java.time.LocalDateTime;
|
//
|
//import static cn.hutool.core.util.RandomUtil.*;
|
//import static cn.lihu.jh.module.ecg.enums.ErrorCodeConstants.*;
|
//import static cn.lihu.jh.framework.test.core.util.AssertUtils.*;
|
//import static cn.lihu.jh.framework.test.core.util.RandomUtils.*;
|
//import static cn.lihu.jh.framework.common.util.date.LocalDateTimeUtils.*;
|
//import static cn.lihu.jh.framework.common.util.object.ObjectUtils.*;
|
//import static cn.lihu.jh.framework.common.util.date.DateUtils.*;
|
//import static org.junit.jupiter.api.Assertions.*;
|
//import static org.mockito.Mockito.*;
|
//
|
///**
|
// * {@link AppointmentServiceImpl} 的单元测试类
|
// *
|
// * @author 马剑波
|
// */
|
//@Import(AppointmentServiceImpl.class)
|
//public class AppointmentServiceImplTest extends BaseDbUnitTest {
|
//
|
// @Resource
|
// private AppointmentServiceImpl appointmentService;
|
//
|
// @Resource
|
// private AppointmentMapper appointmentMapper;
|
//
|
// @Test
|
// public void testCreateAppointment_success() {
|
// // 准备参数
|
// AppointmentSaveReqVO createReqVO = randomPojo(AppointmentSaveReqVO.class).setId(null);
|
//
|
// // 调用
|
// Integer appointmentId = appointmentService.createAppointment(createReqVO);
|
// // 断言
|
// assertNotNull(appointmentId);
|
// // 校验记录的属性是否正确
|
// AppointmentDO appointment = appointmentMapper.selectById(appointmentId);
|
// assertPojoEquals(createReqVO, appointment, "id");
|
// }
|
//
|
// @Test
|
// public void testUpdateAppointment_success() {
|
// // mock 数据
|
// AppointmentDO dbAppointment = randomPojo(AppointmentDO.class);
|
// appointmentMapper.insert(dbAppointment);// @Sql: 先插入出一条存在的数据
|
// // 准备参数
|
// AppointmentSaveReqVO updateReqVO = randomPojo(AppointmentSaveReqVO.class, o -> {
|
// o.setId(dbAppointment.getId()); // 设置更新的 ID
|
// });
|
//
|
// // 调用
|
// appointmentService.updateAppointment(updateReqVO);
|
// // 校验是否更新正确
|
// AppointmentDO appointment = appointmentMapper.selectById(updateReqVO.getId()); // 获取最新的
|
// assertPojoEquals(updateReqVO, appointment);
|
// }
|
//
|
// @Test
|
// public void testUpdateAppointment_notExists() {
|
// // 准备参数
|
// AppointmentSaveReqVO updateReqVO = randomPojo(AppointmentSaveReqVO.class);
|
//
|
// // 调用, 并断言异常
|
// assertServiceException(() -> appointmentService.updateAppointment(updateReqVO), APPOINTMENT_NOT_EXISTS);
|
// }
|
//
|
// @Test
|
// public void testDeleteAppointment_success() {
|
// // mock 数据
|
// AppointmentDO dbAppointment = randomPojo(AppointmentDO.class);
|
// appointmentMapper.insert(dbAppointment);// @Sql: 先插入出一条存在的数据
|
// // 准备参数
|
// Integer id = dbAppointment.getId();
|
//
|
// // 调用
|
// appointmentService.deleteAppointment(id);
|
// // 校验数据不存在了
|
// assertNull(appointmentMapper.selectById(id));
|
// }
|
//
|
// @Test
|
// public void testDeleteAppointment_notExists() {
|
// // 准备参数
|
// Integer id = randomIntegerId();
|
//
|
// // 调用, 并断言异常
|
// assertServiceException(() -> appointmentService.deleteAppointment(id), APPOINTMENT_NOT_EXISTS);
|
// }
|
//
|
// @Test
|
// @Disabled // TODO 请修改 null 为需要的值,然后删除 @Disabled 注解
|
// public void testGetAppointmentPage() {
|
// // mock 数据
|
// AppointmentDO dbAppointment = randomPojo(AppointmentDO.class, o -> { // 等会查询到
|
// o.setPatId(null);
|
// o.setPatName(null);
|
// o.setPatGender(null);
|
// o.setPatBirthday(null);
|
// o.setPatMobile(null);
|
// o.setPatPhone(null);
|
// o.setPatIdentityId(null);
|
// o.setPatAddr(null);
|
// o.setPatDeptCode(null);
|
// o.setPatDeptDesc(null);
|
// o.setPatWardCode(null);
|
// o.setPatWardDesc(null);
|
// o.setPatBedNo(null);
|
// o.setBookId(null);
|
// o.setBookPeriodStart(null);
|
// o.setBookPeriodEnd(null);
|
// o.setBookTime(null);
|
// o.setBookCheckType(null);
|
// o.setBookSrc(null);
|
// });
|
// appointmentMapper.insert(dbAppointment);
|
// // 测试 patId 不匹配
|
// appointmentMapper.insert(cloneIgnoreId(dbAppointment, o -> o.setPatId(null)));
|
// // 测试 patName 不匹配
|
// appointmentMapper.insert(cloneIgnoreId(dbAppointment, o -> o.setPatName(null)));
|
// // 测试 patGender 不匹配
|
// appointmentMapper.insert(cloneIgnoreId(dbAppointment, o -> o.setPatGender(null)));
|
// // 测试 patBirthday 不匹配
|
// appointmentMapper.insert(cloneIgnoreId(dbAppointment, o -> o.setPatBirthday(null)));
|
// // 测试 patMobile 不匹配
|
// appointmentMapper.insert(cloneIgnoreId(dbAppointment, o -> o.setPatMobile(null)));
|
// // 测试 patPhone 不匹配
|
// appointmentMapper.insert(cloneIgnoreId(dbAppointment, o -> o.setPatPhone(null)));
|
// // 测试 patIdentityId 不匹配
|
// appointmentMapper.insert(cloneIgnoreId(dbAppointment, o -> o.setPatIdentityId(null)));
|
// // 测试 patAddr 不匹配
|
// appointmentMapper.insert(cloneIgnoreId(dbAppointment, o -> o.setPatAddr(null)));
|
// // 测试 patDeptCode 不匹配
|
// appointmentMapper.insert(cloneIgnoreId(dbAppointment, o -> o.setPatDeptCode(null)));
|
// // 测试 patDeptDesc 不匹配
|
// appointmentMapper.insert(cloneIgnoreId(dbAppointment, o -> o.setPatDeptDesc(null)));
|
// // 测试 patWardCode 不匹配
|
// appointmentMapper.insert(cloneIgnoreId(dbAppointment, o -> o.setPatWardCode(null)));
|
// // 测试 patWardDesc 不匹配
|
// appointmentMapper.insert(cloneIgnoreId(dbAppointment, o -> o.setPatWardDesc(null)));
|
// // 测试 patBedNo 不匹配
|
// appointmentMapper.insert(cloneIgnoreId(dbAppointment, o -> o.setPatBedNo(null)));
|
// // 测试 bookId 不匹配
|
// appointmentMapper.insert(cloneIgnoreId(dbAppointment, o -> o.setBookId(null)));
|
// // 测试 bookPeriodStart 不匹配
|
// appointmentMapper.insert(cloneIgnoreId(dbAppointment, o -> o.setBookPeriodStart(null)));
|
// // 测试 bookPeriodEnd 不匹配
|
// appointmentMapper.insert(cloneIgnoreId(dbAppointment, o -> o.setBookPeriodEnd(null)));
|
// // 测试 bookTime 不匹配
|
// appointmentMapper.insert(cloneIgnoreId(dbAppointment, o -> o.setBookTime(null)));
|
// // 测试 bookCheckType 不匹配
|
// appointmentMapper.insert(cloneIgnoreId(dbAppointment, o -> o.setBookCheckType(null)));
|
// // 测试 bookSrc 不匹配
|
// appointmentMapper.insert(cloneIgnoreId(dbAppointment, o -> o.setBookSrc(null)));
|
// // 准备参数
|
// AppointmentPageReqVO reqVO = new AppointmentPageReqVO();
|
// reqVO.setPatId(null);
|
// reqVO.setPatName(null);
|
// reqVO.setPatGender(null);
|
// reqVO.setPatBirthday(null);
|
// reqVO.setPatMobile(null);
|
// reqVO.setPatPhone(null);
|
// reqVO.setPatIdentityId(null);
|
// reqVO.setPatAddr(null);
|
// reqVO.setPatDeptCode(null);
|
// reqVO.setPatDeptDesc(null);
|
// reqVO.setPatWardCode(null);
|
// reqVO.setPatWardDesc(null);
|
// reqVO.setPatBedNo(null);
|
// reqVO.setBookId(null);
|
// reqVO.setBookPeriodStart(null);
|
// reqVO.setBookPeriodEnd(null);
|
// reqVO.setBookTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28));
|
// reqVO.setBookCheckType(null);
|
// reqVO.setBookSrc(null);
|
//
|
// // 调用
|
// PageResult<AppointmentDO> pageResult = appointmentService.getAppointmentPage(reqVO);
|
// // 断言
|
// assertEquals(1, pageResult.getTotal());
|
// assertEquals(1, pageResult.getList().size());
|
// assertPojoEquals(dbAppointment, pageResult.getList().get(0));
|
// }
|
//
|
//}
|