diff --git a/recaf-core/src/testFixtures/java/software/coley/recaf/test/TestBase.java b/recaf-core/src/testFixtures/java/software/coley/recaf/test/TestBase.java index 75a76d8ae..33d8327aa 100644 --- a/recaf-core/src/testFixtures/java/software/coley/recaf/test/TestBase.java +++ b/recaf-core/src/testFixtures/java/software/coley/recaf/test/TestBase.java @@ -5,9 +5,8 @@ import org.junit.jupiter.api.parallel.Isolated; import software.coley.recaf.Bootstrap; import software.coley.recaf.Recaf; -import software.coley.recaf.services.plugin.PluginManagerConfig; -import software.coley.recaf.util.TestEnvironment; import software.coley.recaf.services.workspace.WorkspaceManager; +import software.coley.recaf.util.TestEnvironment; import java.lang.annotation.Annotation; @@ -17,9 +16,17 @@ */ @Isolated public class TestBase { - protected static final Recaf recaf = Bootstrap.get(); + protected static final Recaf recaf; protected static WorkspaceManager workspaceManager; + static { + Bootstrap.setWeldConsumer(w -> w.addPackage(true, TestConfigSetup.class)); + recaf = Bootstrap.get(); + + // Trigger the test-default bean to load + recaf.get(TestConfigSetup.class).configure(); + } + @BeforeAll public static void setupWorkspaceManager() { TestEnvironment.initTestEnv(); diff --git a/recaf-core/src/testFixtures/java/software/coley/recaf/test/TestConfigSetup.java b/recaf-core/src/testFixtures/java/software/coley/recaf/test/TestConfigSetup.java new file mode 100644 index 000000000..d822f9100 --- /dev/null +++ b/recaf-core/src/testFixtures/java/software/coley/recaf/test/TestConfigSetup.java @@ -0,0 +1,26 @@ +package software.coley.recaf.test; + +import jakarta.enterprise.context.ApplicationScoped; +import jakarta.inject.Inject; +import software.coley.recaf.services.compile.JavacCompilerConfig; + +/** + * Configures default values for the test environment. Some of our values that are best enabled by default + * for users aren't the best for testing the 'base case' of things during test development. + * + * @author Matt Coley + */ +@ApplicationScoped +public class TestConfigSetup { + private final JavacCompilerConfig javac; + + @Inject + public TestConfigSetup(JavacCompilerConfig javac) { + this.javac = javac; + } + + public void configure() { + // Do not generate phantoms by default when using the compiler service + javac.getGeneratePhantoms().setValue(false); + } +}