From 61672e0180083dd6fceaf1f53bc6e48474d2c216 Mon Sep 17 00:00:00 2001 From: YunaiV Date: Fri, 4 Feb 2022 12:28:48 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=9A=E6=A8=A1=E5=9D=97=E9=87=8D=E6=9E=84?= =?UTF-8?q?=2013=EF=BC=9A=E8=BF=81=E7=A7=BB=E9=9B=86=E6=88=90=E6=B5=8B?= =?UTF-8?q?=E8=AF=95~?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../yudao-spring-boot-starter-job/pom.xml | 2 + .../system/job}/SchedulerManagerTest.java | 20 ++-- .../module/system/mq}/RedisStreamTest.java | 27 +++-- .../module/system/service/package-info.java | 4 + .../sms/SmsServiceIntegrationTest.java | 24 ++-- .../test/BaseDbAndRedisIntegrationTest.java | 38 ++++++ .../system/test/BaseRedisIntegrationTest.java | 23 ++++ .../application-integration-test.yaml | 0 .../mysql/codegen/SchemaColumnMapperTest.java | 23 ++++ .../module/tool/dal/mysql/package-info.java | 4 + .../yudao/module/tool/dal/package-info.java | 4 + .../service/codegen/CodegenEngineTest.java | 34 ++++++ .../service/codegen/CodegenSQLParserTest.java | 8 +- .../codegen/CodegenServiceImplTest.java | 9 +- .../module/tool/service/package-info.java | 4 + .../test}/BaseDbAndRedisIntegrationTest.java | 2 +- .../tool/test}/BaseRedisIntegrationTest.java | 2 +- .../application-integration-test.yaml | 108 ++++++++++++++++++ ...ToolInformationSchemaColumnMapperTest.java | 24 ---- .../ToolInformationSchemaTableMapperTest.java | 12 -- .../codegen/ToolCodegenEngineTest.java | 34 ------ 21 files changed, 287 insertions(+), 119 deletions(-) rename {yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/framework/quartz/core => yudao-module-system/yudao-module-system-impl/src/test-integration/java/cn/iocoder/yudao/module/system/job}/SchedulerManagerTest.java (58%) rename {yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/framework/redis/core/stream => yudao-module-system/yudao-module-system-impl/src/test-integration/java/cn/iocoder/yudao/module/system/mq}/RedisStreamTest.java (55%) create mode 100644 yudao-module-system/yudao-module-system-impl/src/test-integration/java/cn/iocoder/yudao/module/system/service/package-info.java rename yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/modules/system/service/sms/SysSmsServiceIntegrationTest.java => yudao-module-system/yudao-module-system-impl/src/test-integration/java/cn/iocoder/yudao/module/system/service/sms/SmsServiceIntegrationTest.java (65%) create mode 100644 yudao-module-system/yudao-module-system-impl/src/test-integration/java/cn/iocoder/yudao/module/system/test/BaseDbAndRedisIntegrationTest.java create mode 100644 yudao-module-system/yudao-module-system-impl/src/test-integration/java/cn/iocoder/yudao/module/system/test/BaseRedisIntegrationTest.java rename {yudao-server => yudao-module-system/yudao-module-system-impl}/src/test-integration/resources/application-integration-test.yaml (100%) create mode 100644 yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/dal/mysql/codegen/SchemaColumnMapperTest.java create mode 100644 yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/dal/mysql/package-info.java create mode 100644 yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/dal/package-info.java create mode 100644 yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/service/codegen/CodegenEngineTest.java rename yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/modules/tool/service/codegen/ToolCodegenSQLParserTest.java => yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/service/codegen/CodegenSQLParserTest.java (85%) rename yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/modules/tool/service/codegen/ToolCodegenServiceImplTest.java => yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/service/codegen/CodegenServiceImplTest.java (53%) create mode 100644 yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/service/package-info.java rename {yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver => yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/test}/BaseDbAndRedisIntegrationTest.java (97%) rename {yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver => yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/test}/BaseRedisIntegrationTest.java (95%) create mode 100644 yudao-module-tool/yudao-module-tool-impl/src/test-integration/resources/application-integration-test.yaml delete mode 100644 yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/modules/tool/dal/mysql/codegen/ToolInformationSchemaColumnMapperTest.java delete mode 100644 yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/modules/tool/dal/mysql/codegen/ToolInformationSchemaTableMapperTest.java delete mode 100644 yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/modules/tool/service/codegen/ToolCodegenEngineTest.java diff --git a/yudao-framework/yudao-spring-boot-starter-job/pom.xml b/yudao-framework/yudao-spring-boot-starter-job/pom.xml index 4a1cd04a6b..b9c030d2a3 100644 --- a/yudao-framework/yudao-spring-boot-starter-job/pom.xml +++ b/yudao-framework/yudao-spring-boot-starter-job/pom.xml @@ -35,6 +35,8 @@ jakarta.validation jakarta.validation-api + + diff --git a/yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/framework/quartz/core/SchedulerManagerTest.java b/yudao-module-system/yudao-module-system-impl/src/test-integration/java/cn/iocoder/yudao/module/system/job/SchedulerManagerTest.java similarity index 58% rename from yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/framework/quartz/core/SchedulerManagerTest.java rename to yudao-module-system/yudao-module-system-impl/src/test-integration/java/cn/iocoder/yudao/module/system/job/SchedulerManagerTest.java index 0fb4cc6628..2d1d6f4c8a 100644 --- a/yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/framework/quartz/core/SchedulerManagerTest.java +++ b/yudao-module-system/yudao-module-system-impl/src/test-integration/java/cn/iocoder/yudao/module/system/job/SchedulerManagerTest.java @@ -1,52 +1,52 @@ -package cn.iocoder.yudao.server.framework.quartz.core; +package cn.iocoder.yudao.module.system.job; import cn.hutool.core.util.StrUtil; -import cn.iocoder.yudao.server.BaseDbUnitTest; -import cn.iocoder.yudao.module.system.job.auth.SysUserSessionTimeoutJob; import cn.iocoder.yudao.framework.quartz.core.scheduler.SchedulerManager; +import cn.iocoder.yudao.module.system.job.auth.UserSessionTimeoutJob; +import cn.iocoder.yudao.module.system.test.BaseDbUnitTest; import org.junit.jupiter.api.Test; import org.quartz.SchedulerException; import javax.annotation.Resource; -class SchedulerManagerTest extends BaseDbUnitTest { +public class SchedulerManagerTest extends BaseDbUnitTest { @Resource private SchedulerManager schedulerManager; @Test public void testAddJob() throws SchedulerException { - String jobHandlerName = StrUtil.lowerFirst(SysUserSessionTimeoutJob.class.getSimpleName()); + String jobHandlerName = StrUtil.lowerFirst(UserSessionTimeoutJob.class.getSimpleName()); schedulerManager.addJob(1L, jobHandlerName, "test", "0/10 * * * * ? *", 0, 0); } @Test public void testUpdateJob() throws SchedulerException { - String jobHandlerName = StrUtil.lowerFirst(SysUserSessionTimeoutJob.class.getSimpleName()); + String jobHandlerName = StrUtil.lowerFirst(UserSessionTimeoutJob.class.getSimpleName()); schedulerManager.updateJob(jobHandlerName, "hahaha", "0/20 * * * * ? *", 0, 0); } @Test public void testDeleteJob() throws SchedulerException { - String jobHandlerName = StrUtil.lowerFirst(SysUserSessionTimeoutJob.class.getSimpleName()); + String jobHandlerName = StrUtil.lowerFirst(UserSessionTimeoutJob.class.getSimpleName()); schedulerManager.deleteJob(jobHandlerName); } @Test public void testPauseJob() throws SchedulerException { - String jobHandlerName = StrUtil.lowerFirst(SysUserSessionTimeoutJob.class.getSimpleName()); + String jobHandlerName = StrUtil.lowerFirst(UserSessionTimeoutJob.class.getSimpleName()); schedulerManager.pauseJob(jobHandlerName); } @Test public void testResumeJob() throws SchedulerException { - String jobHandlerName = StrUtil.lowerFirst(SysUserSessionTimeoutJob.class.getSimpleName()); + String jobHandlerName = StrUtil.lowerFirst(UserSessionTimeoutJob.class.getSimpleName()); schedulerManager.resumeJob(jobHandlerName); } @Test public void testTriggerJob() throws SchedulerException { - String jobHandlerName = StrUtil.lowerFirst(SysUserSessionTimeoutJob.class.getSimpleName()); + String jobHandlerName = StrUtil.lowerFirst(UserSessionTimeoutJob.class.getSimpleName()); schedulerManager.triggerJob(1L, jobHandlerName, "niubi!!!"); } diff --git a/yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/framework/redis/core/stream/RedisStreamTest.java b/yudao-module-system/yudao-module-system-impl/src/test-integration/java/cn/iocoder/yudao/module/system/mq/RedisStreamTest.java similarity index 55% rename from yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/framework/redis/core/stream/RedisStreamTest.java rename to yudao-module-system/yudao-module-system-impl/src/test-integration/java/cn/iocoder/yudao/module/system/mq/RedisStreamTest.java index 284fb10220..c94316a817 100644 --- a/yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/framework/redis/core/stream/RedisStreamTest.java +++ b/yudao-module-system/yudao-module-system-impl/src/test-integration/java/cn/iocoder/yudao/module/system/mq/RedisStreamTest.java @@ -1,24 +1,23 @@ -package cn.iocoder.yudao.server.framework.redis.core.stream; +package cn.iocoder.yudao.module.system.mq; import cn.hutool.core.thread.ThreadUtil; -import cn.iocoder.yudao.server.BaseRedisIntegrationTest; -import cn.iocoder.yudao.module.system.mq.consumer.mail.SysMailSendConsumer; -import cn.iocoder.yudao.module.system.mq.consumer.sms.SysSmsSendConsumer; -import cn.iocoder.yudao.module.system.mq.message.mail.SysMailSendMessage; -import cn.iocoder.yudao.module.system.mq.message.sms.SysSmsSendMessage; -import cn.iocoder.yudao.framework.mq.core.util.RedisMessageUtils; +import cn.iocoder.yudao.framework.mq.core.RedisMQTemplate; +import cn.iocoder.yudao.module.system.mq.consumer.mail.MailSendConsumer; +import cn.iocoder.yudao.module.system.mq.consumer.sms.SmsSendConsumer; +import cn.iocoder.yudao.module.system.mq.message.mail.MailSendMessage; +import cn.iocoder.yudao.module.system.mq.message.sms.SmsSendMessage; +import cn.iocoder.yudao.module.system.test.BaseRedisIntegrationTest; import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Test; import org.springframework.context.annotation.Import; import org.springframework.data.redis.core.RedisTemplate; -import org.springframework.data.redis.core.StringRedisTemplate; import javax.annotation.Resource; import java.util.concurrent.TimeUnit; public class RedisStreamTest { - @Import({SysSmsSendConsumer.class, SysMailSendConsumer.class}) + @Import({SmsSendConsumer.class, MailSendConsumer.class}) @Disabled public static class ConsumerTest extends BaseRedisIntegrationTest { @@ -33,7 +32,7 @@ public class RedisStreamTest { public static class ProducerTest extends BaseRedisIntegrationTest { @Resource - private StringRedisTemplate stringRedisTemplate; + private RedisMQTemplate redisMQTemplate; @Resource private RedisTemplate redisTemplate; @@ -42,20 +41,20 @@ public class RedisStreamTest { public void testProducer01() { for (int i = 0; i < 100; i++) { // 创建消息 - SysSmsSendMessage message = new SysSmsSendMessage(); + SmsSendMessage message = new SmsSendMessage(); message.setMobile("15601691300").setApiTemplateId("test:" + i); // 发送消息 - RedisMessageUtils.sendStreamMessage(stringRedisTemplate, message); + redisMQTemplate.send(message); } } @Test public void testProducer02() { // 创建消息 - SysMailSendMessage message = new SysMailSendMessage(); + MailSendMessage message = new MailSendMessage(); message.setAddress("fangfang@mihayou.com").setTemplateCode("test"); // 发送消息 - RedisMessageUtils.sendStreamMessage(stringRedisTemplate, message); + redisMQTemplate.send(message); } } diff --git a/yudao-module-system/yudao-module-system-impl/src/test-integration/java/cn/iocoder/yudao/module/system/service/package-info.java b/yudao-module-system/yudao-module-system-impl/src/test-integration/java/cn/iocoder/yudao/module/system/service/package-info.java new file mode 100644 index 0000000000..7b475e53e4 --- /dev/null +++ b/yudao-module-system/yudao-module-system-impl/src/test-integration/java/cn/iocoder/yudao/module/system/service/package-info.java @@ -0,0 +1,4 @@ +/** + * 占位 + */ +package cn.iocoder.yudao.module.system.service; diff --git a/yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/modules/system/service/sms/SysSmsServiceIntegrationTest.java b/yudao-module-system/yudao-module-system-impl/src/test-integration/java/cn/iocoder/yudao/module/system/service/sms/SmsServiceIntegrationTest.java similarity index 65% rename from yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/modules/system/service/sms/SysSmsServiceIntegrationTest.java rename to yudao-module-system/yudao-module-system-impl/src/test-integration/java/cn/iocoder/yudao/module/system/service/sms/SmsServiceIntegrationTest.java index f3fab89851..b3ae5cde46 100644 --- a/yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/modules/system/service/sms/SysSmsServiceIntegrationTest.java +++ b/yudao-module-system/yudao-module-system-impl/src/test-integration/java/cn/iocoder/yudao/module/system/service/sms/SmsServiceIntegrationTest.java @@ -2,16 +2,12 @@ package cn.iocoder.yudao.module.system.service.sms; import cn.hutool.core.map.MapUtil; import cn.hutool.core.thread.ThreadUtil; -import cn.iocoder.yudao.server.BaseDbAndRedisIntegrationTest; -import cn.iocoder.yudao.module.system.mq.consumer.sms.SysSmsSendConsumer; -import cn.iocoder.yudao.module.system.mq.producer.sms.SysSmsProducer; -import cn.iocoder.yudao.module.system.service.sms.impl.SysSmsChannelServiceImpl; -import cn.iocoder.yudao.module.system.service.sms.impl.SysSmsLogServiceImpl; -import cn.iocoder.yudao.module.system.service.sms.impl.SysSmsTemplateServiceImpl; -import cn.iocoder.yudao.module.system.service.user.SysUserService; -import cn.iocoder.yudao.module.system.service.sms.impl.SysSmsCoreServiceImpl; import cn.iocoder.yudao.framework.common.enums.UserTypeEnum; import cn.iocoder.yudao.framework.sms.config.YudaoSmsAutoConfiguration; +import cn.iocoder.yudao.module.system.test.BaseDbAndRedisIntegrationTest; +import cn.iocoder.yudao.module.system.mq.consumer.sms.SmsSendConsumer; +import cn.iocoder.yudao.module.system.mq.producer.sms.SmsProducer; +import cn.iocoder.yudao.module.system.service.user.AdminUserService; import org.junit.jupiter.api.Test; import org.springframework.boot.test.mock.mockito.MockBean; import org.springframework.context.annotation.Import; @@ -22,17 +18,17 @@ import java.util.concurrent.TimeUnit; // TODO @芋艿:需要迁移 @Import({YudaoSmsAutoConfiguration.class, - SysSmsChannelServiceImpl.class, SysSmsCoreServiceImpl.class, SysSmsTemplateServiceImpl.class, SysSmsLogServiceImpl.class, - SysSmsProducer.class, SysSmsSendConsumer.class}) -public class SysSmsServiceIntegrationTest extends BaseDbAndRedisIntegrationTest { + SmsChannelServiceImpl.class, SmsSendServiceImpl.class, SmsTemplateServiceImpl.class, SmsLogServiceImpl.class, + SmsProducer.class, SmsSendConsumer.class}) +public class SmsServiceIntegrationTest extends BaseDbAndRedisIntegrationTest { @Resource - private SysSmsCoreServiceImpl smsService; + private SmsSendServiceImpl smsService; @Resource - private SysSmsChannelServiceImpl smsChannelService; + private SmsChannelServiceImpl smsChannelService; @MockBean - private SysUserService userService; + private AdminUserService userService; @Test public void testSendSingleSms_yunpianSuccess() { diff --git a/yudao-module-system/yudao-module-system-impl/src/test-integration/java/cn/iocoder/yudao/module/system/test/BaseDbAndRedisIntegrationTest.java b/yudao-module-system/yudao-module-system-impl/src/test-integration/java/cn/iocoder/yudao/module/system/test/BaseDbAndRedisIntegrationTest.java new file mode 100644 index 0000000000..5b9b21ffd5 --- /dev/null +++ b/yudao-module-system/yudao-module-system-impl/src/test-integration/java/cn/iocoder/yudao/module/system/test/BaseDbAndRedisIntegrationTest.java @@ -0,0 +1,38 @@ +package cn.iocoder.yudao.module.system.test; + +import cn.iocoder.yudao.framework.datasource.config.YudaoDataSourceAutoConfiguration; +import cn.iocoder.yudao.framework.mybatis.config.YudaoMybatisAutoConfiguration; +import cn.iocoder.yudao.framework.redis.config.YudaoRedisAutoConfiguration; +import com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceAutoConfiguration; +import com.baomidou.mybatisplus.autoconfigure.MybatisPlusAutoConfiguration; +import org.redisson.spring.starter.RedissonAutoConfiguration; +import org.springframework.boot.autoconfigure.data.redis.RedisAutoConfiguration; +import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; +import org.springframework.boot.autoconfigure.jdbc.DataSourceTransactionManagerAutoConfiguration; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.context.annotation.Import; +import org.springframework.test.context.ActiveProfiles; + +@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.NONE, classes = BaseDbAndRedisIntegrationTest.Application.class) +@ActiveProfiles("integration-test") // 设置使用 application-integration-test 配置文件 +public class BaseDbAndRedisIntegrationTest { + + @Import({ + // DB 配置类 + DynamicDataSourceAutoConfiguration.class, // Dynamic Datasource 配置类 + YudaoDataSourceAutoConfiguration.class, // 自己的 DB 配置类 + DataSourceAutoConfiguration.class, // Spring DB 自动配置类 + DataSourceTransactionManagerAutoConfiguration.class, // Spring 事务自动配置类 + // MyBatis 配置类 + YudaoMybatisAutoConfiguration.class, // 自己的 MyBatis 配置类 + MybatisPlusAutoConfiguration.class, // MyBatis 的自动配置类 + + // Redis 配置类 + RedisAutoConfiguration.class, // Spring Redis 自动配置类 + YudaoRedisAutoConfiguration.class, // 自己的 Redis 配置类 + RedissonAutoConfiguration.class, // Redisson 自动高配置类 + }) + public static class Application { + } + +} diff --git a/yudao-module-system/yudao-module-system-impl/src/test-integration/java/cn/iocoder/yudao/module/system/test/BaseRedisIntegrationTest.java b/yudao-module-system/yudao-module-system-impl/src/test-integration/java/cn/iocoder/yudao/module/system/test/BaseRedisIntegrationTest.java new file mode 100644 index 0000000000..f48b2891df --- /dev/null +++ b/yudao-module-system/yudao-module-system-impl/src/test-integration/java/cn/iocoder/yudao/module/system/test/BaseRedisIntegrationTest.java @@ -0,0 +1,23 @@ +package cn.iocoder.yudao.module.system.test; + +import cn.iocoder.yudao.framework.redis.config.YudaoRedisAutoConfiguration; +import org.redisson.spring.starter.RedissonAutoConfiguration; +import org.springframework.boot.autoconfigure.data.redis.RedisAutoConfiguration; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.context.annotation.Import; +import org.springframework.test.context.ActiveProfiles; + +@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.NONE, classes = BaseRedisIntegrationTest.Application.class) +@ActiveProfiles("integration-test") // 设置使用 application-integration-test 配置文件 +public class BaseRedisIntegrationTest { + + @Import({ + // Redis 配置类 + RedisAutoConfiguration.class, // Spring Redis 自动配置类 + YudaoRedisAutoConfiguration.class, // 自己的 Redis 配置类 + RedissonAutoConfiguration.class, // Redisson 自动高配置类 + }) + public static class Application { + } + +} diff --git a/yudao-server/src/test-integration/resources/application-integration-test.yaml b/yudao-module-system/yudao-module-system-impl/src/test-integration/resources/application-integration-test.yaml similarity index 100% rename from yudao-server/src/test-integration/resources/application-integration-test.yaml rename to yudao-module-system/yudao-module-system-impl/src/test-integration/resources/application-integration-test.yaml diff --git a/yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/dal/mysql/codegen/SchemaColumnMapperTest.java b/yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/dal/mysql/codegen/SchemaColumnMapperTest.java new file mode 100644 index 0000000000..1adf32fddf --- /dev/null +++ b/yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/dal/mysql/codegen/SchemaColumnMapperTest.java @@ -0,0 +1,23 @@ +package cn.iocoder.yudao.module.tool.dal.mysql.codegen; + +import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.SchemaColumnDO; +import cn.iocoder.yudao.module.tool.test.BaseDbUnitTest; +import org.junit.jupiter.api.Test; + +import javax.annotation.Resource; +import java.util.List; + +import static org.junit.jupiter.api.Assertions.assertTrue; + +public class SchemaColumnMapperTest extends BaseDbUnitTest { + + @Resource + private SchemaColumnMapper schemaColumnMapper; + + @Test + public void testSelectListByTableName() { + List columns = schemaColumnMapper.selectListByTableName("", "inf_config"); + assertTrue(columns.size() > 0); + } + +} diff --git a/yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/dal/mysql/package-info.java b/yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/dal/mysql/package-info.java new file mode 100644 index 0000000000..858488d9f4 --- /dev/null +++ b/yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/dal/mysql/package-info.java @@ -0,0 +1,4 @@ +/** + * 占位 + */ +package cn.iocoder.yudao.module.tool.dal.mysql; diff --git a/yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/dal/package-info.java b/yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/dal/package-info.java new file mode 100644 index 0000000000..589846c6d4 --- /dev/null +++ b/yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/dal/package-info.java @@ -0,0 +1,4 @@ +/** + * 占位 + */ +package cn.iocoder.yudao.module.tool.dal; diff --git a/yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/service/codegen/CodegenEngineTest.java b/yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/service/codegen/CodegenEngineTest.java new file mode 100644 index 0000000000..eabc880311 --- /dev/null +++ b/yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/service/codegen/CodegenEngineTest.java @@ -0,0 +1,34 @@ +package cn.iocoder.yudao.module.tool.service.codegen; + +import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.CodegenColumnDO; +import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.CodegenTableDO; +import cn.iocoder.yudao.module.tool.dal.mysql.codegen.CodegenColumnMapper; +import cn.iocoder.yudao.module.tool.dal.mysql.codegen.CodegenTableMapper; +import cn.iocoder.yudao.module.tool.service.codegen.inner.CodegenEngine; +import cn.iocoder.yudao.module.tool.test.BaseDbUnitTest; +import org.junit.jupiter.api.Test; + +import javax.annotation.Resource; +import java.util.List; +import java.util.Map; + +public class CodegenEngineTest extends BaseDbUnitTest { + + @Resource + private CodegenTableMapper codegenTableMapper; + @Resource + private CodegenColumnMapper codegenColumnMapper; + + @Resource + private CodegenEngine codegenEngine; + + @Test + public void testExecute() { + CodegenTableDO table = codegenTableMapper.selectById(20); + List columns = codegenColumnMapper.selectListByTableId(table.getId()); + Map result = codegenEngine.execute(table, columns); + result.forEach((s, s2) -> System.out.println(s2)); +// System.out.println(result.get("vue/views/system/test/index.vue")); + } + +} diff --git a/yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/modules/tool/service/codegen/ToolCodegenSQLParserTest.java b/yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/service/codegen/CodegenSQLParserTest.java similarity index 85% rename from yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/modules/tool/service/codegen/ToolCodegenSQLParserTest.java rename to yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/service/codegen/CodegenSQLParserTest.java index 5d7f6365bd..e9a2603e96 100644 --- a/yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/modules/tool/service/codegen/ToolCodegenSQLParserTest.java +++ b/yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/service/codegen/CodegenSQLParserTest.java @@ -1,10 +1,10 @@ package cn.iocoder.yudao.module.tool.service.codegen; -import cn.iocoder.yudao.server.BaseDbUnitTest; -import cn.iocoder.yudao.module.tool.service.codegen.impl.ToolCodegenSQLParser; +import cn.iocoder.yudao.module.tool.service.codegen.inner.CodegenSQLParser; +import cn.iocoder.yudao.module.tool.test.BaseDbUnitTest; import org.junit.jupiter.api.Test; -public class ToolCodegenSQLParserTest extends BaseDbUnitTest { +public class CodegenSQLParserTest extends BaseDbUnitTest { @Test public void testParse() { @@ -22,7 +22,7 @@ public class ToolCodegenSQLParserTest extends BaseDbUnitTest { " `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',\n" + " PRIMARY KEY (`id`) USING BTREE\n" + ") ENGINE=InnoDB AUTO_INCREMENT=108 DEFAULT CHARSET=utf8mb4 COMMENT='字典类型表';"; - ToolCodegenSQLParser.parse(sql); + CodegenSQLParser.parse(sql); // TODO 芋艿:后续完善断言 } diff --git a/yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/modules/tool/service/codegen/ToolCodegenServiceImplTest.java b/yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/service/codegen/CodegenServiceImplTest.java similarity index 53% rename from yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/modules/tool/service/codegen/ToolCodegenServiceImplTest.java rename to yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/service/codegen/CodegenServiceImplTest.java index 27bf28d06c..461f45b855 100644 --- a/yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/modules/tool/service/codegen/ToolCodegenServiceImplTest.java +++ b/yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/service/codegen/CodegenServiceImplTest.java @@ -1,19 +1,18 @@ package cn.iocoder.yudao.module.tool.service.codegen; -import cn.iocoder.yudao.server.BaseDbUnitTest; -import cn.iocoder.yudao.module.tool.service.codegen.impl.ToolCodegenServiceImpl; +import cn.iocoder.yudao.module.tool.test.BaseDbUnitTest; import org.junit.jupiter.api.Test; import javax.annotation.Resource; -class ToolCodegenServiceImplTest extends BaseDbUnitTest { +class CodegenServiceImplTest extends BaseDbUnitTest { @Resource - private ToolCodegenServiceImpl toolCodegenService; + private CodegenServiceImpl codegenService; @Test public void tetCreateCodegenTable() { - toolCodegenService.createCodegen("tool_test_demo"); + codegenService.createCodegen(0L, "tool_test_demo"); // toolCodegenService.createCodegenTable("tool_codegen_table"); // toolCodegenService.createCodegen("tool_codegen_column"); } diff --git a/yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/service/package-info.java b/yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/service/package-info.java new file mode 100644 index 0000000000..5dd2f92481 --- /dev/null +++ b/yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/service/package-info.java @@ -0,0 +1,4 @@ +/** + * 占位 + */ +package cn.iocoder.yudao.module.tool.service; diff --git a/yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/BaseDbAndRedisIntegrationTest.java b/yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/test/BaseDbAndRedisIntegrationTest.java similarity index 97% rename from yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/BaseDbAndRedisIntegrationTest.java rename to yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/test/BaseDbAndRedisIntegrationTest.java index cf7b03f598..7ce9039cdf 100644 --- a/yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/BaseDbAndRedisIntegrationTest.java +++ b/yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/test/BaseDbAndRedisIntegrationTest.java @@ -1,4 +1,4 @@ -package cn.iocoder.yudao.server; +package cn.iocoder.yudao.module.tool.test; import cn.iocoder.yudao.framework.datasource.config.YudaoDataSourceAutoConfiguration; import cn.iocoder.yudao.framework.mybatis.config.YudaoMybatisAutoConfiguration; diff --git a/yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/BaseRedisIntegrationTest.java b/yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/test/BaseRedisIntegrationTest.java similarity index 95% rename from yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/BaseRedisIntegrationTest.java rename to yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/test/BaseRedisIntegrationTest.java index d82d0daf5b..06bae00a83 100644 --- a/yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/BaseRedisIntegrationTest.java +++ b/yudao-module-tool/yudao-module-tool-impl/src/test-integration/java/cn/iocoder/yudao/module/tool/test/BaseRedisIntegrationTest.java @@ -1,4 +1,4 @@ -package cn.iocoder.yudao.server; +package cn.iocoder.yudao.module.tool.test; import cn.iocoder.yudao.framework.redis.config.YudaoRedisAutoConfiguration; import org.redisson.spring.starter.RedissonAutoConfiguration; diff --git a/yudao-module-tool/yudao-module-tool-impl/src/test-integration/resources/application-integration-test.yaml b/yudao-module-tool/yudao-module-tool-impl/src/test-integration/resources/application-integration-test.yaml new file mode 100644 index 0000000000..d9612eee75 --- /dev/null +++ b/yudao-module-tool/yudao-module-tool-impl/src/test-integration/resources/application-integration-test.yaml @@ -0,0 +1,108 @@ +spring: + main: + lazy-initialization: true # 开启懒加载,加快速度 + banner-mode: off # 单元测试,禁用 Banner + +--- #################### 数据库相关配置 #################### + +spring: + # 数据源配置项 + autoconfigure: + exclude: + - com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure # 排除 Druid 的自动配置,使用 dynamic-datasource-spring-boot-starter 配置多数据源 + datasource: + druid: # Druid 【监控】相关的全局配置 + web-stat-filter: + enabled: true + stat-view-servlet: + enabled: true + allow: # 设置白名单,不填则允许所有访问 + url-pattern: /druid/* + login-username: # 控制台管理用户名和密码 + login-password: + filter: + stat: + enabled: true + log-slow-sql: true # 慢 SQL 记录 + slow-sql-millis: 100 + merge-sql: true + wall: + config: + multi-statement-allow: true + dynamic: # 多数据源配置 + druid: # Druid 【连接池】相关的全局配置 + initial-size: 5 # 初始连接数 + min-idle: 10 # 最小连接池数量 + max-active: 20 # 最大连接池数量 + max-wait: 600000 # 配置获取连接等待超时的时间,单位:毫秒 + time-between-eviction-runs-millis: 60000 # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位:毫秒 + min-evictable-idle-time-millis: 300000 # 配置一个连接在池中最小生存的时间,单位:毫秒 + max-evictable-idle-time-millis: 900000 # 配置一个连接在池中最大生存的时间,单位:毫秒 + validation-query: SELECT 1 FROM DUAL # 配置检测连接是否有效 + test-while-idle: true + test-on-borrow: false + test-on-return: false + primary: master + datasource: + master: + name: ruoyi-vue-pro + url: jdbc:mysql://127.0.0.1:3306/${spring.datasource.dynamic.datasource.master.name}?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=CTT + driver-class-name: com.mysql.jdbc.Driver + username: root + password: 123456 + slave: # 模拟从库,可根据自己需要修改 + name: ruoyi-vue-pro + url: jdbc:mysql://127.0.0.1:3306/${spring.datasource.dynamic.datasource.slave.name}?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=CTT + driver-class-name: com.mysql.jdbc.Driver + username: root + password: 123456 + + # Redis 配置。Redisson 默认的配置足够使用,一般不需要进行调优 + redis: + host: 127.0.0.1 # 地址 + port: 6379 # 端口 + database: 0 # 数据库索引 + +mybatis: + lazy-initialization: true # 单元测试,设置 MyBatis Mapper 延迟加载,加速每个单元测试 + +--- #################### 定时任务相关配置 #################### + +--- #################### 配置中心相关配置 #################### + +--- #################### 服务保障相关配置 #################### + +# Lock4j 配置项(单元测试,禁用 Lock4j) + +# Resilience4j 配置项 +resilience4j: + ratelimiter: + instances: + backendA: + limit-for-period: 1 # 每个周期内,允许的请求数。默认为 50 + limit-refresh-period: 60s # 每个周期的时长,单位:微秒。默认为 500 + timeout-duration: 1s # 被限流时,阻塞等待的时长,单位:微秒。默认为 5s + register-health-indicator: true # 是否注册到健康监测 + +--- #################### 监控相关配置 #################### + +--- #################### 芋道相关配置 #################### + +# 芋道配置项,设置当前项目所有自定义的配置 +yudao: + security: + token-header: Authorization + token-secret: abcdefghijklmnopqrstuvwxyz + token-timeout: 1d + session-timeout: 30m + mock-enable: true + mock-secret: test + swagger: + enable: false # 单元测试,禁用 Swagger + file: + base-path: http://127.0.0.1:${server.port}/${yudao.web.api-prefix}/file/get/ + xss: + enable: false + exclude-urls: # 如下两个 url,仅仅是为了演示,去掉配置也没关系 + - ${spring.boot.admin.context-path}/** # 不处理 Spring Boot Admin 的请求 + - ${management.endpoints.web.base-path}/** # 不处理 Actuator 的请求 diff --git a/yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/modules/tool/dal/mysql/codegen/ToolInformationSchemaColumnMapperTest.java b/yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/modules/tool/dal/mysql/codegen/ToolInformationSchemaColumnMapperTest.java deleted file mode 100644 index c8ef7018e3..0000000000 --- a/yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/modules/tool/dal/mysql/codegen/ToolInformationSchemaColumnMapperTest.java +++ /dev/null @@ -1,24 +0,0 @@ -package cn.iocoder.yudao.module.tool.dal.mysql.codegen; - -import cn.iocoder.yudao.server.BaseDbUnitTest; -import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.ToolSchemaColumnDO; -import org.junit.jupiter.api.Test; - -import javax.annotation.Resource; -import java.util.List; - -import static org.junit.jupiter.api.Assertions.assertTrue; - -public class ToolInformationSchemaColumnMapperTest extends BaseDbUnitTest { - - @Resource - private ToolSchemaColumnMapper toolInformationSchemaColumnMapper; - - @Test - public void testSelectListByTableName() { - List columns = toolInformationSchemaColumnMapper - .selectListByTableName("", "inf_config"); - assertTrue(columns.size() > 0); - } - -} diff --git a/yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/modules/tool/dal/mysql/codegen/ToolInformationSchemaTableMapperTest.java b/yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/modules/tool/dal/mysql/codegen/ToolInformationSchemaTableMapperTest.java deleted file mode 100644 index 43f8f4cbc9..0000000000 --- a/yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/modules/tool/dal/mysql/codegen/ToolInformationSchemaTableMapperTest.java +++ /dev/null @@ -1,12 +0,0 @@ -package cn.iocoder.yudao.module.tool.dal.mysql.codegen; - -import cn.iocoder.yudao.server.BaseDbUnitTest; - -import javax.annotation.Resource; - -class ToolInformationSchemaTableMapperTest extends BaseDbUnitTest { - - @Resource - private ToolSchemaTableMapper toolInformationSchemaTableMapper; - -} diff --git a/yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/modules/tool/service/codegen/ToolCodegenEngineTest.java b/yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/modules/tool/service/codegen/ToolCodegenEngineTest.java deleted file mode 100644 index 6d9fd3d98d..0000000000 --- a/yudao-server/src/test-integration/java/cn/iocoder/yudao/adminserver/modules/tool/service/codegen/ToolCodegenEngineTest.java +++ /dev/null @@ -1,34 +0,0 @@ -package cn.iocoder.yudao.module.tool.service.codegen; - -import cn.iocoder.yudao.server.BaseDbUnitTest; -import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.ToolCodegenColumnDO; -import cn.iocoder.yudao.module.tool.dal.dataobject.codegen.ToolCodegenTableDO; -import cn.iocoder.yudao.module.tool.dal.mysql.codegen.ToolCodegenColumnMapper; -import cn.iocoder.yudao.module.tool.dal.mysql.codegen.ToolCodegenTableMapper; -import cn.iocoder.yudao.module.tool.service.codegen.impl.ToolCodegenEngine; -import org.junit.jupiter.api.Test; - -import javax.annotation.Resource; -import java.util.List; -import java.util.Map; - -public class ToolCodegenEngineTest extends BaseDbUnitTest { - - @Resource - private ToolCodegenTableMapper codegenTableMapper; - @Resource - private ToolCodegenColumnMapper codegenColumnMapper; - - @Resource - private ToolCodegenEngine codegenEngine; - - @Test - public void testExecute() { - ToolCodegenTableDO table = codegenTableMapper.selectById(20); - List columns = codegenColumnMapper.selectListByTableId(table.getId()); - Map result = codegenEngine.execute(table, columns); - result.forEach((s, s2) -> System.out.println(s2)); -// System.out.println(result.get("vue/views/system/test/index.vue")); - } - -}