Commit a83b8e8fbc23ae37348e1c551a98ea9a54896bbc

Authored by YunaiV
1 parent f469c5ca

修复报错的单元测试

Showing 20 changed files with 40 additions and 28 deletions
README.md
1   -**严肃声明:现在、未来都不会有商业版本,所有功能全部开源!**
2   -
3   -**拒绝虚假开源,售卖商业版,程序员不骗程序员!!**
  1 +**严肃声明:现在、未来都不会有商业版本,所有代码全部开源!**
4 2  
5 3 **「我喜欢写代码,乐此不疲」**
6 4 **「我喜欢做开源,以此为乐」**
... ... @@ -181,7 +179,6 @@ ps:核心功能已经实现,正在对接微信小程序中...
181 179 | `yudao-module-system` | 系统功能的 Module 模块 |
182 180 | `yudao-module-member` | 会员中心的 Module 模块 |
183 181 | `yudao-module-infra` | 基础设施的 Module 模块 |
184   -| `yudao-module-tool` | 研发工具的 Module 模块 |
185 182 | `yudao-module-bpm` | 工作流程的 Module 模块 |
186 183 | `yudao-module-pay` | 支付系统的 Module 模块 |
187 184  
... ...
... ... @@ -14,12 +14,12 @@
14 14 <module>yudao-server</module>
15 15 <!-- 各种 module 拓展 -->
16 16 <module>yudao-module-member</module>
17   - <module>yudao-module-bpm</module>
18 17 <module>yudao-module-system</module>
19 18 <module>yudao-module-infra</module>
20 19 <module>yudao-module-pay</module>
21   -<!-- <module>yudao-module-mall</module>-->
  20 +<!-- <module>yudao-module-bpm</module>-->
22 21 <module>yudao-module-visualization</module>
  22 +<!-- <module>yudao-module-mall</module>-->
23 23 <!-- 示例项目 -->
24 24 <module>yudao-example</module>
25 25 </modules>
... ...
yudao-dependencies/pom.xml
... ... @@ -56,6 +56,7 @@
56 56 <tika-core.version>2.6.0</tika-core.version>
57 57 <aj-captcha.version>1.3.0</aj-captcha.version>
58 58 <netty-all.version>4.1.85.Final</netty-all.version>
  59 + <ip2region.version>2.6.6</ip2region.version>
59 60 <!-- 三方云服务相关 -->
60 61 <okio.version>3.0.0</okio.version>
61 62 <okhttp3.version>4.10.0</okhttp3.version>
... ... @@ -515,6 +516,12 @@
515 516 <version>${netty-all.version}</version>
516 517 </dependency>
517 518  
  519 + <dependency>
  520 + <groupId>org.lionsoul</groupId>
  521 + <artifactId>ip2region</artifactId>
  522 + <version>${ip2region.version}</version>
  523 + </dependency>
  524 +
