Commit 816808f8fad426e75555f75edea61a5af7f1c4b8

Authored by YunaiV
1 parent aaf762e7

进一步完善 ut 的 vm 模板

src/main/resources/codegen/java/test/serviceTest.vm
... ... @@ -12,17 +12,53 @@ import ${basePackage}.modules.${table.moduleName}.service.${table.businessName}.
12 12 import ${basePackage}.modules.${table.moduleName}.controller.${table.businessName}.vo.*;
13 13 import ${basePackage}.modules.${table.moduleName}.dal.dataobject.${table.businessName}.${table.className}DO;
14 14 import ${basePackage}.modules.${table.moduleName}.dal.mysql.${table.businessName}.${table.className}Mapper;
  15 +import ${basePackage}.util.object.ObjectUtils;
  16 +import ${PageResultClassName};
15 17  
16 18 import javax.annotation.Resource;
  19 +import java.util.*;
17 20  
18 21 import static cn.hutool.core.util.RandomUtil.*;
19 22 import static ${basePackage}.modules.${table.moduleName}.enums.${simpleModuleName_upperFirst}ErrorCodeConstants.*;
20   -import static cn.iocoder.dashboard.util.AssertUtils.*;
21   -import static cn.iocoder.dashboard.util.RandomUtils.*;
22   -import static cn.iocoder.dashboard.util.date.DateUtils.*;
  23 +import static ${basePackage}.util.AssertUtils.*;
  24 +import static ${basePackage}.util.RandomUtils.*;
  25 +import static ${basePackage}.util.date.DateUtils.*;
23 26 import static org.junit.jupiter.api.Assertions.*;
24 27 import static org.mockito.Mockito.*;
25 28  
  29 +## 字段模板
  30 +#macro(getPageCondition $VO)
  31 + // mock 数据
  32 + ${table.className}DO db${simpleClassName} = randomPojo(${table.className}DO.class, o -> {); // 等会查询到
  33 + #foreach ($column in $columns)
  34 + #if (${column.listOperation})
  35 + #set ($JavaField = $column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})##首字母大写
  36 + o.set$JavaField(null);
  37 + #end
  38 + #end
  39 + });
  40 + ${classNameVar}Mapper.insert(db${simpleClassName});
  41 + #foreach ($column in $columns)
  42 + #if (${column.listOperation})
  43 + #set ($JavaField = $column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})##首字母大写
  44 + // 测试 ${column.javaField} 不匹配
  45 + ${classNameVar}Mapper.insert(ObjectUtils.clone(db${simpleClassName}, o -> o.set$JavaField(null)));
  46 + #end
  47 + #end
  48 + // 准备参数
  49 + ${table.className}${VO} reqVO = new ${table.className}${VO}();
  50 + #foreach ($column in $columns)
  51 + #if (${column.listOperation})
  52 + #set ($JavaField = $column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})##首字母大写
  53 + #if (${column.listOperationCondition} == "BETWEEN")## BETWEEN 的情况
  54 + reqVO.setBegin${JavaField}(null);
  55 + reqVO.setEnd${JavaField}(null);
  56 + #else
  57 + reqVO.set$JavaField(null);
  58 + #end
  59 + #end
  60 + #end
  61 +#end
