From 4d34143bd6c35fa5d0c00d3f105bc88d0904f27f Mon Sep 17 00:00:00 2001 From: Ashley <73482956+ascopes@users.noreply.github.com> Date: Thu, 2 Feb 2023 08:38:20 +0000 Subject: [PATCH 1/3] Simplify VersionStrategy class Signed-off-by: Ashley <73482956+ascopes@users.noreply.github.com> --- .../ascopes/jct/junit/VersionStrategy.java | 27 +++++++++---------- 1 file changed, 12 insertions(+), 15 deletions(-) diff --git a/java-compiler-testing/src/main/java/io/github/ascopes/jct/junit/VersionStrategy.java b/java-compiler-testing/src/main/java/io/github/ascopes/jct/junit/VersionStrategy.java index 570082620..82d824069 100644 --- a/java-compiler-testing/src/main/java/io/github/ascopes/jct/junit/VersionStrategy.java +++ b/java-compiler-testing/src/main/java/io/github/ascopes/jct/junit/VersionStrategy.java @@ -16,7 +16,6 @@ package io.github.ascopes.jct.junit; import io.github.ascopes.jct.compilers.JctCompiler; -import java.util.function.BiConsumer; import javax.annotation.concurrent.ThreadSafe; import org.apiguardian.api.API; import org.apiguardian.api.API.Status; @@ -35,8 +34,8 @@ public enum VersionStrategy { * Set the {@link JctCompiler#release release}. */ RELEASE( - JctCompiler::release, (compiler, version) -> compiler + .release(version) .name(compiler.getName() + " (release = Java " + version + ")") ), @@ -44,8 +43,8 @@ public enum VersionStrategy { * Set the {@link JctCompiler#source} source}. */ SOURCE( - JctCompiler::source, (compiler, version) -> compiler + .source(version) .name(compiler.getName() + " (source = Java " + version + ")") ), @@ -53,8 +52,8 @@ public enum VersionStrategy { * Set the {@link JctCompiler#target} target}. */ TARGET( - JctCompiler::target, (compiler, version) -> compiler + .target(version) .name(compiler.getName() + " (target = Java " + version + ")") ), @@ -64,20 +63,14 @@ public enum VersionStrategy { SOURCE_AND_TARGET( (compiler, version) -> compiler .source(version) - .target(version), - (compiler, version) -> compiler + .target(version) .name(compiler.getName() + " (source and target = Java " + version + ")") ); - private final BiConsumer, Integer> versionSetter; - private final BiConsumer, Integer> descriptionFormatter; + private final VersionConsumer versionSetter; - VersionStrategy( - BiConsumer, Integer> versionSetter, - BiConsumer, Integer> descriptionFormatter - ) { + VersionStrategy(VersionConsumer versionSetter) { this.versionSetter = versionSetter; - this.descriptionFormatter = descriptionFormatter; } /** @@ -87,7 +80,11 @@ public enum VersionStrategy { * @param version the version to set. */ public void configureCompiler(JctCompiler compiler, int version) { - versionSetter.accept(compiler, version); - descriptionFormatter.accept(compiler, version); + versionSetter.apply(compiler, version); + } + + @FunctionalInterface + private interface VersionConsumer { + void apply(JctCompiler compiler, int version; } } From cedec2bca23f8ef6dafdad66558da070f296b9fe Mon Sep 17 00:00:00 2001 From: Ashley <73482956+ascopes@users.noreply.github.com> Date: Thu, 2 Feb 2023 08:40:32 +0000 Subject: [PATCH 2/3] Update VersionStrategy.java Signed-off-by: Ashley <73482956+ascopes@users.noreply.github.com> --- .../main/java/io/github/ascopes/jct/junit/VersionStrategy.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java-compiler-testing/src/main/java/io/github/ascopes/jct/junit/VersionStrategy.java b/java-compiler-testing/src/main/java/io/github/ascopes/jct/junit/VersionStrategy.java index 82d824069..e75d234d0 100644 --- a/java-compiler-testing/src/main/java/io/github/ascopes/jct/junit/VersionStrategy.java +++ b/java-compiler-testing/src/main/java/io/github/ascopes/jct/junit/VersionStrategy.java @@ -85,6 +85,6 @@ public void configureCompiler(JctCompiler compiler, int version) { @FunctionalInterface private interface VersionConsumer { - void apply(JctCompiler compiler, int version; + void apply(JctCompiler compiler, int version); } } From 230f6c631da68e5ff5a37ef77f8b2e98ebbaafde Mon Sep 17 00:00:00 2001 From: Ashley <73482956+ascopes@users.noreply.github.com> Date: Fri, 3 Feb 2023 08:34:55 +0000 Subject: [PATCH 3/3] Update AbstractCompilersProviderTest.java Signed-off-by: Ashley <73482956+ascopes@users.noreply.github.com> --- .../jct/tests/unit/junit/AbstractCompilersProviderTest.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/java-compiler-testing/src/test/java/io/github/ascopes/jct/tests/unit/junit/AbstractCompilersProviderTest.java b/java-compiler-testing/src/test/java/io/github/ascopes/jct/tests/unit/junit/AbstractCompilersProviderTest.java index d45fb3805..a9e6ef2f5 100644 --- a/java-compiler-testing/src/test/java/io/github/ascopes/jct/tests/unit/junit/AbstractCompilersProviderTest.java +++ b/java-compiler-testing/src/test/java/io/github/ascopes/jct/tests/unit/junit/AbstractCompilersProviderTest.java @@ -39,6 +39,7 @@ import org.junit.jupiter.api.extension.ExtensionContext; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.CsvSource; +import org.mockito.Answers; import org.opentest4j.TestAbortedException; /** @@ -380,7 +381,9 @@ final void configureInternals( protected JctCompiler initializeNewCompiler() { return mockRaw(JctCompiler.class) .>upcastedTo() - .build(withSettings().name("mock compiler")); + .build(withSettings() + .name("mock compiler") + .defaultAnswer(Answers.RETURNS_SELF)); } @Override