forked from sfms3.0/sfms3.0
4 changed files with 20 additions and 370 deletions
@ -1,367 +0,0 @@ |
|||
package com.win.module.wms.service.itembasic; |
|||
|
|||
import org.junit.jupiter.api.Disabled; |
|||
import org.junit.jupiter.api.Test; |
|||
import org.springframework.boot.test.mock.mockito.MockBean; |
|||
|
|||
import javax.annotation.Resource; |
|||
|
|||
import com.win.framework.test.core.ut.BaseDbUnitTest; |
|||
|
|||
import com.win.module.wms.controller.admin.itembasic.vo.*; |
|||
import com.win.module.wms.dal.dataobject.itembasic.ItembasicDO; |
|||
import com.win.module.wms.dal.mysql.itembasic.ItembasicMapper; |
|||
import com.win.framework.common.pojo.PageResult; |
|||
|
|||
import javax.annotation.Resource; |
|||
import org.springframework.context.annotation.Import; |
|||
import java.util.*; |
|||
import java.time.LocalDateTime; |
|||
|
|||
import static cn.hutool.core.util.RandomUtil.*; |
|||
import static com.win.framework.test.core.util.AssertUtils.*; |
|||
import static com.win.framework.test.core.util.RandomUtils.*; |
|||
import static com.win.framework.common.util.date.LocalDateTimeUtils.*; |
|||
import static com.win.framework.common.util.object.ObjectUtils.*; |
|||
import static com.win.framework.common.util.date.DateUtils.*; |
|||
import static com.win.module.wms.enums.itembasic.ErrorCodeConstants.ITEMBASIC_NOT_EXISTS; |
|||
import static org.junit.jupiter.api.Assertions.*; |
|||
import static org.mockito.Mockito.*; |
|||
|
|||
/** |
|||
* {@link ItembasicServiceImpl} 的单元测试类 |
|||
* |
|||
* @author 超级管理员 |
|||
*/ |
|||
@Import(ItembasicServiceImpl.class) |
|||
public class ItembasicServiceImplTest extends BaseDbUnitTest { |
|||
|
|||
@Resource |
|||
private ItembasicServiceImpl itembasicService; |
|||
|
|||
@Resource |
|||
private ItembasicMapper itembasicMapper; |
|||
|
|||
@Test |
|||
public void testCreateItembasic_success() { |
|||
// 准备参数
|
|||
ItembasicCreateReqVO reqVO = randomPojo(ItembasicCreateReqVO.class); |
|||
|
|||
// 调用
|
|||
Long itembasicId = itembasicService.createItembasic(reqVO); |
|||
// 断言
|
|||
assertNotNull(itembasicId); |
|||
// 校验记录的属性是否正确
|
|||
ItembasicDO itembasic = itembasicMapper.selectById(itembasicId); |
|||
assertPojoEquals(reqVO, itembasic); |
|||
} |
|||
|
|||
@Test |
|||
public void testUpdateItembasic_success() { |
|||
// mock 数据
|
|||
ItembasicDO dbItembasic = randomPojo(ItembasicDO.class); |
|||
itembasicMapper.insert(dbItembasic);// @Sql: 先插入出一条存在的数据
|
|||
// 准备参数
|
|||
ItembasicUpdateReqVO reqVO = randomPojo(ItembasicUpdateReqVO.class, o -> { |
|||
o.setId(dbItembasic.getId()); // 设置更新的 ID
|
|||
}); |
|||
|
|||
// 调用
|
|||
itembasicService.updateItembasic(reqVO); |
|||
// 校验是否更新正确
|
|||
ItembasicDO itembasic = itembasicMapper.selectById(reqVO.getId()); // 获取最新的
|
|||
assertPojoEquals(reqVO, itembasic); |
|||
} |
|||
|
|||
@Test |
|||
public void testUpdateItembasic_notExists() { |
|||
// 准备参数
|
|||
ItembasicUpdateReqVO reqVO = randomPojo(ItembasicUpdateReqVO.class); |
|||
|
|||
// 调用, 并断言异常
|
|||
assertServiceException(() -> itembasicService.updateItembasic(reqVO), ITEMBASIC_NOT_EXISTS); |
|||
} |
|||
|
|||
@Test |
|||
public void testDeleteItembasic_success() { |
|||
// mock 数据
|
|||
ItembasicDO dbItembasic = randomPojo(ItembasicDO.class); |
|||
itembasicMapper.insert(dbItembasic);// @Sql: 先插入出一条存在的数据
|
|||
// 准备参数
|
|||
Long id = dbItembasic.getId(); |
|||
|
|||
// 调用
|
|||
itembasicService.deleteItembasic(id); |
|||
// 校验数据不存在了
|
|||
assertNull(itembasicMapper.selectById(id)); |
|||
} |
|||
|
|||
@Test |
|||
public void testDeleteItembasic_notExists() { |
|||
// 准备参数
|
|||
Long id = randomLongId(); |
|||
|
|||
// 调用, 并断言异常
|
|||
assertServiceException(() -> itembasicService.deleteItembasic(id), ITEMBASIC_NOT_EXISTS); |
|||
} |
|||
|
|||
@Test |
|||
@Disabled // TODO 请修改 null 为需要的值,然后删除 @Disabled 注解
|
|||
public void testGetItembasicPage() { |
|||
// mock 数据
|
|||
ItembasicDO dbItembasic = randomPojo(ItembasicDO.class, o -> { // 等会查询到
|
|||
o.setCode(null); |
|||
o.setName(null); |
|||
o.setDesc1(null); |
|||
o.setDesc2(null); |
|||
o.setStatus(null); |
|||
o.setUom(null); |
|||
o.setAltUom(null); |
|||
o.setIsStdPack(null); |
|||
o.setEnableBuy(null); |
|||
o.setEnableMake(null); |
|||
o.setEnableOutsourcing(null); |
|||
o.setIsRecycled(null); |
|||
o.setIsPhantom(null); |
|||
o.setAbcClass(null); |
|||
o.setType(null); |
|||
o.setCategory(null); |
|||
o.setItemGroup(null); |
|||
o.setColor(null); |
|||
o.setConfiguration(null); |
|||
o.setProject(null); |
|||
o.setEqLevel(null); |
|||
o.setValidityDays(null); |
|||
o.setAvailable(null); |
|||
o.setActiveTime(null); |
|||
o.setExpireTime(null); |
|||
o.setRemark(null); |
|||
o.setCreateTime(null); |
|||
o.setCreator(null); |
|||
}); |
|||
itembasicMapper.insert(dbItembasic); |
|||
// 测试 code 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setCode(null))); |
|||
// 测试 name 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setName(null))); |
|||
// 测试 desc1 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setDesc1(null))); |
|||
// 测试 desc2 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setDesc2(null))); |
|||
// 测试 status 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setStatus(null))); |
|||
// 测试 uom 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setUom(null))); |
|||
// 测试 altUom 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setAltUom(null))); |
|||
// 测试 isStdPack 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setIsStdPack(null))); |
|||
// 测试 enableBuy 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setEnableBuy(null))); |
|||
// 测试 enableMake 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setEnableMake(null))); |
|||
// 测试 enableOutsourcing 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setEnableOutsourcing(null))); |
|||
// 测试 isRecycled 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setIsRecycled(null))); |
|||
// 测试 isPhantom 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setIsPhantom(null))); |
|||
// 测试 abcClass 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setAbcClass(null))); |
|||
// 测试 type 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setType(null))); |
|||
// 测试 category 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setCategory(null))); |
|||
// 测试 itemGroup 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setItemGroup(null))); |
|||
// 测试 color 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setColor(null))); |
|||
// 测试 configuration 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setConfiguration(null))); |
|||
// 测试 project 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setProject(null))); |
|||
// 测试 eqLevel 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setEqLevel(null))); |
|||
// 测试 validityDays 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setValidityDays(null))); |
|||
// 测试 available 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setAvailable(null))); |
|||
// 测试 activeTime 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setActiveTime(null))); |
|||
// 测试 expireTime 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setExpireTime(null))); |
|||
// 测试 remark 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setRemark(null))); |
|||
// 测试 createTime 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setCreateTime(null))); |
|||
// 测试 creator 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setCreator(null))); |
|||
// 准备参数
|
|||
ItembasicPageReqVO reqVO = new ItembasicPageReqVO(); |
|||
reqVO.setCode(null); |
|||
reqVO.setName(null); |
|||
reqVO.setDesc1(null); |
|||
reqVO.setDesc2(null); |
|||
reqVO.setStatus(null); |
|||
reqVO.setUom(null); |
|||
reqVO.setAltUom(null); |
|||
reqVO.setIsStdPack(null); |
|||
reqVO.setEnableBuy(null); |
|||
reqVO.setEnableMake(null); |
|||
reqVO.setEnableOutsourcing(null); |
|||
reqVO.setIsRecycled(null); |
|||
reqVO.setIsPhantom(null); |
|||
reqVO.setAbcClass(null); |
|||
reqVO.setType(null); |
|||
reqVO.setCategory(null); |
|||
reqVO.setItemGroup(null); |
|||
reqVO.setColor(null); |
|||
reqVO.setConfiguration(null); |
|||
reqVO.setProject(null); |
|||
reqVO.setEqLevel(null); |
|||
reqVO.setValidityDays(null); |
|||
reqVO.setAvailable(null); |
|||
reqVO.setActiveTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28)); |
|||
reqVO.setExpireTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28)); |
|||
reqVO.setRemark(null); |
|||
reqVO.setCreateTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28)); |
|||
reqVO.setCreator(null); |
|||
|
|||
// 调用
|
|||
PageResult<ItembasicDO> pageResult = itembasicService.getItembasicPage(reqVO); |
|||
// 断言
|
|||
assertEquals(1, pageResult.getTotal()); |
|||
assertEquals(1, pageResult.getList().size()); |
|||
assertPojoEquals(dbItembasic, pageResult.getList().get(0)); |
|||
} |
|||
|
|||
@Test |
|||
@Disabled // TODO 请修改 null 为需要的值,然后删除 @Disabled 注解
|
|||
public void testGetItembasicList() { |
|||
// mock 数据
|
|||
ItembasicDO dbItembasic = randomPojo(ItembasicDO.class, o -> { // 等会查询到
|
|||
o.setCode(null); |
|||
o.setName(null); |
|||
o.setDesc1(null); |
|||
o.setDesc2(null); |
|||
o.setStatus(null); |
|||
o.setUom(null); |
|||
o.setAltUom(null); |
|||
o.setIsStdPack(null); |
|||
o.setEnableBuy(null); |
|||
o.setEnableMake(null); |
|||
o.setEnableOutsourcing(null); |
|||
o.setIsRecycled(null); |
|||
o.setIsPhantom(null); |
|||
o.setAbcClass(null); |
|||
o.setType(null); |
|||
o.setCategory(null); |
|||
o.setItemGroup(null); |
|||
o.setColor(null); |
|||
o.setConfiguration(null); |
|||
o.setProject(null); |
|||
o.setEqLevel(null); |
|||
o.setValidityDays(null); |
|||
o.setAvailable(null); |
|||
o.setActiveTime(null); |
|||
o.setExpireTime(null); |
|||
o.setRemark(null); |
|||
o.setCreateTime(null); |
|||
o.setCreator(null); |
|||
}); |
|||
itembasicMapper.insert(dbItembasic); |
|||
// 测试 code 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setCode(null))); |
|||
// 测试 name 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setName(null))); |
|||
// 测试 desc1 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setDesc1(null))); |
|||
// 测试 desc2 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setDesc2(null))); |
|||
// 测试 status 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setStatus(null))); |
|||
// 测试 uom 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setUom(null))); |
|||
// 测试 altUom 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setAltUom(null))); |
|||
// 测试 isStdPack 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setIsStdPack(null))); |
|||
// 测试 enableBuy 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setEnableBuy(null))); |
|||
// 测试 enableMake 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setEnableMake(null))); |
|||
// 测试 enableOutsourcing 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setEnableOutsourcing(null))); |
|||
// 测试 isRecycled 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setIsRecycled(null))); |
|||
// 测试 isPhantom 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setIsPhantom(null))); |
|||
// 测试 abcClass 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setAbcClass(null))); |
|||
// 测试 type 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setType(null))); |
|||
// 测试 category 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setCategory(null))); |
|||
// 测试 itemGroup 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setItemGroup(null))); |
|||
// 测试 color 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setColor(null))); |
|||
// 测试 configuration 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setConfiguration(null))); |
|||
// 测试 project 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setProject(null))); |
|||
// 测试 eqLevel 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setEqLevel(null))); |
|||
// 测试 validityDays 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setValidityDays(null))); |
|||
// 测试 available 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setAvailable(null))); |
|||
// 测试 activeTime 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setActiveTime(null))); |
|||
// 测试 expireTime 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setExpireTime(null))); |
|||
// 测试 remark 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setRemark(null))); |
|||
// 测试 createTime 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setCreateTime(null))); |
|||
// 测试 creator 不匹配
|
|||
itembasicMapper.insert(cloneIgnoreId(dbItembasic, o -> o.setCreator(null))); |
|||
// 准备参数
|
|||
ItembasicExportReqVO reqVO = new ItembasicExportReqVO(); |
|||
reqVO.setCode(null); |
|||
reqVO.setName(null); |
|||
reqVO.setDesc1(null); |
|||
reqVO.setDesc2(null); |
|||
reqVO.setStatus(null); |
|||
reqVO.setUom(null); |
|||
reqVO.setAltUom(null); |
|||
reqVO.setIsStdPack(null); |
|||
reqVO.setEnableBuy(null); |
|||
reqVO.setEnableMake(null); |
|||
reqVO.setEnableOutsourcing(null); |
|||
reqVO.setIsRecycled(null); |
|||
reqVO.setIsPhantom(null); |
|||
reqVO.setAbcClass(null); |
|||
reqVO.setType(null); |
|||
reqVO.setCategory(null); |
|||
reqVO.setItemGroup(null); |
|||
reqVO.setColor(null); |
|||
reqVO.setConfiguration(null); |
|||
reqVO.setProject(null); |
|||
reqVO.setEqLevel(null); |
|||
reqVO.setValidityDays(null); |
|||
reqVO.setAvailable(null); |
|||
reqVO.setActiveTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28)); |
|||
reqVO.setExpireTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28)); |
|||
reqVO.setRemark(null); |
|||
reqVO.setCreateTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28)); |
|||
reqVO.setCreator(null); |
|||
|
|||
// 调用
|
|||
List<ItembasicDO> list = itembasicService.getItembasicList(reqVO); |
|||
// 断言
|
|||
assertEquals(1, list.size()); |
|||
assertPojoEquals(dbItembasic, list.get(0)); |
|||
} |
|||
|
|||
} |
Loading…
Reference in new issue