diff --git a/.idea/libraries/bld.xml b/.idea/libraries/bld.xml index 1d0172b..9f8c820 100644 --- a/.idea/libraries/bld.xml +++ b/.idea/libraries/bld.xml @@ -2,12 +2,12 @@ - + - + diff --git a/.idea/libraries/compile.xml b/.idea/libraries/compile.xml index 99cc0c0..9bd86aa 100644 --- a/.idea/libraries/compile.xml +++ b/.idea/libraries/compile.xml @@ -7,7 +7,7 @@ - - + + \ No newline at end of file diff --git a/.idea/libraries/runtime.xml b/.idea/libraries/runtime.xml index d4069f2..2ae5c4b 100644 --- a/.idea/libraries/runtime.xml +++ b/.idea/libraries/runtime.xml @@ -8,7 +8,7 @@ - - + + \ No newline at end of file diff --git a/.idea/libraries/test.xml b/.idea/libraries/test.xml index 57ed5ef..b80486a 100644 --- a/.idea/libraries/test.xml +++ b/.idea/libraries/test.xml @@ -8,7 +8,7 @@ - - + + \ No newline at end of file diff --git a/.vscode/settings.json b/.vscode/settings.json index 4c33beb..5b2667b 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -9,7 +9,7 @@ ], "java.configuration.updateBuildConfiguration": "automatic", "java.project.referencedLibraries": [ - "${HOME}/.bld/dist/bld-2.1.0.jar", + "${HOME}/.bld/dist/bld-2.0.1.jar", "lib/**/*.jar" ] } diff --git a/README.md b/README.md index 51c5c98..814dd4c 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ [![License](https://img.shields.io/badge/license-Apache%20License%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0) [![Java](https://img.shields.io/badge/java-17%2B-blue)](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html) [![Kotlin](https://img.shields.io/badge/kotlin-1.9.24%2B-7f52ff.svg)](https://kotlinlang.org) -[![bld](https://img.shields.io/badge/2.1.0-FA9052?label=bld&labelColor=2392FF)](https://rife2.com/bld) +[![bld](https://img.shields.io/badge/2.0.1-FA9052?label=bld&labelColor=2392FF)](https://rife2.com/bld) [![Release](https://flat.badgen.net/maven/v/metadata-url/repo.rife2.com/releases/com/uwyn/rife2/bld-kotlin/maven-metadata.xml?color=blue)](https://repo.rife2.com/#/releases/com/uwyn/rife2/bld-kotlin) [![Snapshot](https://flat.badgen.net/maven/v/metadata-url/repo.rife2.com/snapshots/com/uwyn/rife2/bld-kotlin/maven-metadata.xml?label=snapshot)](https://repo.rife2.com/#/snapshots/com/uwyn/rife2/bld-kotlin) [![GitHub CI](https://github.com/rife2/bld-kotlin/actions/workflows/bld.yml/badge.svg)](https://github.com/rife2/bld-kotlin/actions/workflows/bld.yml) diff --git a/examples/.idea/libraries/bld.xml b/examples/.idea/libraries/bld.xml index 5c4010c..4dd96bf 100644 --- a/examples/.idea/libraries/bld.xml +++ b/examples/.idea/libraries/bld.xml @@ -2,12 +2,12 @@ - + - + diff --git a/examples/.idea/libraries/compile.xml b/examples/.idea/libraries/compile.xml index 99cc0c0..9bd86aa 100644 --- a/examples/.idea/libraries/compile.xml +++ b/examples/.idea/libraries/compile.xml @@ -7,7 +7,7 @@ - - + + \ No newline at end of file diff --git a/examples/.idea/libraries/runtime.xml b/examples/.idea/libraries/runtime.xml index d4069f2..2ae5c4b 100644 --- a/examples/.idea/libraries/runtime.xml +++ b/examples/.idea/libraries/runtime.xml @@ -8,7 +8,7 @@ - - + + \ No newline at end of file diff --git a/examples/.idea/libraries/test.xml b/examples/.idea/libraries/test.xml index 57ed5ef..b80486a 100644 --- a/examples/.idea/libraries/test.xml +++ b/examples/.idea/libraries/test.xml @@ -8,7 +8,7 @@ - - + + \ No newline at end of file diff --git a/examples/.vscode/settings.json b/examples/.vscode/settings.json index 4c33beb..5b2667b 100644 --- a/examples/.vscode/settings.json +++ b/examples/.vscode/settings.json @@ -9,7 +9,7 @@ ], "java.configuration.updateBuildConfiguration": "automatic", "java.project.referencedLibraries": [ - "${HOME}/.bld/dist/bld-2.1.0.jar", + "${HOME}/.bld/dist/bld-2.0.1.jar", "lib/**/*.jar" ] } diff --git a/examples/lib/bld/bld-wrapper.jar b/examples/lib/bld/bld-wrapper.jar index 7d4c215..a69c227 100644 Binary files a/examples/lib/bld/bld-wrapper.jar and b/examples/lib/bld/bld-wrapper.jar differ diff --git a/examples/lib/bld/bld-wrapper.properties b/examples/lib/bld/bld-wrapper.properties index 949f84f..930a601 100644 --- a/examples/lib/bld/bld-wrapper.properties +++ b/examples/lib/bld/bld-wrapper.properties @@ -1,7 +1,7 @@ bld.downloadExtensionJavadoc=false bld.downloadExtensionSources=true bld.downloadLocation= -bld.extension-kotlin=com.uwyn.rife2:bld-kotlin:1.0.1 +bld.extension-kotlin=com.uwyn.rife2:bld-kotlin:1.0.1-SNAPSHOT bld.repositories=MAVEN_LOCAL,MAVEN_CENTRAL,RIFE2_SNAPSHOTS,RIFE2_RELEASES bld.sourceDirectories= -bld.version=2.1.0 +bld.version=2.0.1 diff --git a/lib/bld/bld-wrapper.jar b/lib/bld/bld-wrapper.jar index 04827e4..23aa489 100644 Binary files a/lib/bld/bld-wrapper.jar and b/lib/bld/bld-wrapper.jar differ diff --git a/lib/bld/bld-wrapper.properties b/lib/bld/bld-wrapper.properties index 4f25cfc..01003fd 100644 --- a/lib/bld/bld-wrapper.properties +++ b/lib/bld/bld-wrapper.properties @@ -3,8 +3,8 @@ bld.downloadExtensionSources=true bld.downloadLocation= bld.javaOptions= bld.javacOptions= -bld.extension-exec=com.uwyn.rife2:bld-exec:1.0.3 -bld.extension-pmd=com.uwyn.rife2:bld-pmd:1.1.5 +bld.extension-exec=com.uwyn.rife2:bld-exec:1.0.2 +bld.extension-pmd=com.uwyn.rife2:bld-pmd:1.1.4 bld.repositories=MAVEN_CENTRAL,MAVEN_LOCAL,RIFE2_SNAPSHOTS,RIFE2_RELEASES bld.sourceDirectories= -bld.version=2.1.0 +bld.version=2.0.1 diff --git a/src/bld/java/rife/bld/extension/CompileKotlinOperationBuild.java b/src/bld/java/rife/bld/extension/CompileKotlinOperationBuild.java index 885e968..edead32 100644 --- a/src/bld/java/rife/bld/extension/CompileKotlinOperationBuild.java +++ b/src/bld/java/rife/bld/extension/CompileKotlinOperationBuild.java @@ -33,7 +33,7 @@ public class CompileKotlinOperationBuild extends Project { public CompileKotlinOperationBuild() { pkg = "rife.bld.extension"; name = "bld-kotlin"; - version = version(1, 0, 1); + version = version(1, 0, 1, "SNAPSHOT"); javaRelease = 17; @@ -43,7 +43,7 @@ public class CompileKotlinOperationBuild extends Project { repositories = List.of(MAVEN_LOCAL, MAVEN_CENTRAL, RIFE2_RELEASES, RIFE2_SNAPSHOTS); scope(compile) - .include(dependency("com.uwyn.rife2", "bld", version(2, 1, 0))); + .include(dependency("com.uwyn.rife2", "bld", version(2, 0, 1))); scope(test) .include(dependency("org.junit.jupiter", "junit-jupiter", version(5, 11, 0))) .include(dependency("org.junit.platform", "junit-platform-console-standalone", version(1, 11, 0))) diff --git a/src/main/java/rife/bld/extension/CompileKotlinOperation.java b/src/main/java/rife/bld/extension/CompileKotlinOperation.java index af0bc45..34f65f0 100644 --- a/src/main/java/rife/bld/extension/CompileKotlinOperation.java +++ b/src/main/java/rife/bld/extension/CompileKotlinOperation.java @@ -27,6 +27,7 @@ import java.io.File; import java.io.IOException; import java.nio.file.Path; import java.util.ArrayList; +import java.util.Arrays; import java.util.Collection; import java.util.List; import java.util.logging.Level; @@ -65,16 +66,6 @@ public class CompileKotlinOperation extends AbstractOperation directories) { mainSourceDirectories_.addAll(directories); @@ -563,37 +493,15 @@ public class CompileKotlinOperation extends AbstractOperation directories) { - return mainSourceDirectories(directories.stream().map(Path::toFile).toList()); - } - - /** - * Provides the main source directories that should be compiled. - * - * @param directories the main source directories - * @return this operation instance - * @see #mainSourceDirectories(String...) - */ - public CompileKotlinOperation mainSourceDirectoriesStrings(Collection directories) { - return mainSourceDirectories(directories.stream().map(File::new).toList()); - } - /** * Provides main source files that should be compiled. * * @param files one or more main source files * @return this operation instance - * @see #mainSourceFiles(Collection) */ public CompileKotlinOperation mainSourceFiles(File... files) { - return mainSourceFiles(List.of(files)); + mainSourceFiles_.addAll(List.of(files)); + return this; } /** @@ -601,21 +509,10 @@ public class CompileKotlinOperation extends AbstractOperation files) { mainSourceFiles_.addAll(files); @@ -639,39 +535,6 @@ public class CompileKotlinOperation extends AbstractOperation files) { - return mainSourceFiles(files.stream().map(Path::toFile).toList()); - } - - /** - * Provides the main source files that should be compiled. - * - * @param files the main source files - * @return this operation instance - * @see #mainSourceFiles(String...) - */ - public CompileKotlinOperation mainSourceFilesStrings(Collection files) { - return mainSourceFiles(files.stream().map(File::new).toList()); - } - - /** - * Provides compiler plugins. - * - * @param directory the directory containing the plugin JARs - * @param plugins one or more plugins - * @return this class instance - */ - public CompileKotlinOperation plugins(String directory, CompilerPlugin... plugins) { - return plugins(new File(directory), plugins); - } - /** * Provides compiler plugins. * @@ -679,7 +542,8 @@ public class CompileKotlinOperation extends AbstractOperation directories) { testSourceDirectories_.addAll(directories); @@ -809,37 +650,15 @@ public class CompileKotlinOperation extends AbstractOperation directories) { - return testSourceDirectories(directories.stream().map(Path::toFile).toList()); - } - - /** - * Provides the test source directories that should be compiled. - * - * @param directories the test source directories - * @return this operation instance - * @see #testSourceDirectories(String...) - */ - public CompileKotlinOperation testSourceDirectoriesStrings(Collection directories) { - return testSourceDirectories(directories.stream().map(File::new).toList()); - } - /** * Provides test source files that should be compiled. * * @param files one or more test source files * @return this operation instance - * @see #testSourceFiles(Collection) */ public CompileKotlinOperation testSourceFiles(File... files) { - return testSourceFiles(List.of(files)); + testSourceFiles_.addAll(List.of(files)); + return this; } /** @@ -847,21 +666,10 @@ public class CompileKotlinOperation extends AbstractOperation files) { testSourceFiles_.addAll(files); @@ -885,28 +692,6 @@ public class CompileKotlinOperation extends AbstractOperation files) { - return testSourceFiles(files.stream().map(Path::toFile).toList()); - } - - /** - * Provides the test source files that should be compiled. - * - * @param files the test source files - * @return this operation instance - * @see #testSourceFiles(String...) - */ - public CompileKotlinOperation testSourceFilesStrings(Collection files) { - return testSourceFiles(files.stream().map(File::new).toList()); - } - /** * Retrieves the working directory. * @@ -927,16 +712,6 @@ public class CompileKotlinOperation extends AbstractOperation files) { argFile_.addAll(files); @@ -174,7 +175,6 @@ public class CompileOptions { * * @param files one or more files * @return this operation instance - * @see #argFile(Collection) */ public CompileOptions argFile(File... files) { return argFile(List.of(files)); @@ -197,7 +197,6 @@ public class CompileOptions { * * @param files one or more files * @return this operation instance - * @see #argFilePaths(Collection) */ public CompileOptions argFile(Path... files) { return argFilePaths(List.of(files)); @@ -217,7 +216,7 @@ public class CompileOptions { * * @param files the compiler options files * @return this operation instance - * @see #argFile(Path...) + * @see #argFile(String...) */ public CompileOptions argFilePaths(Collection files) { return argFile(files.stream().map(Path::toFile).toList()); @@ -394,7 +393,6 @@ public class CompileOptions { * * @param paths one pr more paths * @return this operation instance - * @see #classpathStrings(Collection) */ public CompileOptions classpath(String... paths) { return classpathStrings(List.of(paths)); @@ -407,7 +405,6 @@ public class CompileOptions { * * @param paths one or more path * @return this operation instance - * @see #classpath(Collection) */ public CompileOptions classpath(File... paths) { return classpath(List.of(paths)); @@ -420,7 +417,6 @@ public class CompileOptions { * * @param paths one or more path * @return this operation instance - * @see #classpathPaths(Collection) */ public CompileOptions classpath(Path... paths) { return classpathPaths(List.of(paths)); @@ -433,7 +429,6 @@ public class CompileOptions { * * @param paths the search paths * @return this operation instance - * @see #classpath(File...) */ public CompileOptions classpath(Collection paths) { classpath_.addAll(paths); @@ -456,7 +451,6 @@ public class CompileOptions { * * @param paths one pr more paths * @return this operation instance - * @see #classpath(Path...) */ public CompileOptions classpathPaths(Collection paths) { return classpath(paths.stream().map(Path::toFile).toList()); @@ -469,7 +463,6 @@ public class CompileOptions { * * @param paths one pr more paths * @return this operation instance - * @see #classpath(String...) */ public CompileOptions classpathStrings(Collection paths) { return classpath(paths.stream().map(File::new).toList()); @@ -686,7 +679,8 @@ public class CompileOptions { * @see #jdkRelease(String) */ public CompileOptions jdkRelease(int version) { - return jdkRelease(String.valueOf(version)); + jdkRelease_ = String.valueOf(version); + return this; } /** @@ -727,7 +721,8 @@ public class CompileOptions { * @see #jvmTarget(String) */ public CompileOptions jvmTarget(int target) { - return jvmTarget(String.valueOf(target)); + jvmTarget_ = String.valueOf(target); + return this; } /** @@ -884,7 +879,8 @@ public class CompileOptions { * @return this operation instance */ public CompileOptions optIn(String... annotations) { - return optIn(List.of(annotations)); + optIn_.addAll(List.of(annotations)); + return this; } /** @@ -914,7 +910,8 @@ public class CompileOptions { * @return this operation instance */ public CompileOptions options(String... options) { - return options(List.of(options)); + options_.addAll(List.of(options)); + return this; } /** @@ -1025,7 +1022,8 @@ public class CompileOptions { * @return this operation instance */ public CompileOptions scriptTemplates(String... classNames) { - return scriptTemplates(List.of(classNames)); + scriptTemplates_.addAll(List.of(classNames)); + return this; } /** diff --git a/src/test/java/rife/bld/extension/CompileKotlinOperationTest.java b/src/test/java/rife/bld/extension/CompileKotlinOperationTest.java index 85c8cff..e2e6bd5 100644 --- a/src/test/java/rife/bld/extension/CompileKotlinOperationTest.java +++ b/src/test/java/rife/bld/extension/CompileKotlinOperationTest.java @@ -37,11 +37,7 @@ import java.util.logging.Logger; import static org.assertj.core.api.Assertions.assertThat; -@SuppressWarnings("PMD.AvoidDuplicateLiterals") class CompileKotlinOperationTest { - private static final String FILE_1 = "file1"; - private static final String FILE_2 = "file2"; - @BeforeAll static void beforeAll() { var level = Level.ALL; @@ -53,36 +49,6 @@ class CompileKotlinOperationTest { logger.setUseParentHandlers(false); } - @Test - void testBuildMainDirectory() { - var foo = new File("foo"); - var bar = new File("bar"); - - var op = new CompileKotlinOperation().buildMainDirectory(foo); - assertThat(op.buildMainDirectory()).as("as file").isEqualTo(foo); - - op = op.buildMainDirectory(bar.toPath()); - assertThat(op.buildMainDirectory()).as("as path").isEqualTo(bar); - - op = new CompileKotlinOperation().buildMainDirectory("foo"); - assertThat(op.buildMainDirectory()).as("as string").isEqualTo(foo); - } - - @Test - void testBuildTestDirectory() { - var foo = new File("foo"); - var bar = new File("bar"); - - var op = new CompileKotlinOperation().buildTestDirectory(foo); - assertThat(op.buildTestDirectory()).as("as file").isEqualTo(foo); - - op = op.buildTestDirectory(bar.toPath()); - assertThat(op.buildTestDirectory()).as("as path").isEqualTo(bar); - - op = new CompileKotlinOperation().buildTestDirectory("foo"); - assertThat(op.buildTestDirectory()).as("as string").isEqualTo(foo); - } - @Test void testCollections() { var op = new CompileKotlinOperation() @@ -105,9 +71,6 @@ class CompileKotlinOperationTest { .plugins("plugin1", "plugin2") .plugins(CompilerPlugin.KOTLIN_SERIALIZATION, CompilerPlugin.ASSIGNMENT) .plugins(new File("lib/compile"), CompilerPlugin.LOMBOK, CompilerPlugin.POWER_ASSERT) - .plugins(Path.of("lib/compile"), CompilerPlugin.NOARG, CompilerPlugin.ALL_OPEN) - .plugins("lib/compile", CompilerPlugin.KOTLINX_SERIALIZATION, CompilerPlugin.SAM_WITH_RECEIVER) - .plugins(List.of("plugin3", "plugin4")); assertThat(op.kotlinHome().getName()).as("kotlin_home").isEqualTo("kotlin_home"); @@ -130,15 +93,10 @@ class CompileKotlinOperationTest { assertThat(op.testSourceFiles()).as("testSourceFiles").containsOnly( new File("tfile1"), new File("tfile2"), new File("tfile3"), new File("tfile4"), new File("tfile5"), new File("tfile6")); - assertThat(op.plugins()).as("plugins").contains("plugin1", "plugin2", "plugin3", "plugin4", + assertThat(op.plugins()).as("plugins").contains("plugin2", "plugin3", "plugin4", "/kotlin_home/lib/kotlin-serialization-compiler-plugin.jar", - "/kotlin_home/lib/assignment-compiler-plugin.jar", - new File("lib/compile", "lombok-compiler-plugin.jar").getAbsolutePath(), - new File("lib/compile", "power-assert-compiler-plugin.jar").getAbsolutePath(), - new File("lib/compile", "noarg-compiler-plugin.jar").getAbsolutePath(), - new File("lib/compile", "allopen-compiler-plugin.jar").getAbsolutePath(), - new File("lib/compile", "kotlinx-serialization-compiler-plugin.jar").getAbsolutePath(), - new File("lib/compile", "sam-with-receiver-compiler-plugin.jar").getAbsolutePath()); + "/kotlin_home/lib/assignment-compiler-plugin.jar"); + assertThat(op.plugins()).as("plugins size").hasSize(8); } @Test @@ -197,98 +155,6 @@ class CompileKotlinOperationTest { } } - @Test - void testKotlinHome() { - var foo = new File("foo"); - var bar = new File("bar"); - - var op = new CompileKotlinOperation().kotlinHome(foo); - assertThat(op.kotlinHome()).as("as file").isEqualTo(foo); - - op = op.kotlinHome(bar.toPath()); - assertThat(op.kotlinHome()).as("as path").isEqualTo(bar); - - op = new CompileKotlinOperation().kotlinHome("foo"); - assertThat(op.kotlinHome()).as("as string").isEqualTo(foo); - } - - @Test - void testKotlinc() { - var foo = new File("foo"); - var bar = new File("bar"); - - var op = new CompileKotlinOperation().kotlinc(foo); - assertThat(op.kotlinc()).as("as file").isEqualTo(foo); - - op = op.kotlinc(bar.toPath()); - assertThat(op.kotlinc()).as("as path").isEqualTo(bar); - - op = new CompileKotlinOperation().kotlinc("foo"); - assertThat(op.kotlinc()).as("as string").isEqualTo(foo); - } - - @Test - void testMainSourceDirectories() { - var op = new CompileKotlinOperation(); - - op.mainSourceDirectories(List.of(new File(FILE_1), new File(FILE_2))); - assertThat(op.mainSourceDirectories()).as("List(File...)").containsExactly(new File(FILE_1), new File(FILE_2)); - op.mainSourceDirectories().clear(); - - op.mainSourceDirectories(new File(FILE_1), new File(FILE_2)); - assertThat(op.mainSourceDirectories()).as("File...").containsExactly(new File(FILE_1), new File(FILE_2)); - op.mainSourceDirectories().clear(); - - op.mainSourceDirectories(FILE_1, FILE_2); - assertThat(op.mainSourceDirectories()).as("String...") - .containsExactly(new File(FILE_1), new File(FILE_2)); - op.mainSourceDirectories().clear(); - - op = op.mainSourceDirectories(Path.of(FILE_1), Path.of(FILE_2)); - assertThat(op.mainSourceDirectories()).as("Path...") - .containsExactly(new File(FILE_1), new File(FILE_2)); - op.mainSourceDirectories().clear(); - - op.mainSourceDirectoriesPaths(List.of(new File(FILE_1).toPath(), new File(FILE_2).toPath())); - assertThat(op.mainSourceDirectories()).as("List(Path...)").containsExactly(new File(FILE_1), new File(FILE_2)); - op.mainSourceDirectories().clear(); - - op.mainSourceDirectoriesStrings(List.of(FILE_1, FILE_2)); - assertThat(op.mainSourceDirectories()).as("List(String...)").containsExactly(new File(FILE_1), new File(FILE_2)); - op.mainSourceDirectories().clear(); - } - - @Test - void testMainSourceFiles() { - var op = new CompileKotlinOperation(); - - op.mainSourceFiles(List.of(new File(FILE_1), new File(FILE_2))); - assertThat(op.mainSourceFiles()).as("List(File...)").containsExactly(new File(FILE_1), new File(FILE_2)); - op.mainSourceFiles().clear(); - - op.mainSourceFiles(new File(FILE_1), new File(FILE_2)); - assertThat(op.mainSourceFiles()).as("File...").containsExactly(new File(FILE_1), new File(FILE_2)); - op.mainSourceFiles().clear(); - - op.mainSourceFiles(FILE_1, FILE_2); - assertThat(op.mainSourceFiles()).as("String...") - .containsExactly(new File(FILE_1), new File(FILE_2)); - op.mainSourceFiles().clear(); - - op = op.mainSourceFiles(Path.of(FILE_1), Path.of(FILE_2)); - assertThat(op.mainSourceFiles()).as("Path...") - .containsExactly(new File(FILE_1), new File(FILE_2)); - op.mainSourceFiles().clear(); - - op.mainSourceFilesPaths(List.of(new File(FILE_1).toPath(), new File(FILE_2).toPath())); - assertThat(op.mainSourceFiles()).as("List(Path...)").containsExactly(new File(FILE_1), new File(FILE_2)); - op.mainSourceFiles().clear(); - - op.mainSourceFilesStrings(List.of(FILE_1, FILE_2)); - assertThat(op.mainSourceFiles()).as("List(String...)").containsExactly(new File(FILE_1), new File(FILE_2)); - op.mainSourceFiles().clear(); - } - @Test @SuppressWarnings("PMD.AvoidInstantiatingObjectsInLoops") void testPlugins() { @@ -307,81 +173,4 @@ class CompileKotlinOperationTest { assertThat(new File(p)).as(p).exists(); } } - - @Test - void testTestSourceDirectories() { - var op = new CompileKotlinOperation(); - - op.testSourceDirectories(List.of(new File(FILE_1), new File(FILE_2))); - assertThat(op.testSourceDirectories()).as("List(File...)").containsExactly(new File(FILE_1), new File(FILE_2)); - op.testSourceDirectories().clear(); - - op.testSourceDirectories(new File(FILE_1), new File(FILE_2)); - assertThat(op.testSourceDirectories()).as("File...").containsExactly(new File(FILE_1), new File(FILE_2)); - op.testSourceDirectories().clear(); - - op.testSourceDirectories(FILE_1, FILE_2); - assertThat(op.testSourceDirectories()).as("String...") - .containsExactly(new File(FILE_1), new File(FILE_2)); - op.testSourceDirectories().clear(); - - op = op.testSourceDirectories(Path.of(FILE_1), Path.of(FILE_2)); - assertThat(op.testSourceDirectories()).as("Path...") - .containsExactly(new File(FILE_1), new File(FILE_2)); - op.testSourceDirectories().clear(); - - op.testSourceDirectoriesPaths(List.of(new File(FILE_1).toPath(), new File(FILE_2).toPath())); - assertThat(op.testSourceDirectories()).as("List(Path...)").containsExactly(new File(FILE_1), new File(FILE_2)); - op.testSourceDirectories().clear(); - - op.testSourceDirectoriesStrings(List.of(FILE_1, FILE_2)); - assertThat(op.testSourceDirectories()).as("List(String...)").containsExactly(new File(FILE_1), new File(FILE_2)); - op.testSourceDirectories().clear(); - } - - @Test - void testTestSourceFiles() { - var op = new CompileKotlinOperation(); - - op.testSourceFiles(List.of(new File(FILE_1), new File(FILE_2))); - assertThat(op.testSourceFiles()).as("List(File...)").containsExactly(new File(FILE_1), new File(FILE_2)); - op.testSourceFiles().clear(); - - op.testSourceFiles(new File(FILE_1), new File(FILE_2)); - assertThat(op.testSourceFiles()).as("File...").containsExactly(new File(FILE_1), new File(FILE_2)); - op.testSourceFiles().clear(); - - op.testSourceFiles(FILE_1, FILE_2); - assertThat(op.testSourceFiles()).as("String...") - .containsExactly(new File(FILE_1), new File(FILE_2)); - op.testSourceFiles().clear(); - - op = op.testSourceFiles(Path.of(FILE_1), Path.of(FILE_2)); - assertThat(op.testSourceFiles()).as("Path...") - .containsExactly(new File(FILE_1), new File(FILE_2)); - op.testSourceFiles().clear(); - - op.testSourceFilesPaths(List.of(new File(FILE_1).toPath(), new File(FILE_2).toPath())); - assertThat(op.testSourceFiles()).as("List(Path...)").containsExactly(new File(FILE_1), new File(FILE_2)); - op.testSourceFiles().clear(); - - op.testSourceFilesStrings(List.of(FILE_1, FILE_2)); - assertThat(op.testSourceFiles()).as("List(String...)").containsExactly(new File(FILE_1), new File(FILE_2)); - op.testSourceFiles().clear(); - } - - @Test - void testWorkDir() { - var foo = new File("foo"); - var bar = new File("bar"); - - var op = new CompileKotlinOperation().workDir(foo); - assertThat(op.workDir()).as("as file").isEqualTo(foo); - - op = op.workDir(bar.toPath()); - assertThat(op.workDir()).as("as path").isEqualTo(bar); - - op = new CompileKotlinOperation().workDir("foo"); - assertThat(op.workDir()).as("as string").isEqualTo(foo); - } } diff --git a/src/test/java/rife/bld/extension/kotlin/CompileOptionsTest.java b/src/test/java/rife/bld/extension/kotlin/CompileOptionsTest.java index 91ad563..b628a3c 100644 --- a/src/test/java/rife/bld/extension/kotlin/CompileOptionsTest.java +++ b/src/test/java/rife/bld/extension/kotlin/CompileOptionsTest.java @@ -248,29 +248,15 @@ class CompileOptionsTest { var options = new CompileOptions(); options.classpath(foo, bar); - assertThat(options.classpath()).as("File...").containsExactly(foo, bar); - options.classpath().clear(); - - options.classpath(List.of(foo, bar)); - assertThat(options.classpath()).as("List(File...)").containsExactly(foo, bar); + assertThat(options.classpath()).contains(foo, bar); options.classpath().clear(); options = options.classpath(foo.toPath(), bar.toPath()); - assertThat(options.classpath()).as("Path...").containsExactly(foo, bar); - options.classpath().clear(); - - options = options.classpathPaths(List.of(foo.toPath(), bar.toPath())); - assertThat(options.classpath()).as("List(Path...)").containsExactly(foo, bar); + assertThat(options.classpath()).contains(foo, bar); options.classpath().clear(); options.classpath(foo.getAbsolutePath(), bar.getAbsolutePath()); - assertThat(options.classpath()).as("String...") - .containsExactly(new File(foo.getAbsolutePath()), new File(bar.getAbsolutePath())); - options.classpath().clear(); - - options.classpathStrings(List.of(foo.getAbsolutePath(), bar.getAbsolutePath())); - assertThat(options.classpath()).as("List(String...)") - .containsExactly(new File(foo.getAbsolutePath()), new File(bar.getAbsolutePath())); + assertThat(options.classpath()).contains(new File(foo.getAbsolutePath()), new File(bar.getAbsolutePath())); options.classpath().clear(); } @@ -315,7 +301,7 @@ class CompileOptionsTest { .includeRuntime(true) .javaParameters(true) .jdkHome("jdk-home") - .jdkRelease(22) + .jdkRelease("22") .jvmTarget("9") .kotlinHome("kotlin-home") .languageVersion("1.0")