From 5dcc94f0fb0c5e38e3b09cfc7aa32d8c54f54ceb Mon Sep 17 00:00:00 2001 From: Tobias Gesellchen Date: Sun, 15 Sep 2024 12:18:01 +0200 Subject: [PATCH] Use the preferred Gradle API --- .../gradle/debian/DebianPackagePlugin.groovy | 2 +- .../gradle/debian/DebianPackagePluginSpec.groovy | 12 ++++++------ .../gradle/debian/tasks/ArtifactCollectorTest.groovy | 3 ++- .../debian/tasks/BuildDebianPackageTaskSpec.groovy | 4 ++-- 4 files changed, 11 insertions(+), 10 deletions(-) diff --git a/src/main/groovy/de/gesellix/gradle/debian/DebianPackagePlugin.groovy b/src/main/groovy/de/gesellix/gradle/debian/DebianPackagePlugin.groovy index ae14a2b..9c4b6c1 100644 --- a/src/main/groovy/de/gesellix/gradle/debian/DebianPackagePlugin.groovy +++ b/src/main/groovy/de/gesellix/gradle/debian/DebianPackagePlugin.groovy @@ -25,7 +25,7 @@ class DebianPackagePlugin implements Plugin { def addTasks(Project project) { project.afterEvaluate { - project.tasks.withType(BuildDebianPackageTask).whenTaskAdded { task -> + project.tasks.withType(BuildDebianPackageTask).configureEach { task -> def extension = project.extensions.findByName(DEBPKGPLUGIN_EXTENSION_NAME) task.conventionMapping.with { changelogFile = { project.file(extension.changelogFile) } diff --git a/src/test/groovy/de/gesellix/gradle/debian/DebianPackagePluginSpec.groovy b/src/test/groovy/de/gesellix/gradle/debian/DebianPackagePluginSpec.groovy index 4f899d5..0c94f4a 100644 --- a/src/test/groovy/de/gesellix/gradle/debian/DebianPackagePluginSpec.groovy +++ b/src/test/groovy/de/gesellix/gradle/debian/DebianPackagePluginSpec.groovy @@ -63,7 +63,7 @@ class DebianPackagePluginSpec extends Specification { project.evaluate() assert DEBPKGTASK_NAME == 'buildDeb' then: "there is a 'buildDeb' task registered" - project.tasks.findByName('buildDeb') in BuildDebianPackageTask + project.tasks.named('buildDeb').get() in BuildDebianPackageTask } def "can handle a debian configuration"() { @@ -72,7 +72,7 @@ class DebianPackagePluginSpec extends Specification { project.evaluate() then: "extension properties are mapped to task properties" - Task buildDebTask = project.tasks.findByName(DEBPKGTASK_NAME) + Task buildDebTask = project.tasks.named(DEBPKGTASK_NAME).getOrNull() buildDebTask != null buildDebTask.packagename == "packagename" buildDebTask.changelogFile == new File("${projectDir}/../packagename/debian/changelog").canonicalFile @@ -87,8 +87,8 @@ class DebianPackagePluginSpec extends Specification { Project project = ProjectBuilder.builder().withName('projectname').withProjectDir(projectDir).build() project.evaluate() then: - Task buildDebTask = project.tasks.findByName(DEBPKGTASK_NAME) - Task publicationTask = project.tasks.findByName(PUBLISH_LOCAL_LIFECYCLE_TASK_NAME) + Task buildDebTask = project.tasks.named(DEBPKGTASK_NAME).getOrNull() + Task publicationTask = project.tasks.named(PUBLISH_LOCAL_LIFECYCLE_TASK_NAME).getOrNull() buildDebTask.taskDependencies.getDependencies(buildDebTask).contains(publicationTask) } @@ -97,7 +97,7 @@ class DebianPackagePluginSpec extends Specification { Project project = ProjectBuilder.builder().withName('projectname').withProjectDir(projectDir).build() project.evaluate() then: - Task buildDebTask = project.tasks.findByName(DEBPKGTASK_NAME) - buildDebTask.taskDependencies.getDependencies(buildDebTask).contains(project.tasks.findByName(ASSEMBLE_TASK_NAME)) + Task buildDebTask = project.tasks.named(DEBPKGTASK_NAME).getOrNull() + buildDebTask.taskDependencies.getDependencies(buildDebTask).contains(project.tasks.named(ASSEMBLE_TASK_NAME).get()) } } diff --git a/src/test/groovy/de/gesellix/gradle/debian/tasks/ArtifactCollectorTest.groovy b/src/test/groovy/de/gesellix/gradle/debian/tasks/ArtifactCollectorTest.groovy index c6a60bd..41745c4 100644 --- a/src/test/groovy/de/gesellix/gradle/debian/tasks/ArtifactCollectorTest.groovy +++ b/src/test/groovy/de/gesellix/gradle/debian/tasks/ArtifactCollectorTest.groovy @@ -1,6 +1,7 @@ package de.gesellix.gradle.debian.tasks import org.gradle.api.logging.Logger +import org.gradle.api.publish.Publication import org.gradle.api.publish.ivy.IvyPublication import spock.lang.Specification import spock.lang.Unroll @@ -16,7 +17,7 @@ class ArtifactCollectorTest extends Specification { } @Unroll("returns no artifacts for #publicationClass") - def "accepts only MavenPublications"(publicationClass) { + def "accepts only MavenPublications"(Class publicationClass) { def artifacts def publicationMock = Mock(publicationClass) given: diff --git a/src/test/groovy/de/gesellix/gradle/debian/tasks/BuildDebianPackageTaskSpec.groovy b/src/test/groovy/de/gesellix/gradle/debian/tasks/BuildDebianPackageTaskSpec.groovy index 1c9ce85..a8390c8 100644 --- a/src/test/groovy/de/gesellix/gradle/debian/tasks/BuildDebianPackageTaskSpec.groovy +++ b/src/test/groovy/de/gesellix/gradle/debian/tasks/BuildDebianPackageTaskSpec.groovy @@ -41,10 +41,10 @@ class BuildDebianPackageTaskSpec extends Specification { } @Unroll("inadequately configured task should throw #expectedException with message like '#exceptionMessagePattern'") - def "buildPackage with invalid configuration"(taskConfig, expectedException, exceptionMessagePattern) { + def "buildPackage with invalid configuration"(taskConfig, Class expectedException, exceptionMessagePattern) { when: "task is configured" taskConfig(task) - task.buildPackage(); + task.buildPackage() then: def e = thrown(expectedException) e.message =~ exceptionMessagePattern