From baf1848dc59dc0676c04a91f7542472a4495b594 Mon Sep 17 00:00:00 2001 From: Nikita Koksharov Date: Thu, 25 Oct 2018 16:27:37 +0300 Subject: [PATCH] test fixed --- .../spring/cache/RedissonSpringCacheTest.java | 35 +++++++++++++------ 1 file changed, 24 insertions(+), 11 deletions(-) diff --git a/redisson/src/test/java/org/redisson/spring/cache/RedissonSpringCacheTest.java b/redisson/src/test/java/org/redisson/spring/cache/RedissonSpringCacheTest.java index 28e6b6bc5..17dd9b5be 100644 --- a/redisson/src/test/java/org/redisson/spring/cache/RedissonSpringCacheTest.java +++ b/redisson/src/test/java/org/redisson/spring/cache/RedissonSpringCacheTest.java @@ -6,21 +6,24 @@ import java.io.IOException; import java.util.Arrays; import java.util.HashMap; import java.util.Map; +import java.util.stream.Collectors; +import java.util.stream.StreamSupport; import org.junit.AfterClass; +import org.junit.Before; +import org.junit.BeforeClass; import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.Parameterized; import org.redisson.BaseTest; import org.redisson.RedisRunner; -import org.redisson.RedisRunner.RedisProcess; +import org.redisson.RedisRunner.FailedToStartRedisException; import org.redisson.api.RedissonClient; import org.springframework.cache.CacheManager; import org.springframework.cache.annotation.CacheEvict; import org.springframework.cache.annotation.CachePut; import org.springframework.cache.annotation.Cacheable; import org.springframework.cache.annotation.EnableCaching; -import org.springframework.context.ConfigurableApplicationContext; import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.ComponentScan; @@ -119,25 +122,35 @@ public class RedissonSpringCacheTest { } - private static RedisProcess p; + private static Map, AnnotationConfigApplicationContext> contexts; @Parameterized.Parameters(name = "{index} - {0}") - public static Iterable data() throws IOException, InterruptedException { - if (p == null) { - p = RedisRunner.startDefaultRedisServerInstance(); - } - return Arrays.asList(new Object[][]{ - {new AnnotationConfigApplicationContext(Application.class)}, - {new AnnotationConfigApplicationContext(JsonConfigApplication.class)} + public static Iterable[]> data() throws IOException, InterruptedException { + return Arrays.asList(new Class[][]{ + {Application.class}, + {JsonConfigApplication.class} }); } @Parameterized.Parameter(0) + public Class contextClass; public AnnotationConfigApplicationContext context; + + @Before + public void dbefore() { + context = contexts.get(contextClass); + } + + @BeforeClass + public static void before() throws FailedToStartRedisException, IOException, InterruptedException { + RedisRunner.startDefaultRedisServerInstance(); + contexts = StreamSupport.stream(RedissonSpringCacheTest.data().spliterator(), false) + .collect(Collectors.toMap(e -> e[0], e -> new AnnotationConfigApplicationContext(e[0]))); + } @AfterClass public static void after() throws InterruptedException, IOException { - RedissonSpringCacheTest.data().forEach(e -> ((ConfigurableApplicationContext) e[0]).close()); + contexts.values().forEach(e -> e.close()); RedisRunner.shutDownDefaultRedisServerInstance(); }