Skip to content

Commit

Permalink
Migrate from JUnit 4 to JUnit 5
Browse files Browse the repository at this point in the history
  • Loading branch information
Nezisi committed Jun 3, 2023
1 parent 5936874 commit abaecd4
Show file tree
Hide file tree
Showing 36 changed files with 802 additions and 820 deletions.
Expand Up @@ -4,14 +4,14 @@

package play.cache.caffeine;

import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.core.IsEqual.equalTo;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertTrue;

import com.github.benmanes.caffeine.cache.Caffeine;
import java.util.*;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.TimeUnit;
import org.junit.Test;
import org.junit.jupiter.api.Test;
import org.slf4j.LoggerFactory;

public class NamedCaffeineCacheSpec {
Expand All @@ -37,7 +37,7 @@ public void getAll_shouldReturnAllValuesWithTheGivenKeys() throws Exception {
expectedMap.put(key1, value1);
expectedMap.put(key2, value2);

assertThat(resultMap, equalTo(expectedMap));
assertEquals(expectedMap, resultMap);
}

@Test
Expand All @@ -59,7 +59,7 @@ public void getAll_shouldCreateTheMissingValuesAndReturnAllWithTheGivenKeys() th
expectedMap.put(key1, value1);
expectedMap.put(key2, value2);

assertThat(resultMap, equalTo(expectedMap));
assertEquals(expectedMap, resultMap);
}

@Test
Expand All @@ -82,18 +82,18 @@ public void getAll_shouldNotReplaceAlreadyExistingValues() throws Exception {
expectedMap.put(key1, value1);
expectedMap.put(key2, value2);

assertThat(resultMap, equalTo(expectedMap));
assertEquals(expectedMap, resultMap);
}

@Test()
public void getAll_shouldReturnFailedFutureIfMappingFunctionIsCompletedExceptionally()
throws Exception {
public void getAll_shouldReturnFailedFutureIfMappingFunctionIsCompletedExceptionally() {
LoggerFactory.getLogger(NamedCaffeineCache.class);
RuntimeException testException = new RuntimeException("test exception");
CompletableFuture<Map<String, String>> future = new CompletableFuture<>();
future.completeExceptionally(testException);
CompletableFuture<Map<String, String>> resultFuture =
cache.getAll(new HashSet<>(Arrays.asList("key1")), (missingKeys, executor) -> future);
assertThat(resultFuture.isCompletedExceptionally(), equalTo(true));
cache.getAll(new HashSet<>(List.of("key1")), (missingKeys, executor) -> future);

assertTrue(resultFuture.isCompletedExceptionally());
}
}
Expand Up @@ -4,10 +4,7 @@

package play.inject.guice;

import static org.hamcrest.CoreMatchers.instanceOf;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.junit.Assert.assertThrows;
import static org.junit.jupiter.api.Assertions.*;
import static play.inject.Bindings.bind;

import com.google.common.collect.ImmutableList;
Expand All @@ -17,7 +14,7 @@
import com.typesafe.config.ConfigFactory;
import javax.inject.Inject;
import javax.inject.Provider;
import org.junit.Test;
import org.junit.jupiter.api.Test;
import play.Application;
import play.api.inject.guice.GuiceApplicationBuilderSpec;
import play.inject.Injector;
Expand All @@ -33,8 +30,8 @@ public void addBindings() {
.bindings(bind(B.class).to(B1.class))
.injector();

assertThat(injector.instanceOf(A.class), instanceOf(A1.class));
assertThat(injector.instanceOf(B.class), instanceOf(B1.class));
assertInstanceOf(A1.class, injector.instanceOf(A.class));
assertInstanceOf(B1.class, injector.instanceOf(B.class));
}

@Test
Expand All @@ -56,16 +53,16 @@ public void overrideBindings() {
.injector()
.instanceOf(Application.class);

assertThat(app.config().getInt("a"), is(1));
assertThat(app.config().getInt("b"), is(2));
assertThat(app.injector().instanceOf(A.class), instanceOf(A2.class));
assertEquals(1, app.config().getInt("a"));
assertEquals(2, app.config().getInt("b"));
assertInstanceOf(A2.class, app.injector().instanceOf(A.class));
}

@Test
public void disableModules() {
Injector injector =
new GuiceApplicationBuilder().bindings(new AModule()).disable(AModule.class).injector();
assertThrows(ConfigurationException.class, () -> injector.instanceOf(A.class));
assertThrowsExactly(ConfigurationException.class, () -> injector.instanceOf(A.class));
}

@Test
Expand All @@ -76,7 +73,7 @@ public void setInitialConfigurationLoader() {
.withConfigLoader(env -> extra.withFallback(ConfigFactory.load(env.classLoader())))
.build();

assertThat(app.config().getInt("a"), is(1));
assertEquals(1, app.config().getInt("a"));
}

@Test
Expand All @@ -93,7 +90,7 @@ public void setModuleLoader() {
Guiceable.bindings(bind(A.class).to(A1.class))))
.injector();

