Polish "Add support for removing build plugins"

See gh-978
This commit is contained in:
Stephane Nicoll
2019-08-13 20:22:35 +02:00
parent 083213c904
commit a3826cfaed
22 changed files with 270 additions and 148 deletions

View File

@@ -53,8 +53,7 @@ class DefaultMavenBuildCustomizerTests {
void customizeRegisterSpringBootPlugin() {
InitializrMetadata metadata = InitializrMetadataTestBuilder.withDefaults().build();
MavenBuild build = customizeBuild(metadata);
assertThat(build.plugins().values()).hasSize(1);
build.plugins().values().findFirst().ifPresent((mavenPlugin) -> {
assertThat(build.plugins().values()).hasOnlyOneElementSatisfying((mavenPlugin) -> {
assertThat(mavenPlugin.getGroupId()).isEqualTo("org.springframework.boot");
assertThat(mavenPlugin.getArtifactId()).isEqualTo("spring-boot-maven-plugin");
assertThat(mavenPlugin.getVersion()).isNull();

View File

@@ -32,8 +32,8 @@ class GroovyGradleBuildCustomizerTests {
void groovyPluginIsConfigured() {
GradleBuild build = new GradleBuild();
new GroovyGradleBuildCustomizer().customize(build);
assertThat(build.plugins().values()).hasSize(1);
build.plugins().values().findFirst().ifPresent((plugin) -> assertThat(plugin.getId()).isEqualTo("groovy"));
assertThat(build.plugins().values())
.hasOnlyOneElementSatisfying((plugin) -> assertThat(plugin.getId()).isEqualTo("groovy"));
}
}

View File

@@ -34,8 +34,7 @@ class GroovyMavenBuildCustomizerTests {
void groovyMavenPluginIsConfigured() {
MavenBuild build = new MavenBuild();
new GroovyMavenBuildCustomizer().customize(build);
assertThat(build.plugins().values()).hasSize(1);
build.plugins().values().findFirst().ifPresent((groovyPlugin) -> {
assertThat(build.plugins().values()).hasOnlyOneElementSatisfying((groovyPlugin) -> {
assertThat(groovyPlugin.getGroupId()).isEqualTo("org.codehaus.gmavenplus");
assertThat(groovyPlugin.getArtifactId()).isEqualTo("gmavenplus-plugin");
assertThat(groovyPlugin.getVersion()).isEqualTo("1.6.3");

View File

@@ -19,6 +19,7 @@ package io.spring.initializr.generator.spring.code.kotlin;
import java.util.Collections;
import io.spring.initializr.generator.buildsystem.gradle.GradleBuild;
import io.spring.initializr.generator.buildsystem.gradle.GradlePlugin;
import io.spring.initializr.generator.buildsystem.gradle.StandardGradlePlugin;
import io.spring.initializr.generator.spring.test.InitializrMetadataTestBuilder;
import io.spring.initializr.generator.version.Version;
@@ -41,9 +42,8 @@ class KotlinJpaGradleBuildCustomizerTests {
Dependency dependency = Dependency.withId("foo");
dependency.setFacets(Collections.singletonList("jpa"));
GradleBuild build = getCustomizedBuild(dependency);
assertThat(build.plugins().values().filter((plugin) -> plugin.isApply())).isEmpty();
assertThat(build.plugins().values()).hasSize(1);
build.plugins().values().findFirst().ifPresent((plugin) -> {
assertThat(build.plugins().values().filter(GradlePlugin::isApply)).isEmpty();
assertThat(build.plugins().values()).hasOnlyOneElementSatisfying((plugin) -> {
assertThat(plugin.getId()).isEqualTo("org.jetbrains.kotlin.plugin.jpa");
assertThat(((StandardGradlePlugin) plugin).getVersion()).isEqualTo("1.2.70");
});
@@ -53,7 +53,7 @@ class KotlinJpaGradleBuildCustomizerTests {
void customizeWhenJpaFacetAbsentShouldNotAddKotlinJpaPlugin() {
Dependency dependency = Dependency.withId("foo");
GradleBuild build = getCustomizedBuild(dependency);
assertThat(build.plugins().values().filter((plugin) -> plugin.isApply())).isEmpty();
assertThat(build.plugins().values().filter(GradlePlugin::isApply)).isEmpty();
assertThat(build.plugins().values()).isEmpty();
}

View File

@@ -42,8 +42,7 @@ class KotlinJpaMavenBuildCustomizerTests {
Dependency dependency = Dependency.withId("foo");
dependency.setFacets(Collections.singletonList("jpa"));
MavenBuild build = getCustomizedBuild(dependency);
assertThat(build.plugins().values()).hasSize(1);
build.plugins().values().findFirst().ifPresent((plugin) -> {
assertThat(build.plugins().values()).hasOnlyOneElementSatisfying((plugin) -> {
assertThat(plugin.getGroupId()).isEqualTo("org.jetbrains.kotlin");
assertThat(plugin.getArtifactId()).isEqualTo("kotlin-maven-plugin");
MavenPlugin.Setting settings = plugin.getConfiguration().getSettings().get(0);
@@ -61,7 +60,7 @@ class KotlinJpaMavenBuildCustomizerTests {
void customizeWhenJpaFacetAbsentShouldNotAddKotlinJpaPlugin() {
Dependency dependency = Dependency.withId("foo");
MavenBuild build = getCustomizedBuild(dependency);
assertThat(build.plugins().values()).hasSize(0);
assertThat(build.plugins().isEmpty()).isTrue();
}
private MavenBuild getCustomizedBuild(Dependency dependency) {

View File

@@ -54,8 +54,7 @@ class KotlinMavenBuildCustomizerTests {
void kotlinMavenPluginIsConfigured() {
MavenBuild build = new MavenBuild();
new KotlinMavenBuildCustomizer(new SimpleKotlinProjectSettings("1.2.70")).customize(build);
assertThat(build.plugins().values()).hasSize(1);
build.plugins().values().findFirst().ifPresent((kotlinPlugin) -> {
assertThat(build.plugins().values()).hasOnlyOneElementSatisfying((kotlinPlugin) -> {
assertThat(kotlinPlugin.getGroupId()).isEqualTo("org.jetbrains.kotlin");
assertThat(kotlinPlugin.getArtifactId()).isEqualTo("kotlin-maven-plugin");
assertThat(kotlinPlugin.getVersion()).isNull();
@@ -85,8 +84,7 @@ class KotlinMavenBuildCustomizerTests {
void kotlinMavenPluginWithSeveralArgs() {
MavenBuild build = new MavenBuild();
new KotlinMavenBuildCustomizer(new TestKotlinProjectSettings()).customize(build);
assertThat(build.plugins().values()).hasSize(1);
build.plugins().values().findFirst().ifPresent((kotlinPlugin) -> {
assertThat(build.plugins().values()).hasOnlyOneElementSatisfying((kotlinPlugin) -> {
Configuration configuration = kotlinPlugin.getConfiguration();
Setting args = configuration.getSettings().get(0);
assertThat(args.getName()).isEqualTo("args");

View File

@@ -52,8 +52,7 @@ class KotlinMavenFullBuildCustomizerTests {
void kotlinMavenPluginIsConfigured() {
MavenBuild build = new MavenBuild();
new KotlinMavenFullBuildCustomizer(new SimpleKotlinProjectSettings("1.2.70")).customize(build);
assertThat(build.plugins().values()).hasSize(1);
build.plugins().values().findFirst().ifPresent((kotlinPlugin) -> {
assertThat(build.plugins().values()).hasOnlyOneElementSatisfying((kotlinPlugin) -> {
assertThat(kotlinPlugin.getGroupId()).isEqualTo("org.jetbrains.kotlin");
assertThat(kotlinPlugin.getArtifactId()).isEqualTo("kotlin-maven-plugin");
assertThat(kotlinPlugin.getVersion()).isEqualTo("${kotlin.version}");