Update gradle-plugin sample to use Kotlin DSL

This commit is contained in:
daz
2025-03-25 15:19:23 -06:00
parent 086c9e4b25
commit aa88309fbd
8 changed files with 57 additions and 86 deletions

View File

@@ -1,7 +1,7 @@
/*
* This Java source file was generated by the Gradle 'init' task.
* This source file was generated by the Gradle 'init' task
*/
package org.example.gradle.plugin;
package org.example;
import java.io.File;
import java.io.IOException;
@@ -15,7 +15,7 @@ import org.junit.jupiter.api.io.TempDir;
import static org.junit.jupiter.api.Assertions.*;
/**
* A simple functional test for the 'org.example.gradle.plugin.greeting' plugin.
* A simple functional test for the 'org.example.greeting' plugin.
*/
class GradlePluginPluginFunctionalTest {
@TempDir
@@ -29,24 +29,23 @@ class GradlePluginPluginFunctionalTest {
return new File(projectDir, "settings.gradle");
}
@Test void canRunTaskWithGradle691() throws IOException {
@Test void canRunTask() throws IOException {
writeString(getSettingsFile(), "");
writeString(getBuildFile(),
"plugins {" +
" id('org.example.gradle.plugin.greeting')" +
" id('org.example.greeting')" +
"}");
// Run the build
GradleRunner runner = GradleRunner.create();
runner.forwardOutput();
runner.withGradleVersion("6.9.1");
runner.withPluginClasspath();
runner.withArguments("greeting");
runner.withProjectDir(projectDir);
BuildResult result = runner.build();
// Verify the result
assertTrue(result.getOutput().contains("Hello from plugin 'org.example.gradle.plugin.greeting'"));
assertTrue(result.getOutput().contains("Hello from plugin 'org.example.greeting'"));
}
private void writeString(File file, String string) throws IOException {

View File

@@ -1,7 +1,7 @@
/*
* This Java source file was generated by the Gradle 'init' task.
* This source file was generated by the Gradle 'init' task
*/
package org.example.gradle.plugin;
package org.example;
import org.gradle.api.Project;
import org.gradle.api.Plugin;
@@ -13,7 +13,7 @@ public class GradlePluginPlugin implements Plugin<Project> {
public void apply(Project project) {
// Register a task
project.getTasks().register("greeting", task -> {
task.doLast(s -> System.out.println("Hello from plugin 'org.example.gradle.plugin.greeting'"));
task.doLast(s -> System.out.println("Hello from plugin 'org.example.greeting'"));
});
}
}

View File

@@ -1,7 +1,7 @@
/*
* This Java source file was generated by the Gradle 'init' task.
* This source file was generated by the Gradle 'init' task
*/
package org.example.gradle.plugin;
package org.example;
import org.gradle.testfixtures.ProjectBuilder;
import org.gradle.api.Project;
@@ -9,13 +9,13 @@ import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
/**
* A simple unit test for the 'org.example.gradle.plugin.greeting' plugin.
* A simple unit test for the 'org.example.greeting' plugin.
*/
class GradlePluginPluginTest {
@Test void pluginRegistersATask() {
// Create a test project and apply the plugin
Project project = ProjectBuilder.builder().build();
project.getPlugins().apply("org.example.gradle.plugin.greeting");
project.getPlugins().apply("org.example.greeting");
// Verify the result
assertNotNull(project.getTasks().findByName("greeting"));