assertThat(injector.instanceOf(A.class), instanceOf(A1.class));
assertInstanceOf(A1.class, injector.instanceOf(A.class));
}

@Test
Expand All @@ -108,7 +105,7 @@ public void setLoadedModulesDirectly() {
Guiceable.bindings(bind(A.class).to(A1.class)))
.injector();

assertThat(injector.instanceOf(A.class), instanceOf(A1.class));
assertInstanceOf(A1.class, injector.instanceOf(A.class));
}

public static interface A {}
Expand Down
Expand Up @@ -4,16 +4,14 @@

package play.inject.guice;

import static org.hamcrest.CoreMatchers.equalTo;
import static org.hamcrest.CoreMatchers.instanceOf;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertInstanceOf;
import static play.inject.Bindings.bind;

import com.typesafe.config.Config;
import com.typesafe.config.ConfigFactory;
import java.util.Properties;
import org.junit.Test;
import org.junit.jupiter.api.Test;
import play.Application;
import play.ApplicationLoader;
import play.Environment;
Expand All @@ -31,8 +29,8 @@ public void additionalModulesAndBindings() {
ApplicationLoader loader = new GuiceApplicationLoader(builder);
Application app = loader.load(fakeContext());

assertThat(app.injector().instanceOf(A.class), instanceOf(A1.class));
assertThat(app.injector().instanceOf(B.class), instanceOf(B1.class));
assertInstanceOf(A1.class, app.injector().instanceOf(A.class));
assertInstanceOf(B1.class, app.injector().instanceOf(B.class));
}

@Test
Expand All @@ -50,7 +48,7 @@ public GuiceApplicationBuilder builder(Context context) {
};
Application app = loader.load(fakeContext());

assertThat(app.config().getInt("a"), is(1));
assertEquals(1, app.config().getInt("a"));
}

@Test
Expand All @@ -67,7 +65,7 @@ public void usingAdditionalConfiguration() {
ApplicationLoader.create(Environment.simple()).withConfig(config);
Application app = loader.load(context);

assertThat(app.asScala().httpConfiguration().context(), equalTo("/tests"));
assertEquals("/tests", app.asScala().httpConfiguration().context());
}

public interface A {}
Expand Down
Expand Up @@ -4,9 +4,9 @@

package play.inject.guice;

import static org.hamcrest.CoreMatchers.*;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.junit.Assert.assertThrows;
import static org.junit.jupiter.api.Assertions.*;
import static org.junit.jupiter.api.Named.named;
import static org.junit.jupiter.params.provider.Arguments.arguments;
import static play.inject.Bindings.bind;

import com.google.common.collect.ImmutableMap;
Expand All @@ -18,7 +18,11 @@
import java.net.URLClassLoader;
import java.util.Collections;
import java.util.List;
import org.junit.Test;
import java.util.stream.Stream;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.Arguments;
import org.junit.jupiter.params.provider.MethodSource;
import play.Environment;
import play.Mode;
import play.inject.Binding;
Expand All @@ -28,17 +32,15 @@

