diff options
author | Thibault Gagnaux <tgagnaux@gmail.com> | 2021-12-10 09:31:44 +0100 |
---|---|---|
committer | Thibault Gagnaux <tgagnaux@gmail.com> | 2021-12-10 09:31:44 +0100 |
commit | 815cc93c870a2a857de8c5dd1dcc8c9aa5b4f2a8 (patch) | |
tree | f0d59e556be038c22caada3d93bc4006d438d413 /src/functionalTest | |
parent | 401e4b8752d873465ac197ff1cc7ae3484608ddf (diff) | |
download | frege-gradle-plugin-815cc93c870a2a857de8c5dd1dcc8c9aa5b4f2a8.tar.gz frege-gradle-plugin-815cc93c870a2a857de8c5dd1dcc8c9aa5b4f2a8.tar.bz2 frege-gradle-plugin-815cc93c870a2a857de8c5dd1dcc8c9aa5b4f2a8.zip |
refactor: adds an internal `depsFrege` task and simplifes `replFrege`
- `depsFregeTask`: only internal use for the vscode plugin to automate the
repl code lens.
- `replFregeTask`: simplified to only print the command to start the repl because
starting and interacting through a console is not gradle's core strength. See
https://github.com/tricktron/frege-gradle-plugin/issues/11.
Diffstat (limited to 'src/functionalTest')
-rw-r--r-- | src/functionalTest/java/ch/fhnw/thga/gradleplugins/FregePluginFunctionalTest.java | 33 |
1 files changed, 27 insertions, 6 deletions
diff --git a/src/functionalTest/java/ch/fhnw/thga/gradleplugins/FregePluginFunctionalTest.java b/src/functionalTest/java/ch/fhnw/thga/gradleplugins/FregePluginFunctionalTest.java index cf6dc70..f94469c 100644 --- a/src/functionalTest/java/ch/fhnw/thga/gradleplugins/FregePluginFunctionalTest.java +++ b/src/functionalTest/java/ch/fhnw/thga/gradleplugins/FregePluginFunctionalTest.java @@ -4,9 +4,10 @@ import static ch.fhnw.thga.gradleplugins.FregeExtension.DEFAULT_DOWNLOAD_DIRECTO import static ch.fhnw.thga.gradleplugins.FregePlugin.COMPILE_FREGE_TASK_NAME; import static ch.fhnw.thga.gradleplugins.FregePlugin.FREGE_EXTENSION_NAME; import static ch.fhnw.thga.gradleplugins.FregePlugin.FREGE_PLUGIN_ID; -import static ch.fhnw.thga.gradleplugins.FregePlugin.REPL_FREGE_TASK_NAME; +import static ch.fhnw.thga.gradleplugins.FregePlugin.DEPS_FREGE_TASK_NAME; import static ch.fhnw.thga.gradleplugins.FregePlugin.RUN_FREGE_TASK_NAME; import static ch.fhnw.thga.gradleplugins.FregePlugin.SETUP_FREGE_TASK_NAME; +import static ch.fhnw.thga.gradleplugins.FregePlugin.REPL_FREGE_TASK_NAME; import static ch.fhnw.thga.gradleplugins.GradleBuildFileConversionTest.createPluginsSection; import static org.gradle.testkit.runner.TaskOutcome.FAILED; import static org.gradle.testkit.runner.TaskOutcome.FROM_CACHE; @@ -39,6 +40,8 @@ import org.junit.jupiter.api.TestInstance; import org.junit.jupiter.api.TestInstance.Lifecycle; import org.junit.jupiter.api.io.TempDir; +import ch.fhnw.thga.gradleplugins.internal.DependencyFregeTask; + @TestInstance(Lifecycle.PER_CLASS) public class FregePluginFunctionalTest { private static final String NEW_LINE = System.lineSeparator(); @@ -394,16 +397,16 @@ public class FregePluginFunctionalTest { @Nested @TestInstance(Lifecycle.PER_CLASS) @IndicativeSentencesGeneration(separator = " -> ", generator = DisplayNameGenerator.ReplaceUnderscores.class) - class Repl_frege_task_works { + class Deps_frege_task_works { @Test void given_minimal_build_file_config() throws Exception { String minimalBuildFileConfig = createFregeSection( fregeBuilder.version("'3.25.84'").release("'3.25alpha'").build()); appendToFile(buildFile, minimalBuildFileConfig); - BuildResult result = runGradleTask(REPL_FREGE_TASK_NAME, "-q"); - assertTrue(project.getTasks().getByName(REPL_FREGE_TASK_NAME) instanceof ReplFregeTask); - assertEquals(SUCCESS, result.task(":" + REPL_FREGE_TASK_NAME).getOutcome()); + BuildResult result = runGradleTask(DEPS_FREGE_TASK_NAME, "-q"); + assertTrue(project.getTasks().getByName(DEPS_FREGE_TASK_NAME) instanceof DependencyFregeTask); + assertEquals(SUCCESS, result.task(":" + DEPS_FREGE_TASK_NAME).getOutcome()); assertTrue(result.getOutput().contains("frege3.25.84.jar")); } @@ -415,11 +418,29 @@ public class FregePluginFunctionalTest { appendToFile(buildFile, String.join("\n", "repositories {", "mavenCentral()", "}")); appendToFile(buildFile, String.join("\n", "dependencies {", "implementation group: 'org.json', name: 'json', version: '20211205'", "}")); + BuildResult result = runGradleTask(DEPS_FREGE_TASK_NAME, "-q"); + assertTrue(project.getTasks().getByName(DEPS_FREGE_TASK_NAME) instanceof DependencyFregeTask); + assertEquals(SUCCESS, result.task(":" + DEPS_FREGE_TASK_NAME).getOutcome()); + assertTrue(result.getOutput().contains("frege3.25.84.jar")); + assertTrue(result.getOutput().contains("org.json")); + } + } + + @Nested + @TestInstance(Lifecycle.PER_CLASS) + @IndicativeSentencesGeneration(separator = " -> ", generator = DisplayNameGenerator.ReplaceUnderscores.class) + class Repl_frege_task_works { + @Test + void given_minimal_build_file_config() throws Exception { + String minimalBuildFileConfig = createFregeSection( + fregeBuilder.version("'3.25.84'").release("'3.25alpha'").build()); + appendToFile(buildFile, minimalBuildFileConfig); + BuildResult result = runGradleTask(REPL_FREGE_TASK_NAME, "-q"); assertTrue(project.getTasks().getByName(REPL_FREGE_TASK_NAME) instanceof ReplFregeTask); assertEquals(SUCCESS, result.task(":" + REPL_FREGE_TASK_NAME).getOutcome()); + assertTrue(result.getOutput().contains("java -cp")); assertTrue(result.getOutput().contains("frege3.25.84.jar")); - assertTrue(result.getOutput().contains("org.json")); } } }
\ No newline at end of file |