Skip to content

Commit baf31c0

Browse files
committed
Add cross-version testing
1 parent 3a43bdd commit baf31c0

File tree

3 files changed

+21
-13
lines changed

3 files changed

+21
-13
lines changed

build.gradle.kts

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ group = "org.gradlex"
66
version = "1.0.1"
77

88
java {
9-
toolchain.languageVersion = JavaLanguageVersion.of(21)
9+
toolchain.languageVersion = JavaLanguageVersion.of(17)
1010
}
1111

1212
tasks.compileJava {
@@ -29,6 +29,15 @@ pluginPublishConventions {
2929

3030
testing.suites.named<JvmTestSuite>("test") {
3131
useJUnitJupiter()
32+
listOf("7.4", "7.6.5", "8.0.2", "8.14.2").forEach { gradleVersionUnderTest ->
33+
targets.register("test${gradleVersionUnderTest}") {
34+
testTask {
35+
group = LifecycleBasePlugin.VERIFICATION_GROUP
36+
description = "Runs tests against Gradle $gradleVersionUnderTest"
37+
systemProperty("gradleVersionUnderTest", gradleVersionUnderTest)
38+
}
39+
}
40+
}
3241
dependencies {
3342
implementation("org.assertj:assertj-core:3.27.3")
3443
}

src/test/java/org/gradlex/javamodule/packaging/test/JavaModulePackagingTest.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -53,16 +53,16 @@ void can_use_plugin(String label, String os, boolean success) {
5353
version = "1.0"
5454
javaModulePackaging {
5555
target("macos") {
56-
operatingSystem = "macos"
57-
architecture = "%s"
56+
operatingSystem.set("macos")
57+
architecture.set("%s")
5858
}
5959
target("ubuntu") {
60-
operatingSystem = "linux"
61-
architecture = "x86-64"
60+
operatingSystem.set("linux")
61+
architecture.set("x86-64")
6262
}
6363
target("windows") {
64-
operatingSystem = "windows"
65-
architecture = "x86-64"
64+
operatingSystem.set("windows")
65+
architecture.set("x86-64")
6666
}
6767
}
6868
""".formatted(macosArch));

src/test/java/org/gradlex/javamodule/packaging/test/fixture/GradleBuild.java

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -42,14 +42,10 @@ public class GradleBuild {
4242
public static final String GRADLE_VERSION_UNDER_TEST = System.getProperty("gradleVersionUnderTest");
4343

4444
public GradleBuild() {
45-
this(false, createBuildTmpDir());
45+
this(createBuildTmpDir());
4646
}
4747

48-
public GradleBuild(boolean withHelpTasks) {
49-
this(withHelpTasks, createBuildTmpDir());
50-
}
51-
52-
public GradleBuild(boolean withHelpTasks, Path dir) {
48+
public GradleBuild(Path dir) {
5349
this.projectDir = new Directory(dir);
5450
this.settingsFile = file("settings.gradle.kts");
5551
this.appBuildFile = file("app/build.gradle.kts");
@@ -74,6 +70,9 @@ public GradleBuild(boolean withHelpTasks, Path dir) {
7470
id("application")
7571
}
7672
group = "org.example"
73+
java {
74+
toolchain.languageVersion.set(JavaLanguageVersion.of(17))
75+
}
7776
application {
7877
mainModule.set("org.example.app")
7978
mainClass.set("org.example.app.Main")

0 commit comments

Comments
 (0)