public class GuiceInjectorBuilderTest {

@Test
public void setEnvironmentWithScala() {
setEnvironment(new EnvironmentModule());
static Stream<Arguments> environmentTargets() {
return Stream.of(
arguments(named("Scala Env", new EnvironmentModule())),
arguments(named("Java Env", new JavaEnvironmentModule())));
}

@Test
public void setEnvironmentWithJava() {
setEnvironment(new JavaEnvironmentModule());
}

private void setEnvironment(play.api.inject.Module environmentModule) {
@ParameterizedTest
@MethodSource("environmentTargets")
void setEnvironment(play.api.inject.Module environmentModule) {
ClassLoader classLoader = new URLClassLoader(new URL[0]);
Environment env =
new GuiceInjectorBuilder()
Expand All @@ -47,22 +49,14 @@ private void setEnvironment(play.api.inject.Module environmentModule) {
.injector()
.instanceOf(Environment.class);

assertThat(env.rootPath(), equalTo(new File("test")));
assertThat(env.mode(), equalTo(Mode.DEV));
assertThat(env.classLoader(), sameInstance(classLoader));
}

@Test
public void setEnvironmentValuesWithScala() {
setEnvironmentValues(new EnvironmentModule());
}

@Test
public void setEnvironmentValuesWithJava() {
setEnvironmentValues(new JavaEnvironmentModule());
assertEquals(new File("test"), env.rootPath());
assertEquals(Mode.DEV, env.mode());
assertInstanceOf(classLoader.getClass(), env.classLoader());
}

private void setEnvironmentValues(play.api.inject.Module environmentModule) {
@ParameterizedTest
@MethodSource("environmentTargets")
void setEnvironmentValues(play.api.inject.Module environmentModule) {
ClassLoader classLoader = new URLClassLoader(new URL[0]);
Environment env =
new GuiceInjectorBuilder()
Expand All @@ -73,22 +67,20 @@ private void setEnvironmentValues(play.api.inject.Module environmentModule) {
.injector()
.instanceOf(Environment.class);

assertThat(env.rootPath(), equalTo(new File("test")));
assertThat(env.mode(), equalTo(Mode.DEV));
assertThat(env.classLoader(), sameInstance(classLoader));
assertEquals(new File("test"), env.rootPath());
assertEquals(Mode.DEV, env.mode());
assertInstanceOf(classLoader.getClass(), env.classLoader());
}

@Test
public void setConfigurationWithScala() {
setConfiguration(new ConfigurationModule());
}

@Test
public void setConfigurationWithJava() {
setConfiguration(new JavaConfigurationModule());
static Stream<Arguments> configurationTargets() {
return Stream.of(
arguments(named("Java", new JavaConfigurationModule())),
arguments(named("Scala", new ConfigurationModule())));
}

private void setConfiguration(play.api.inject.Module configurationModule) {
@ParameterizedTest
@MethodSource("configurationTargets")
void setConfiguration(play.api.inject.Module configurationModule) {
Config conf =
new GuiceInjectorBuilder()
.configure(ConfigFactory.parseMap(ImmutableMap.of("a", 1)))
Expand All @@ -100,27 +92,29 @@ private void setConfiguration(play.api.inject.Module configurationModule) {
.injector()
.instanceOf(Config.class);

assertThat(conf.root().keySet().size(), is(4));
assertThat(conf.root().keySet(), hasItems("a", "b", "c", "d"));
assertEquals(4, conf.root().keySet().size());
assertTrue(conf.root().keySet().containsAll(List.of("a", "b", "c", "d")));

assertThat(conf.getInt("a"), is(1));
assertThat(conf.getInt("b"), is(2));
assertThat(conf.getInt("c"), is(3));
assertThat(conf.getInt("d.1"), is(4));
assertThat(conf.getInt("d.2"), is(5));
assertEquals(1, conf.getInt("a"));
assertEquals(2, conf.getInt("b"));
assertEquals(3, conf.getInt("c"));
assertEquals(4, conf.getInt("d.1"));
assertEquals(5, conf.getInt("d.2"));
}

@Test
public void supportVariousBindingsWithScala() {
supportVariousBindings(new EnvironmentModule(), new ConfigurationModule());
}

@Test
public void supportVariousBindingsWithJava() {
supportVariousBindings(new JavaEnvironmentModule(), new JavaConfigurationModule());
static Stream<Arguments> bindingTargets() {
return Stream.of(
arguments(
named("Scala Env", new EnvironmentModule()),
named("Scala Config", new ConfigurationModule())),
arguments(
named("Java Env", new JavaEnvironmentModule()),
named("Java Config", new JavaConfigurationModule())));
}

private void supportVariousBindings(
@ParameterizedTest
@MethodSource("bindingTargets")
void supportVariousBindings(
play.api.inject.Module environmentModule, play.api.inject.Module configurationModule) {
Injector injector =
new GuiceInjectorBuilder()
Expand All @@ -129,12 +123,12 @@ private void supportVariousBindings(
.bindings(bind(C.class).to(C1.class), bind(D.class).toInstance(new D1()))
.injector();

assertThat(injector.instanceOf(Environment.class), instanceOf(Environment.class));
assertThat(injector.instanceOf(Config.class), instanceOf(Config.class));
assertThat(injector.instanceOf(A.class), instanceOf(A1.class));
assertThat(injector.instanceOf(B.class), instanceOf(B1.class));
assertThat(injector.instanceOf(C.class), instanceOf(C1.class));
assertThat(injector.instanceOf(D.class), instanceOf(D1.class));
assertInstanceOf(Environment.class, injector.instanceOf(Environment.class));
assertInstanceOf(Config.class, injector.instanceOf(Config.class));
assertInstanceOf(A1.class, injector.instanceOf(A.class));
assertInstanceOf(B1.class, injector.instanceOf(B.class));
assertInstanceOf(C1.class, injector.instanceOf(C.class));
assertInstanceOf(D1.class, injector.instanceOf(D.class));
}

@Test
Expand All @@ -147,8 +141,8 @@ public void overrideBindings() {
.overrides(bind(B.class).to(B2.class))
.injector();

assertThat(injector.instanceOf(A.class), instanceOf(A2.class));
assertThat(injector.instanceOf(B.class), instanceOf(B2.class));
assertInstanceOf(A2.class, injector.instanceOf(A.class));
assertInstanceOf(B2.class, injector.instanceOf(B.class));
}

@Test
Expand All @@ -160,8 +154,8 @@ public void disableModules() {
.disable(AModule.class, CModule.class) // C won't be disabled
.injector();

assertThat(injector.instanceOf(B.class), instanceOf(B1.class));
assertThat(injector.instanceOf(C.class), instanceOf(C1.class));
assertInstanceOf(B1.class, injector.instanceOf(B.class));
assertInstanceOf(C1.class, injector.instanceOf(C.class));
assertThrows(ConfigurationException.class, () -> injector.instanceOf(A.class));
}

Expand Down

0 comments on commit abaecd4

Please sign in to comment.