518 525 <!-- 三方云服务相关 -->
519 526 <dependency>
520 527 <groupId>com.squareup.okio</groupId>
... ...
yudao-framework/yudao-spring-boot-starter-biz-data-permission/src/test/java/cn/iocoder/yudao/framework/datapermission/core/rule/dept/DeptDataPermissionRuleTest.java
... ... @@ -227,7 +227,7 @@ class DeptDataPermissionRuleTest extends BaseMockitoUnitTest {
227 227 // 调用
228 228 Expression expression = rule.getExpression(tableName, tableAlias);
229 229 // 断言
230   - assertEquals("u.dept_id IN (10, 20) OR u.id = 1", expression.toString());
  230 + assertEquals("(u.dept_id IN (10, 20) OR u.id = 1)", expression.toString());
231 231 assertSame(deptDataPermission, loginUser.getContext(DeptDataPermissionRule.CONTEXT_KEY, DeptDataPermissionRespDTO.class));
232 232 }
233 233 }
... ...
yudao-framework/yudao-spring-boot-starter-biz-ip/pom.xml
... ... @@ -34,7 +34,6 @@
34 34 <dependency>
35 35 <groupId>org.lionsoul</groupId>
36 36 <artifactId>ip2region</artifactId>
37   - <version>${ip2region.version}</version>
38 37 </dependency>
39 38  
40 39 <dependency>
... ...
yudao-framework/yudao-spring-boot-starter-biz-ip/src/main/java/cn/iocoder/yudao/framework/ip/core/utils/AreaUtils.java
... ... @@ -28,7 +28,9 @@ public class AreaUtils {
28 28 @SuppressWarnings("InstantiationOfUtilityClass")
29 29 private final static AreaUtils INSTANCE = new AreaUtils();
30 30  
31   -
  31 + /**
  32 + * Area 内存缓存,提升访问速度
  33 + */
32 34 private static Map<Integer, Area> areas;
33 35  
34 36 private AreaUtils() {
... ...
yudao-module-bpm/yudao-module-bpm-biz/src/test/resources/application-unit-test.yaml
... ... @@ -9,7 +9,7 @@ spring:
9 9 # 数据源配置项
10 10 datasource:
11 11 name: ruoyi-vue-pro
12   - url: jdbc:h2:mem:testdb;MODE=MYSQL;DATABASE_TO_UPPER=false; # MODE 使用 MySQL 模式;DATABASE_TO_UPPER 配置表和字段使用小写
  12 + url: jdbc:h2:mem:testdb;MODE=MYSQL;DATABASE_TO_UPPER=false;NON_KEYWORDS=value; # MODE 使用 MySQL 模式;DATABASE_TO_UPPER 配置表和字段使用小写
13 13 driver-class-name: org.h2.Driver
14 14 username: sa
15 15 password:
... ...
yudao-module-infra/yudao-module-infra-biz/src/test/java/cn/iocoder/yudao/module/infra/service/file/FileServiceTest.java
... ... @@ -79,7 +79,7 @@ public class FileServiceTest extends BaseDbUnitTest {
79 79 FileClient client = mock(FileClient.class);
80 80 when(fileConfigService.getMasterFileClient()).thenReturn(client);
81 81 String url = randomString();
82   - when(client.upload(same(content), same(path), same("image/jpeg"))).thenReturn(url);
  82 + when(client.upload(same(content), same(path), eq("image/jpeg"))).thenReturn(url);
83 83 when(client.getId()).thenReturn(10L);
84 84 String name = "单测文件名";
85 85 // 调用
... ...
yudao-module-infra/yudao-module-infra-biz/src/test/resources/application-unit-test.yaml
... ... @@ -9,7 +9,7 @@ spring:
9 9 # 数据源配置项
10 10 datasource:
11 11 name: ruoyi-vue-pro
12   - url: jdbc:h2:mem:testdb;MODE=MYSQL;DATABASE_TO_UPPER=false; # MODE 使用 MySQL 模式;DATABASE_TO_UPPER 配置表和字段使用小写
  12 + url: jdbc:h2:mem:testdb;MODE=MYSQL;DATABASE_TO_UPPER=false;NON_KEYWORDS=value; # MODE 使用 MySQL 模式;DATABASE_TO_UPPER 配置表和字段使用小写
13 13 driver-class-name: org.h2.Driver
14 14 username: sa
15 15 password:
... ...
yudao-module-mall/pom.xml
... ... @@ -15,18 +15,15 @@
15 15 <name>${project.artifactId}</name>
16 16  
17 17 <description>
18   - 商城大模块,由 product 商品、promotion 营销、trade 交易 coupon等组成
  18 + 商城大模块,由 product 商品、promotion 营销、trade 交易等组成
19 19 </description>
20 20 <modules>
21   -<!-- <module>yudao-module-coupon-api</module>-->
22   -<!-- <module>yudao-module-coupon-biz</module>-->
23 21 <module>yudao-module-promotion-api</module>
24 22 <module>yudao-module-promotion-biz</module>
25 23 <module>yudao-module-product-api</module>
26 24 <module>yudao-module-product-biz</module>
27 25 <module>yudao-module-trade-api</module>
28 26 <module>yudao-module-trade-biz</module>
29   -
30 27 </modules>
31 28  
32 29 </project>
... ...
yudao-module-mall/yudao-module-product-biz/src/test/resources/application-unit-test.yaml
... ... @@ -9,7 +9,7 @@ spring:
9 9 # 数据源配置项
10 10 datasource:
11 11 name: ruoyi-vue-pro
12   - url: jdbc:h2:mem:testdb;MODE=MYSQL;DATABASE_TO_UPPER=false; # MODE 使用 MySQL 模式;DATABASE_TO_UPPER 配置表和字段使用小写
  12 + url: jdbc:h2:mem:testdb;MODE=MYSQL;DATABASE_TO_UPPER=false;NON_KEYWORDS=value; # MODE 使用 MySQL 模式;DATABASE_TO_UPPER 配置表和字段使用小写
13 13 driver-class-name: org.h2.Driver
14 14 username: sa
15 15 password:
... ...
yudao-module-mall/yudao-module-promotion-biz/src/test/resources/application-unit-test.yaml
... ... @@ -9,7 +9,7 @@ spring:
9 9 # 数据源配置项
10 10 datasource:
11 11 name: ruoyi-vue-pro
12   - url: jdbc:h2:mem:testdb;MODE=MYSQL;DATABASE_TO_UPPER=false; # MODE 使用 MySQL 模式;DATABASE_TO_UPPER 配置表和字段使用小写
  12 + url: jdbc:h2:mem:testdb;MODE=MYSQL;DATABASE_TO_UPPER=false;NON_KEYWORDS=value; # MODE 使用 MySQL 模式;DATABASE_TO_UPPER 配置表和字段使用小写
13 13 driver-class-name: org.h2.Driver
14 14 username: sa
15 15 password:
... ...
yudao-module-mall/yudao-module-trade-biz/src/test/resources/application-unit-test.yaml
... ... @@ -9,7 +9,7 @@ spring:
9 9 # 数据源配置项
10 10 datasource:
11 11 name: ruoyi-vue-pro
12   - url: jdbc:h2:mem:testdb;MODE=MYSQL;DATABASE_TO_UPPER=false; # MODE 使用 MySQL 模式;DATABASE_TO_UPPER 配置表和字段使用小写
  12 + url: jdbc:h2:mem:testdb;MODE=MYSQL;DATABASE_TO_UPPER=false;NON_KEYWORDS=value; # MODE 使用 MySQL 模式;DATABASE_TO_UPPER 配置表和字段使用小写
13 13 driver-class-name: org.h2.Driver
14 14 username: sa
15 15 password:
... ...
yudao-module-member/yudao-module-member-biz/src/test/resources/application-unit-test.yaml
... ... @@ -9,7 +9,7 @@ spring:
9 9 # 数据源配置项
10 10 datasource:
11 11 name: ruoyi-vue-pro
12   - url: jdbc:h2:mem:testdb;MODE=MYSQL;DATABASE_TO_UPPER=false; # MODE 使用 MySQL 模式;DATABASE_TO_UPPER 配置表和字段使用小写
  12 + url: jdbc:h2:mem:testdb;MODE=MYSQL;DATABASE_TO_UPPER=false;NON_KEYWORDS=value; # MODE 使用 MySQL 模式;DATABASE_TO_UPPER 配置表和字段使用小写
13 13 driver-class-name: org.h2.Driver
14 14 username: sa
15 15 password:
... ...
yudao-module-pay/yudao-module-pay-biz/src/test/resources/application-unit-test.yaml
... ... @@ -9,7 +9,7 @@ spring:
9 9 # 数据源配置项
10 10 datasource:
11 11 name: ruoyi-vue-pro
12   - url: jdbc:h2:mem:testdb;MODE=MYSQL;DATABASE_TO_UPPER=false; # MODE 使用 MySQL 模式;DATABASE_TO_UPPER 配置表和字段使用小写
  12 + url: jdbc:h2:mem:testdb;MODE=MYSQL;DATABASE_TO_UPPER=false;NON_KEYWORDS=value; # MODE 使用 MySQL 模式;DATABASE_TO_UPPER 配置表和字段使用小写
13 13 driver-class-name: org.h2.Driver
14 14 username: sa
15 15 password:
... ...
yudao-module-system/yudao-module-system-biz/src/test/java/cn/iocoder/yudao/module/system/service/dept/DeptServiceTest.java
1 1 package cn.iocoder.yudao.module.system.service.dept;
2 2  
3 3 import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
  4 +import cn.iocoder.yudao.framework.tenant.core.context.TenantContextHolder;
4 5 import cn.iocoder.yudao.module.system.controller.admin.dept.vo.dept.DeptCreateReqVO;
5 6 import cn.iocoder.yudao.module.system.controller.admin.dept.vo.dept.DeptListReqVO;
6 7 import cn.iocoder.yudao.module.system.controller.admin.dept.vo.dept.DeptUpdateReqVO;
... ... @@ -12,6 +13,7 @@ import cn.iocoder.yudao.framework.common.util.collection.ArrayUtils;
12 13 import cn.iocoder.yudao.framework.common.util.object.ObjectUtils;
13 14 import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest;
14 15 import com.google.common.collect.Multimap;
  16 +import org.junit.jupiter.api.BeforeEach;
15 17 import org.junit.jupiter.api.Test;
16 18 import org.springframework.boot.test.mock.mockito.MockBean;
17 19 import org.springframework.context.annotation.Import;
... ... @@ -47,6 +49,12 @@ public class DeptServiceTest extends BaseDbUnitTest {
47 49 @MockBean
48 50 private DeptProducer deptProducer;
49 51  
  52 + @BeforeEach
  53 + public void setUp() {
  54 + // 清理租户上下文
  55 + TenantContextHolder.clear();
  56 + }
  57 +
50 58 @Test
51 59 @SuppressWarnings("unchecked")
52 60 void testInitLocalCache() {
... ...
yudao-module-system/yudao-module-system-biz/src/test/java/cn/iocoder/yudao/module/system/service/dict/DictDataServiceTest.java
... ... @@ -57,7 +57,7 @@ public class DictDataServiceTest extends BaseDbUnitTest {
57 57 // 准备参数
58 58 DictDataPageReqVO reqVO = new DictDataPageReqVO();
59 59 reqVO.setLabel("芋");
60   - reqVO.setDictType("yu");
  60 + reqVO.setDictType("yunai");
61 61 reqVO.setStatus(CommonStatusEnum.ENABLE.getStatus());
62 62  
63 63 // 调用
... ... @@ -86,7 +86,7 @@ public class DictDataServiceTest extends BaseDbUnitTest {
86 86 // 准备参数
87 87 DictDataExportReqVO reqVO = new DictDataExportReqVO();
88 88 reqVO.setLabel("芋");
89   - reqVO.setDictType("yu");
  89 + reqVO.setDictType("yunai");
90 90 reqVO.setStatus(CommonStatusEnum.ENABLE.getStatus());
91 91  
92 92 // 调用
... ...
yudao-module-system/yudao-module-system-biz/src/test/resources/application-unit-test.yaml
... ... @@ -9,7 +9,7 @@ spring:
9 9 # 数据源配置项
10 10 datasource:
11 11 name: ruoyi-vue-pro
12   - url: jdbc:h2:mem:testdb;MODE=MYSQL;DATABASE_TO_UPPER=false; # MODE 使用 MySQL 模式;DATABASE_TO_UPPER 配置表和字段使用小写
  12 + url: jdbc:h2:mem:testdb;MODE=MYSQL;DATABASE_TO_UPPER=false;NON_KEYWORDS=value; # MODE 使用 MySQL 模式;DATABASE_TO_UPPER 配置表和字段使用小写
13 13 driver-class-name: org.h2.Driver
14 14 username: sa
15 15 password:
... ...
yudao-ui-admin/src/views/mall/trade/order/detail.vue
... ... @@ -58,7 +58,8 @@
58 58 <el-table-column prop="spuName" label="商品" width="700">
59 59 <template slot-scope="{ row }">
60 60 {{row.spuName}}
61   - <el-tag size="medium" v-for="property in row.properties">{{property.propertyName}}:{{property.valueName}}</el-tag>
  61 + <el-tag size="medium" v-for="property in row.properties" :key="property.propertyId">
  62 + {{property.propertyName}}:{{property.valueName}}</el-tag>
62 63 </template>
63 64 </el-table-column>
64 65 <el-table-column prop="originalUnitPrice" label="单价(元)" width="180">
... ... @@ -79,7 +80,7 @@
79 80 </el-table-column>
80 81 </el-table>
81 82 </el-descriptions-item>
82   - <el-descriptions-item v-for="(item,index) in 5" label-class-name="no-colon" /> <!-- 占位 -->
  83 + <el-descriptions-item v-for="(item,index) in 5" label-class-name="no-colon" :key="item" /> <!-- 占位 -->
83 84 <el-descriptions-item label="商品总额">¥{{ (order.originalPrice / 100.0).toFixed(2) }}</el-descriptions-item>
84 85 <el-descriptions-item label="运费金额">¥{{ (order.deliveryPrice / 100.0).toFixed(2) }}</el-descriptions-item>
85 86 <el-descriptions-item label="订单调价">¥{{ (order.adjustPrice / 100.0).toFixed(2) }}</el-descriptions-item>
... ... @@ -92,7 +93,7 @@
92 93 <el-descriptions-item label="积分抵扣" label-style="color: red">
93 94 ¥{{ (order.pointPrice / 100.0).toFixed(2) }}
94 95 </el-descriptions-item>
95   - <el-descriptions-item v-for="(item,index) in 5" label-class-name="no-colon" /> <!-- 占位 -->
  96 + <el-descriptions-item v-for="(item,index) in 5" label-class-name="no-colon" :key="item" /> <!-- 占位 -->
96 97 <el-descriptions-item label="应付金额">
97 98 ¥{{ (order.payPrice / 100.0).toFixed(2) }}
98 99 </el-descriptions-item>
... ...
yudao-ui-admin/src/views/mall/trade/order/index.vue
... ... @@ -99,7 +99,8 @@
99 99 <img :src="row.picUrl"/>
100 100 <span class="ellipsis-2" :title="row.spuName">{{row.spuName}}</span>
101 101 <!-- TODO @小程:下面是商品属性,想当度一行,放在商品名下面 -->
102   - <el-tag size="medium" v-for="property in row.properties">{{property.propertyName}}:{{property.valueName}}</el-tag>
  102 + <el-tag size="medium" v-for="property in row.properties" :key="property.propertyId">
  103 + {{property.propertyName}}:{{property.valueName}}</el-tag>
103 104 </div>
104 105 </template>
105 106 </el-table-column>
... ...