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.
Original file line number Diff line number Diff line change
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());
}
}
Original file line number Diff line number Diff line change
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
Original file line number Diff line number Diff line change
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
Original file line number Diff line number Diff line change
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
Loading

0 comments on commit abaecd4

Please sign in to comment.