26 62 /**
27 63 * {@link ${table.className}ServiceImpl} 的单元测试类
28 64 *
... ... @@ -97,15 +133,29 @@ public class ${table.className}ServiceTest extends BaseSpringBootUnitTest {
97 133  
98 134 // 调用, 并断言异常
99 135 assertServiceException(() -> ${classNameVar}Service.delete${simpleClassName}(id), ${simpleClassName_underlineCase.toUpperCase()}_NOT_EXISTS);
100   - }
  136 + }
101 137  
102   - @Test
  138 + @Test // TODO 请修改 null 为需要的值
103 139 public void testGet${simpleClassName}Page() {
104   - // mock 数据
105   - ${table.className}DO db${simpleClassName} = randomPojo(${table.className}DO.class, o -> {); // 等会查询到
  140 + #getPageCondition("PageReqVO")
  141 +
  142 + // 调用
  143 + PageResult<${table.className}DO> pageResult = configService.getConfigPage(reqVO);
  144 + // 断言
  145 + assertEquals(1, pageResult.getTotal());
  146 + assertEquals(1, pageResult.getList().size());
  147 + assertPojoEquals(db${simpleClassName}, pageResult.getList().get(0));
  148 + }
106 149  
107   - });
108   - ${classNameVar}Mapper.insert(db${simpleClassName});
  150 + @Test // TODO 请修改 null 为需要的值
  151 + public void testGet${simpleClassName}List() {
  152 + #getPageCondition("ExportReqVO")
  153 +
  154 + // 调用
  155 + PageResult<${table.className}DO> list = configService.getConfigPage(reqVO);
  156 + // 断言
  157 + assertEquals(1, list.size());
  158 + assertPojoEquals(db${simpleClassName}, list.get(0));
109 159 }
110 160  
111 161 }
... ...
src/test/java/cn/iocoder/dashboard/modules/infra/service/job/InfConfigServiceTest.java deleted
1   -package cn.iocoder.dashboard.modules.infra.service.job;
2   -
3   -import cn.iocoder.dashboard.BaseSpringBootUnitTest;
4   -import cn.iocoder.dashboard.modules.infra.controller.config.vo.InfConfigCreateReqVO;
5   -import cn.iocoder.dashboard.modules.infra.controller.config.vo.InfConfigUpdateReqVO;
6   -import cn.iocoder.dashboard.modules.infra.dal.dataobject.config.InfConfigDO;
7   -import cn.iocoder.dashboard.modules.infra.dal.mysql.config.InfConfigMapper;
8   -import cn.iocoder.dashboard.modules.infra.service.config.impl.InfConfigServiceImpl;
9   -import org.junit.jupiter.api.Test;
10   -
11   -import javax.annotation.Resource;
12   -
13   -import static cn.iocoder.dashboard.modules.infra.enums.InfErrorCodeConstants.CONFIG_NOT_EXISTS;
14   -import static cn.iocoder.dashboard.util.AssertUtils.assertPojoEquals;
15   -import static cn.iocoder.dashboard.util.AssertUtils.assertServiceException;
16   -import static cn.iocoder.dashboard.util.RandomUtils.randomLongId;
17   -import static cn.iocoder.dashboard.util.RandomUtils.randomPojo;
18   -import static org.junit.jupiter.api.Assertions.assertNotNull;
19   -import static org.junit.jupiter.api.Assertions.assertNull;
20   -
21   -/**
22   -* {@link InfConfigServiceImpl} 的单元测试类
23   -*
24   -* @author 芋艿
25   -*/
26   -public class InfConfigServiceTest extends BaseSpringBootUnitTest {
27   -
28   - @Resource
29   - private InfConfigServiceImpl configService;
30   -
31   - @Resource
32   - private InfConfigMapper configMapper;
33   -
34   - @Test
35   - public void testCreateConfig_success() {
36   - // 准备参数
37   - InfConfigCreateReqVO reqVO = randomPojo(InfConfigCreateReqVO.class);
38   -
39   - // 调用
40   - Long configId = configService.createConfig(reqVO);
41   - // 断言
42   - assertNotNull(configId);
43   - // 校验记录的属性是否正确
44   - InfConfigDO config = configMapper.selectById(configId);
45   - assertPojoEquals(reqVO, config);
46   - }
47   -
48   - @Test
49   - public void testUpdateConfig_success() {
50   - // mock 数据
51   - InfConfigDO dbConfig = randomPojo(InfConfigDO.class);
52   - configMapper.insert(dbConfig);// @Sql: 先插入出一条存在的数据
53   - // 准备参数
54   - InfConfigUpdateReqVO reqVO = randomPojo(InfConfigUpdateReqVO.class, o -> {
55   - o.setId(dbConfig.getId()); // 设置更新的 ID
56   - });
57   -
58   - // 调用
59   - configService.updateConfig(reqVO);
60   - // 校验是否更新正确
61   - InfConfigDO config = configMapper.selectById(reqVO.getId()); // 获取最新的
62   - assertPojoEquals(reqVO, config);
63   - }
64   -
65   - @Test
66   - public void testUpdateConfig_notExists() {
67   - // 准备参数
68   - InfConfigUpdateReqVO reqVO = randomPojo(InfConfigUpdateReqVO.class);
69   -
70   - // 调用, 并断言异常
71   - assertServiceException(() -> configService.updateConfig(reqVO), CONFIG_NOT_EXISTS);
72   - }
73   -
74   - @Test
75   - public void testDeleteConfig_success() {
76   - // mock 数据
77   - InfConfigDO dbConfig = randomPojo(InfConfigDO.class);
78   - configMapper.insert(dbConfig);// @Sql: 先插入出一条存在的数据
79   - // 准备参数
80   - Long id = dbConfig.getId();
81   -
82   - // 调用
83   - configService.deleteConfig(id);
84   - // 校验数据不存在了
85   - assertNull(configMapper.selectById(id));
86   - }
87   -
88   - @Test
89   - public void testDeleteConfig_notExists() {
90   - // 准备参数
91   - Long id = randomLongId();
92   -
93   - // 调用, 并断言异常
94   - assertServiceException(() -> configService.deleteConfig(id), CONFIG_NOT_EXISTS);
95   - }
96   -
97   -}