mirror of
				https://gitee.com/hhyykk/ipms-sjy.git
				synced 2025-10-31 02:08:43 +08:00 
			
		
		
		
	引入 redis mock 服务器
This commit is contained in:
		| @@ -0,0 +1,31 @@ | ||||
| package cn.iocoder.dashboard; | ||||
|  | ||||
| import org.junit.jupiter.api.AfterEach; | ||||
| import org.springframework.boot.test.context.SpringBootTest; | ||||
| import org.springframework.data.redis.core.RedisCallback; | ||||
| import org.springframework.data.redis.core.StringRedisTemplate; | ||||
| import org.springframework.test.context.ActiveProfiles; | ||||
| import org.springframework.test.context.jdbc.Sql; | ||||
|  | ||||
| import javax.annotation.Resource; | ||||
|  | ||||
| @SpringBootTest | ||||
| @ActiveProfiles("unit-test") // 设置使用 application-unit-test 配置文件 | ||||
| @Sql(scripts = "/sql/clean.sql", executionPhase = Sql.ExecutionPhase.AFTER_TEST_METHOD) // 每个单元测试结束后,清理 DB | ||||
| public class BaseSpringBootUnitTest { | ||||
|  | ||||
|     @Resource | ||||
|     private StringRedisTemplate stringRedisTemplate; | ||||
|  | ||||
|     /** | ||||
|      * 每个单元测试结束后,清理 Redis | ||||
|      */ | ||||
|     @AfterEach | ||||
|     public void cleanRedis() { | ||||
|         stringRedisTemplate.execute((RedisCallback<Object>) connection -> { | ||||
|             connection.flushDb(); | ||||
|             return null; | ||||
|         }); | ||||
|     } | ||||
|  | ||||
| } | ||||
| @@ -1,14 +1,18 @@ | ||||
| package cn.iocoder.dashboard.config; | ||||
|  | ||||
| import io.reactivex.rxjava3.core.Scheduler; | ||||
| import org.mockito.Mockito; | ||||
| import org.springframework.context.annotation.Bean; | ||||
| import org.springframework.context.annotation.Configuration; | ||||
| import org.springframework.context.annotation.Lazy; | ||||
|  | ||||
| @Configuration | ||||
| @Lazy(false) | ||||
| public class QuartzTestConfiguration { | ||||
|  | ||||
|     // TODO 芋艿:暂时不用 Scheduler | ||||
| //    @Bean | ||||
| //    public Scheduler scheduler() { | ||||
| //        return Mockito.mock(Scheduler.class); | ||||
| //    } | ||||
|     @Bean | ||||
|     public Scheduler scheduler() { | ||||
|         return Mockito.mock(Scheduler.class); | ||||
|     } | ||||
|  | ||||
| } | ||||
|   | ||||
| @@ -0,0 +1,29 @@ | ||||
| package cn.iocoder.dashboard.config; | ||||
|  | ||||
| import com.github.fppt.jedismock.RedisServer; | ||||
| import org.redisson.spring.starter.RedissonAutoConfiguration; | ||||
| import org.springframework.boot.autoconfigure.AutoConfigureBefore; | ||||
| import org.springframework.boot.autoconfigure.data.redis.RedisAutoConfiguration; | ||||
| import org.springframework.boot.autoconfigure.data.redis.RedisProperties; | ||||
| import org.springframework.boot.context.properties.EnableConfigurationProperties; | ||||
| import org.springframework.context.annotation.Bean; | ||||
| import org.springframework.context.annotation.Configuration; | ||||
| import org.springframework.context.annotation.Lazy; | ||||
|  | ||||
| import java.io.IOException; | ||||
|  | ||||
| @Configuration | ||||
| @Lazy(false) // 禁用懒加载,因为需要保证 Redis Server 必须先启动 | ||||
| @EnableConfigurationProperties(RedisProperties.class) | ||||
| @AutoConfigureBefore({RedisAutoConfiguration.class, RedissonAutoConfiguration.class}) // 在 Redis 自动配置前,进行初始化 | ||||
| public class RedisTestConfiguration { | ||||
|  | ||||
|     /** | ||||
|      * 创建模拟的 Redis Server 服务器 | ||||
|      */ | ||||
|     @Bean(initMethod = "start", destroyMethod = "stop") | ||||
|     public RedisServer redisServer(RedisProperties properties) throws IOException { | ||||
|         return new RedisServer(properties.getPort()); | ||||
|     } | ||||
|  | ||||
| } | ||||
| @@ -1,15 +1,14 @@ | ||||
| package cn.iocoder.dashboard.framework.quartz.core.scheduler; | ||||
|  | ||||
| import cn.hutool.core.util.StrUtil; | ||||
| import cn.iocoder.dashboard.BaseSpringBootUnitTest; | ||||
| import cn.iocoder.dashboard.modules.system.job.auth.SysUserSessionTimeoutJob; | ||||
| import org.junit.jupiter.api.Test; | ||||
| import org.quartz.SchedulerException; | ||||
| import org.springframework.boot.test.context.SpringBootTest; | ||||
|  | ||||
| import javax.annotation.Resource; | ||||
|  | ||||
| @SpringBootTest | ||||
| class SchedulerManagerTest { | ||||
| class SchedulerManagerTest extends BaseSpringBootUnitTest { | ||||
|  | ||||
|     @Resource | ||||
|     private SchedulerManager schedulerManager; | ||||
|   | ||||
| @@ -1,5 +1,6 @@ | ||||
| package cn.iocoder.dashboard.modules.infra.service.config; | ||||
|  | ||||
| import cn.iocoder.dashboard.BaseSpringBootUnitTest; | ||||
| import cn.iocoder.dashboard.common.exception.ServiceException; | ||||
| import cn.iocoder.dashboard.modules.infra.controller.config.vo.InfConfigCreateReqVO; | ||||
| import cn.iocoder.dashboard.modules.infra.dal.dataobject.config.InfConfigDO; | ||||
| @@ -9,9 +10,7 @@ import cn.iocoder.dashboard.modules.infra.mq.producer.config.InfConfigProducer; | ||||
| import cn.iocoder.dashboard.modules.infra.service.config.impl.InfConfigServiceImpl; | ||||
| import cn.iocoder.dashboard.util.AssertUtils; | ||||
| import org.junit.jupiter.api.Test; | ||||
| import org.springframework.boot.test.context.SpringBootTest; | ||||
| import org.springframework.boot.test.mock.mockito.MockBean; | ||||
| import org.springframework.test.context.ActiveProfiles; | ||||
| import org.springframework.test.context.jdbc.Sql; | ||||
|  | ||||
| import javax.annotation.Resource; | ||||
| @@ -21,10 +20,7 @@ import static org.junit.jupiter.api.Assertions.*; | ||||
| import static org.mockito.Mockito.times; | ||||
| import static org.mockito.Mockito.verify; | ||||
|  | ||||
| @SpringBootTest | ||||
| @ActiveProfiles("unit-test") | ||||
| @Sql(scripts = "/sql/clean.sql", executionPhase = Sql.ExecutionPhase.AFTER_TEST_METHOD) | ||||
| public class InfConfigServiceImplTest { | ||||
| public class InfConfigServiceImplTest extends BaseSpringBootUnitTest { | ||||
|  | ||||
|     @Resource | ||||
|     private InfConfigServiceImpl configService; | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| package cn.iocoder.dashboard.modules.tool.dal.mysql.coegen; | ||||
| package cn.iocoder.dashboard.modules.tool.dal.mysql.codegen; | ||||
| 
 | ||||
| import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolSchemaColumnDO; | ||||
| import org.junit.jupiter.api.Test; | ||||
| @@ -1,4 +1,4 @@ | ||||
| package cn.iocoder.dashboard.modules.tool.dal.mysql.coegen; | ||||
| package cn.iocoder.dashboard.modules.tool.dal.mysql.codegen; | ||||
| 
 | ||||
| import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolSchemaTableDO; | ||||
| import org.junit.jupiter.api.Test; | ||||
| @@ -2,8 +2,8 @@ package cn.iocoder.dashboard.modules.tool.service.codegen.impl; | ||||
|  | ||||
| import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolCodegenColumnDO; | ||||
| import cn.iocoder.dashboard.modules.tool.dal.dataobject.codegen.ToolCodegenTableDO; | ||||
| import cn.iocoder.dashboard.modules.tool.dal.mysql.coegen.ToolCodegenColumnMapper; | ||||
| import cn.iocoder.dashboard.modules.tool.dal.mysql.coegen.ToolCodegenTableMapper; | ||||
| import cn.iocoder.dashboard.modules.tool.dal.mysql.codegen.ToolCodegenColumnMapper; | ||||
| import cn.iocoder.dashboard.modules.tool.dal.mysql.codegen.ToolCodegenTableMapper; | ||||
| import org.junit.jupiter.api.Test; | ||||
| import org.springframework.boot.test.context.SpringBootTest; | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 YunaiV
					YunaiV