Commit a83b8e8fbc23ae37348e1c551a98ea9a54896bbc
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 | ... | ... |
pom.xml
| ... | ... | @@ -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
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> | ... | ... |