From cfe12e30a4c05657a134ff975e82790d6cca7d68 Mon Sep 17 00:00:00 2001 From: Jose Luis Badano Date: Mon, 6 Nov 2023 00:25:47 -0300 Subject: [PATCH 1/5] Added step to remove the semicolons in groovy files --- .../spotless/groovy/RemoveSemiColonsStep.java | 63 +++++++++++++++++++ .../spotless/maven/groovy/Groovy.java | 4 ++ .../maven/groovy/RemoveSemiColons.java | 32 ++++++++++ .../maven/groovy/RemoveSemiColonsTest.java | 38 +++++++++++ .../GroovyCodeWithSemiColons.test | 10 +++ .../GroovyCodeWithSemiColonsFormatted.test | 10 +++ 6 files changed, 157 insertions(+) create mode 100644 lib/src/main/java/com/diffplug/spotless/groovy/RemoveSemiColonsStep.java create mode 100644 plugin-maven/src/main/java/com/diffplug/spotless/maven/groovy/RemoveSemiColons.java create mode 100644 plugin-maven/src/test/java/com/diffplug/spotless/maven/groovy/RemoveSemiColonsTest.java create mode 100644 testlib/src/main/resources/groovy/removesemicolons/GroovyCodeWithSemiColons.test create mode 100644 testlib/src/main/resources/groovy/removesemicolons/GroovyCodeWithSemiColonsFormatted.test diff --git a/lib/src/main/java/com/diffplug/spotless/groovy/RemoveSemiColonsStep.java b/lib/src/main/java/com/diffplug/spotless/groovy/RemoveSemiColonsStep.java new file mode 100644 index 0000000000..78355e14ee --- /dev/null +++ b/lib/src/main/java/com/diffplug/spotless/groovy/RemoveSemiColonsStep.java @@ -0,0 +1,63 @@ +package com.diffplug.spotless.groovy; + +import com.diffplug.spotless.FormatterFunc; +import com.diffplug.spotless.FormatterStep; + +import java.io.BufferedReader; +import java.io.Serializable; +import java.io.StringReader; + +/** + * Removes all semicolons from the end of lines. + * + * @author Jose Luis Badano + */ +public final class RemoveSemiColonsStep { + + private RemoveSemiColonsStep() { + // prevent instantiation + } + + static final String NAME = "Remove not needed semi colons"; + + public static FormatterStep create() { + return FormatterStep.createLazy(NAME, + State::new, + RemoveSemiColonsStep.State::toFormatter); + } + + + private static final class State implements Serializable { + private static final long serialVersionUID = 1L; + + FormatterFunc toFormatter() { + return raw -> { + try (BufferedReader reader = new BufferedReader(new StringReader(raw))) { + StringBuilder result = new StringBuilder(); + String line; + while ((line = reader.readLine()) != null) { + result.append(removeSemiColon(line)); + result.append(System.lineSeparator()); + } + return result.toString(); + } + }; + } + + /** + * Removes the last semicolon in a line if it exists. + * + * @param line the line to remove the semicolon from + * @return the line without the last semicolon + */ + private String removeSemiColon(String line) { + // find last semicolon in a string a remove it + int lastSemiColon = line.lastIndexOf(";"); + if (lastSemiColon != -1 && lastSemiColon == line.length() - 1) { + return line.substring(0, lastSemiColon); + } else { + return line; + } + } + } +} diff --git a/plugin-maven/src/main/java/com/diffplug/spotless/maven/groovy/Groovy.java b/plugin-maven/src/main/java/com/diffplug/spotless/maven/groovy/Groovy.java index 35b91f3677..980c37841f 100644 --- a/plugin-maven/src/main/java/com/diffplug/spotless/maven/groovy/Groovy.java +++ b/plugin-maven/src/main/java/com/diffplug/spotless/maven/groovy/Groovy.java @@ -52,4 +52,8 @@ public void addGreclipse(GrEclipse greclipse) { public void addImportOrder(ImportOrder importOrder) { addStepFactory(importOrder); } + + public void addRemoveSemiColons(RemoveSemiColons removeSemiColons) { + addStepFactory(removeSemiColons); + } } diff --git a/plugin-maven/src/main/java/com/diffplug/spotless/maven/groovy/RemoveSemiColons.java b/plugin-maven/src/main/java/com/diffplug/spotless/maven/groovy/RemoveSemiColons.java new file mode 100644 index 0000000000..60642dec7a --- /dev/null +++ b/plugin-maven/src/main/java/com/diffplug/spotless/maven/groovy/RemoveSemiColons.java @@ -0,0 +1,32 @@ +/* + * Copyright 2016-2023 DiffPlug + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.diffplug.spotless.maven.groovy; + + +import com.diffplug.spotless.groovy.RemoveSemiColonsStep; + + +import com.diffplug.spotless.FormatterStep; +import com.diffplug.spotless.maven.FormatterStepConfig; +import com.diffplug.spotless.maven.FormatterStepFactory; + +public class RemoveSemiColons implements FormatterStepFactory { + + @Override + public FormatterStep newFormatterStep(FormatterStepConfig config) { + return RemoveSemiColonsStep.create(); + } +} diff --git a/plugin-maven/src/test/java/com/diffplug/spotless/maven/groovy/RemoveSemiColonsTest.java b/plugin-maven/src/test/java/com/diffplug/spotless/maven/groovy/RemoveSemiColonsTest.java new file mode 100644 index 0000000000..574f099752 --- /dev/null +++ b/plugin-maven/src/test/java/com/diffplug/spotless/maven/groovy/RemoveSemiColonsTest.java @@ -0,0 +1,38 @@ +package com.diffplug.spotless.maven.groovy; + +import com.diffplug.spotless.maven.MavenIntegrationHarness; + +import org.junit.jupiter.api.Test; + +class RemoveSemiColonsTest extends MavenIntegrationHarness { + + @Test + void testRemoveSemiColonsString() throws Exception { + writePomWithGroovySteps(""); + runTest("Hello World;", "Hello World"); + } + + @Test + void testNotRemoveSemiColonsString() throws Exception { + writePomWithGroovySteps(""); + runTest("Hello;World", "Hello;World"); + } + + @Test + void testRemoveSemiColons() throws Exception { + writePomWithGroovySteps(""); + + String path = "src/main/groovy/test.groovy"; + setFile(path).toResource("groovy/removesemicolons/GroovyCodeWithSemiColons.test"); + mavenRunner().withArguments("spotless:apply").runNoError(); + assertFile(path).sameAsResource("groovy/removesemicolons/GroovyCodeWithSemiColonsFormatted.test"); + + } + + private void runTest(String sourceContent, String targetContent) throws Exception { + String path = "src/main/groovy/test.groovy"; + setFile(path).toContent(sourceContent); + mavenRunner().withArguments("spotless:apply").runNoError(); + assertFile(path).hasContent(targetContent); + } +} diff --git a/testlib/src/main/resources/groovy/removesemicolons/GroovyCodeWithSemiColons.test b/testlib/src/main/resources/groovy/removesemicolons/GroovyCodeWithSemiColons.test new file mode 100644 index 0000000000..b66af4e820 --- /dev/null +++ b/testlib/src/main/resources/groovy/removesemicolons/GroovyCodeWithSemiColons.test @@ -0,0 +1,10 @@ +import mylib.Unused; +import mylib.UsedB; +import mylib.UsedA; + +public class SomeClass { +System.out.println("hello"); +UsedB.someMethod(); +UsedA.someMethod(); +} +} \ No newline at end of file diff --git a/testlib/src/main/resources/groovy/removesemicolons/GroovyCodeWithSemiColonsFormatted.test b/testlib/src/main/resources/groovy/removesemicolons/GroovyCodeWithSemiColonsFormatted.test new file mode 100644 index 0000000000..434addfa68 --- /dev/null +++ b/testlib/src/main/resources/groovy/removesemicolons/GroovyCodeWithSemiColonsFormatted.test @@ -0,0 +1,10 @@ +import mylib.Unused +import mylib.UsedB +import mylib.UsedA + +public class SomeClass { +System.out.println("hello") +UsedB.someMethod() +UsedA.someMethod() +} +} \ No newline at end of file From 38b74e21e2035486d2bc7ffda93d3fcff0e8365e Mon Sep 17 00:00:00 2001 From: Jose Luis Badano Date: Tue, 7 Nov 2023 09:50:46 -0300 Subject: [PATCH 2/5] Updated readme --- CHANGES.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGES.md b/CHANGES.md index 93e693ebf5..a8ae11c80f 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -14,6 +14,7 @@ We adhere to the [keepachangelog](https://keepachangelog.com/en/1.0.0/) format ( * Fix Eclipse JDT on some settings files. ([#1864](https://github.com/diffplug/spotless/pull/1864) fixes [#1638](https://github.com/diffplug/spotless/issues/1638)) ### Changes * Bump default `ktlint` version to latest `1.0.0` -> `1.0.1`. ([#1855](https://github.com/diffplug/spotless/pull/1855)) +* Add Step to remove semicolons from Groovy code. ([#1881])(https://github.com/diffplug/spotless/pull/1881) ## [2.42.0] - 2023-09-28 ### Added From 1f45cf023d6fd872713d3041c671ce496b1f9aff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Luis=20Badano?= Date: Tue, 7 Nov 2023 12:20:32 -0300 Subject: [PATCH 3/5] Update lib/src/main/java/com/diffplug/spotless/groovy/RemoveSemiColonsStep.java Co-authored-by: Goooler --- .../java/com/diffplug/spotless/groovy/RemoveSemiColonsStep.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/src/main/java/com/diffplug/spotless/groovy/RemoveSemiColonsStep.java b/lib/src/main/java/com/diffplug/spotless/groovy/RemoveSemiColonsStep.java index 78355e14ee..08e241f6f8 100644 --- a/lib/src/main/java/com/diffplug/spotless/groovy/RemoveSemiColonsStep.java +++ b/lib/src/main/java/com/diffplug/spotless/groovy/RemoveSemiColonsStep.java @@ -18,7 +18,7 @@ private RemoveSemiColonsStep() { // prevent instantiation } - static final String NAME = "Remove not needed semi colons"; + static final String NAME = "Remove unnecessary semicolons"; public static FormatterStep create() { return FormatterStep.createLazy(NAME, From 0df89803a791d58b0822f7eae9c79d6b8e18e73f Mon Sep 17 00:00:00 2001 From: Jose Luis Badano Date: Fri, 10 Nov 2023 13:51:07 -0300 Subject: [PATCH 4/5] Added gradle support Added gradle tests --- .../spotless/groovy/RemoveSemiColonsStep.java | 28 ++++++++++++++----- .../gradle/spotless/GroovyExtension.java | 5 ++++ .../spotless/GroovyGradleExtension.java | 7 ++++- .../gradle/spotless/GroovyExtensionTest.java | 25 +++++++++++++++++ .../maven/groovy/RemoveSemiColons.java | 5 +--- .../maven/groovy/RemoveSemiColonsTest.java | 19 +++++++++++-- 6 files changed, 75 insertions(+), 14 deletions(-) diff --git a/lib/src/main/java/com/diffplug/spotless/groovy/RemoveSemiColonsStep.java b/lib/src/main/java/com/diffplug/spotless/groovy/RemoveSemiColonsStep.java index 08e241f6f8..1dc925f184 100644 --- a/lib/src/main/java/com/diffplug/spotless/groovy/RemoveSemiColonsStep.java +++ b/lib/src/main/java/com/diffplug/spotless/groovy/RemoveSemiColonsStep.java @@ -1,12 +1,27 @@ +/* + * Copyright 2023 DiffPlug + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.diffplug.spotless.groovy; -import com.diffplug.spotless.FormatterFunc; -import com.diffplug.spotless.FormatterStep; - import java.io.BufferedReader; import java.io.Serializable; import java.io.StringReader; +import com.diffplug.spotless.FormatterFunc; +import com.diffplug.spotless.FormatterStep; + /** * Removes all semicolons from the end of lines. * @@ -18,15 +33,14 @@ private RemoveSemiColonsStep() { // prevent instantiation } - static final String NAME = "Remove unnecessary semicolons"; + static final String NAME = "Remove unnecessary semicolons"; public static FormatterStep create() { return FormatterStep.createLazy(NAME, - State::new, - RemoveSemiColonsStep.State::toFormatter); + State::new, + RemoveSemiColonsStep.State::toFormatter); } - private static final class State implements Serializable { private static final long serialVersionUID = 1L; diff --git a/plugin-gradle/src/main/java/com/diffplug/gradle/spotless/GroovyExtension.java b/plugin-gradle/src/main/java/com/diffplug/gradle/spotless/GroovyExtension.java index a7f3d98ce4..ebe0c0c032 100644 --- a/plugin-gradle/src/main/java/com/diffplug/gradle/spotless/GroovyExtension.java +++ b/plugin-gradle/src/main/java/com/diffplug/gradle/spotless/GroovyExtension.java @@ -33,6 +33,7 @@ import com.diffplug.spotless.extra.EquoBasedStepBuilder; import com.diffplug.spotless.extra.groovy.GrEclipseFormatterStep; import com.diffplug.spotless.generic.LicenseHeaderStep; +import com.diffplug.spotless.groovy.RemoveSemiColonsStep; import com.diffplug.spotless.java.ImportOrderStep; public class GroovyExtension extends FormatExtension implements HasBuiltinDelimiterForLicense, JvmLang { @@ -69,6 +70,10 @@ public void importOrder(String... importOrder) { addStep(ImportOrderStep.forGroovy().createFrom(importOrder)); } + public void removeSemiColons() { + addStep(RemoveSemiColonsStep.create()); + } + public void importOrderFile(Object importOrderFile) { Objects.requireNonNull(importOrderFile); addStep(ImportOrderStep.forGroovy().createFrom(getProject().file(importOrderFile))); diff --git a/plugin-gradle/src/main/java/com/diffplug/gradle/spotless/GroovyGradleExtension.java b/plugin-gradle/src/main/java/com/diffplug/gradle/spotless/GroovyGradleExtension.java index 30cb75a2a3..d5d3adea77 100644 --- a/plugin-gradle/src/main/java/com/diffplug/gradle/spotless/GroovyGradleExtension.java +++ b/plugin-gradle/src/main/java/com/diffplug/gradle/spotless/GroovyGradleExtension.java @@ -1,5 +1,5 @@ /* - * Copyright 2016-2020 DiffPlug + * Copyright 2016-2023 DiffPlug * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -20,6 +20,7 @@ import javax.inject.Inject; import com.diffplug.spotless.extra.groovy.GrEclipseFormatterStep; +import com.diffplug.spotless.groovy.RemoveSemiColonsStep; import com.diffplug.spotless.java.ImportOrderStep; public class GroovyGradleExtension extends FormatExtension { @@ -40,6 +41,10 @@ public void importOrderFile(Object importOrderFile) { addStep(ImportOrderStep.forGroovy().createFrom(getProject().file(importOrderFile))); } + public void removeSemiColons(String... arguments) { + addStep(RemoveSemiColonsStep.create()); + } + public GroovyExtension.GrEclipseConfig greclipse() { return new GroovyExtension.GrEclipseConfig(GrEclipseFormatterStep.defaultVersion(), this); } diff --git a/plugin-gradle/src/test/java/com/diffplug/gradle/spotless/GroovyExtensionTest.java b/plugin-gradle/src/test/java/com/diffplug/gradle/spotless/GroovyExtensionTest.java index c38df40d54..8854316a65 100644 --- a/plugin-gradle/src/test/java/com/diffplug/gradle/spotless/GroovyExtensionTest.java +++ b/plugin-gradle/src/test/java/com/diffplug/gradle/spotless/GroovyExtensionTest.java @@ -88,6 +88,31 @@ void excludeJavaWithCustomTarget() throws IOException { assertThat(error).hasMessageContaining("'excludeJava' is not supported"); } + @Test + void removeSemiColons() throws IOException { + setFile("build.gradle").toLines( + "plugins {", + " id 'com.diffplug.spotless'", + "}", + "apply plugin: 'groovy'", + "", + "spotless {", + " groovy {", + " removeSemiColons()", + " }", + "}"); + + String withSemiColons = getTestResource("groovy/removesemicolons/GroovyCodeWithSemiColons.test"); + String withoutSemiColons = getTestResource("groovy/removesemicolons/GroovyCodeWithSemiColonsFormatted.test"); + + setFile("src/main/groovy/test.groovy").toContent(withSemiColons); + + gradleRunner().withArguments("spotlessApply").build(); + + assertFile("src/main/groovy/test.groovy").hasContent(withoutSemiColons); + + } + @Test void groovyPluginMissingCheck() throws IOException { setFile("build.gradle").toLines( diff --git a/plugin-maven/src/main/java/com/diffplug/spotless/maven/groovy/RemoveSemiColons.java b/plugin-maven/src/main/java/com/diffplug/spotless/maven/groovy/RemoveSemiColons.java index 60642dec7a..1a88de2a9a 100644 --- a/plugin-maven/src/main/java/com/diffplug/spotless/maven/groovy/RemoveSemiColons.java +++ b/plugin-maven/src/main/java/com/diffplug/spotless/maven/groovy/RemoveSemiColons.java @@ -15,11 +15,8 @@ */ package com.diffplug.spotless.maven.groovy; - -import com.diffplug.spotless.groovy.RemoveSemiColonsStep; - - import com.diffplug.spotless.FormatterStep; +import com.diffplug.spotless.groovy.RemoveSemiColonsStep; import com.diffplug.spotless.maven.FormatterStepConfig; import com.diffplug.spotless.maven.FormatterStepFactory; diff --git a/plugin-maven/src/test/java/com/diffplug/spotless/maven/groovy/RemoveSemiColonsTest.java b/plugin-maven/src/test/java/com/diffplug/spotless/maven/groovy/RemoveSemiColonsTest.java index 574f099752..ff747974a3 100644 --- a/plugin-maven/src/test/java/com/diffplug/spotless/maven/groovy/RemoveSemiColonsTest.java +++ b/plugin-maven/src/test/java/com/diffplug/spotless/maven/groovy/RemoveSemiColonsTest.java @@ -1,9 +1,24 @@ +/* + * Copyright 2023 DiffPlug + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ package com.diffplug.spotless.maven.groovy; -import com.diffplug.spotless.maven.MavenIntegrationHarness; - import org.junit.jupiter.api.Test; +import com.diffplug.spotless.maven.MavenIntegrationHarness; + class RemoveSemiColonsTest extends MavenIntegrationHarness { @Test From 5781dea7679fb5be6a652fe5d8aa4a9920dc47e8 Mon Sep 17 00:00:00 2001 From: Jose Luis Badano Date: Sat, 11 Nov 2023 10:15:28 -0300 Subject: [PATCH 5/5] Renamed SemiColons to Semicolons --- ...lonsStep.java => RemoveSemicolonsStep.java} | 16 ++++++++-------- .../gradle/spotless/GroovyExtension.java | 6 +++--- .../gradle/spotless/GroovyGradleExtension.java | 6 +++--- .../gradle/spotless/GroovyExtensionTest.java | 12 ++++++------ .../diffplug/spotless/maven/groovy/Groovy.java | 4 ++-- ...veSemiColons.java => RemoveSemicolons.java} | 6 +++--- ...lonsTest.java => RemoveSemicolonsTest.java} | 18 +++++++++--------- ...lons.test => GroovyCodeWithSemicolons.test} | 0 ... => GroovyCodeWithSemicolonsFormatted.test} | 0 9 files changed, 34 insertions(+), 34 deletions(-) rename lib/src/main/java/com/diffplug/spotless/groovy/{RemoveSemiColonsStep.java => RemoveSemicolonsStep.java} (83%) rename plugin-maven/src/main/java/com/diffplug/spotless/maven/groovy/{RemoveSemiColons.java => RemoveSemicolons.java} (84%) rename plugin-maven/src/test/java/com/diffplug/spotless/maven/groovy/{RemoveSemiColonsTest.java => RemoveSemicolonsTest.java} (76%) rename testlib/src/main/resources/groovy/removesemicolons/{GroovyCodeWithSemiColons.test => GroovyCodeWithSemicolons.test} (100%) rename testlib/src/main/resources/groovy/removesemicolons/{GroovyCodeWithSemiColonsFormatted.test => GroovyCodeWithSemicolonsFormatted.test} (100%) diff --git a/lib/src/main/java/com/diffplug/spotless/groovy/RemoveSemiColonsStep.java b/lib/src/main/java/com/diffplug/spotless/groovy/RemoveSemicolonsStep.java similarity index 83% rename from lib/src/main/java/com/diffplug/spotless/groovy/RemoveSemiColonsStep.java rename to lib/src/main/java/com/diffplug/spotless/groovy/RemoveSemicolonsStep.java index 1dc925f184..cfe46a1390 100644 --- a/lib/src/main/java/com/diffplug/spotless/groovy/RemoveSemiColonsStep.java +++ b/lib/src/main/java/com/diffplug/spotless/groovy/RemoveSemicolonsStep.java @@ -27,9 +27,9 @@ * * @author Jose Luis Badano */ -public final class RemoveSemiColonsStep { +public final class RemoveSemicolonsStep { - private RemoveSemiColonsStep() { + private RemoveSemicolonsStep() { // prevent instantiation } @@ -38,7 +38,7 @@ private RemoveSemiColonsStep() { public static FormatterStep create() { return FormatterStep.createLazy(NAME, State::new, - RemoveSemiColonsStep.State::toFormatter); + RemoveSemicolonsStep.State::toFormatter); } private static final class State implements Serializable { @@ -50,7 +50,7 @@ FormatterFunc toFormatter() { StringBuilder result = new StringBuilder(); String line; while ((line = reader.readLine()) != null) { - result.append(removeSemiColon(line)); + result.append(removeSemicolon(line)); result.append(System.lineSeparator()); } return result.toString(); @@ -64,11 +64,11 @@ FormatterFunc toFormatter() { * @param line the line to remove the semicolon from * @return the line without the last semicolon */ - private String removeSemiColon(String line) { + private String removeSemicolon(String line) { // find last semicolon in a string a remove it - int lastSemiColon = line.lastIndexOf(";"); - if (lastSemiColon != -1 && lastSemiColon == line.length() - 1) { - return line.substring(0, lastSemiColon); + int lastSemicolon = line.lastIndexOf(";"); + if (lastSemicolon != -1 && lastSemicolon == line.length() - 1) { + return line.substring(0, lastSemicolon); } else { return line; } diff --git a/plugin-gradle/src/main/java/com/diffplug/gradle/spotless/GroovyExtension.java b/plugin-gradle/src/main/java/com/diffplug/gradle/spotless/GroovyExtension.java index ebe0c0c032..29cf5fb054 100644 --- a/plugin-gradle/src/main/java/com/diffplug/gradle/spotless/GroovyExtension.java +++ b/plugin-gradle/src/main/java/com/diffplug/gradle/spotless/GroovyExtension.java @@ -33,7 +33,7 @@ import com.diffplug.spotless.extra.EquoBasedStepBuilder; import com.diffplug.spotless.extra.groovy.GrEclipseFormatterStep; import com.diffplug.spotless.generic.LicenseHeaderStep; -import com.diffplug.spotless.groovy.RemoveSemiColonsStep; +import com.diffplug.spotless.groovy.RemoveSemicolonsStep; import com.diffplug.spotless.java.ImportOrderStep; public class GroovyExtension extends FormatExtension implements HasBuiltinDelimiterForLicense, JvmLang { @@ -70,8 +70,8 @@ public void importOrder(String... importOrder) { addStep(ImportOrderStep.forGroovy().createFrom(importOrder)); } - public void removeSemiColons() { - addStep(RemoveSemiColonsStep.create()); + public void removeSemicolons() { + addStep(RemoveSemicolonsStep.create()); } public void importOrderFile(Object importOrderFile) { diff --git a/plugin-gradle/src/main/java/com/diffplug/gradle/spotless/GroovyGradleExtension.java b/plugin-gradle/src/main/java/com/diffplug/gradle/spotless/GroovyGradleExtension.java index d5d3adea77..c6520ba8e4 100644 --- a/plugin-gradle/src/main/java/com/diffplug/gradle/spotless/GroovyGradleExtension.java +++ b/plugin-gradle/src/main/java/com/diffplug/gradle/spotless/GroovyGradleExtension.java @@ -20,7 +20,7 @@ import javax.inject.Inject; import com.diffplug.spotless.extra.groovy.GrEclipseFormatterStep; -import com.diffplug.spotless.groovy.RemoveSemiColonsStep; +import com.diffplug.spotless.groovy.RemoveSemicolonsStep; import com.diffplug.spotless.java.ImportOrderStep; public class GroovyGradleExtension extends FormatExtension { @@ -41,8 +41,8 @@ public void importOrderFile(Object importOrderFile) { addStep(ImportOrderStep.forGroovy().createFrom(getProject().file(importOrderFile))); } - public void removeSemiColons(String... arguments) { - addStep(RemoveSemiColonsStep.create()); + public void removeSemicolons(String... arguments) { + addStep(RemoveSemicolonsStep.create()); } public GroovyExtension.GrEclipseConfig greclipse() { diff --git a/plugin-gradle/src/test/java/com/diffplug/gradle/spotless/GroovyExtensionTest.java b/plugin-gradle/src/test/java/com/diffplug/gradle/spotless/GroovyExtensionTest.java index 8854316a65..d7a24b4245 100644 --- a/plugin-gradle/src/test/java/com/diffplug/gradle/spotless/GroovyExtensionTest.java +++ b/plugin-gradle/src/test/java/com/diffplug/gradle/spotless/GroovyExtensionTest.java @@ -89,7 +89,7 @@ void excludeJavaWithCustomTarget() throws IOException { } @Test - void removeSemiColons() throws IOException { + void removeSemicolons() throws IOException { setFile("build.gradle").toLines( "plugins {", " id 'com.diffplug.spotless'", @@ -98,18 +98,18 @@ void removeSemiColons() throws IOException { "", "spotless {", " groovy {", - " removeSemiColons()", + " removeSemicolons()", " }", "}"); - String withSemiColons = getTestResource("groovy/removesemicolons/GroovyCodeWithSemiColons.test"); - String withoutSemiColons = getTestResource("groovy/removesemicolons/GroovyCodeWithSemiColonsFormatted.test"); + String withSemicolons = getTestResource("groovy/removesemicolons/GroovyCodeWithSemicolons.test"); + String withoutSemicolons = getTestResource("groovy/removesemicolons/GroovyCodeWithSemicolonsFormatted.test"); - setFile("src/main/groovy/test.groovy").toContent(withSemiColons); + setFile("src/main/groovy/test.groovy").toContent(withSemicolons); gradleRunner().withArguments("spotlessApply").build(); - assertFile("src/main/groovy/test.groovy").hasContent(withoutSemiColons); + assertFile("src/main/groovy/test.groovy").hasContent(withoutSemicolons); } diff --git a/plugin-maven/src/main/java/com/diffplug/spotless/maven/groovy/Groovy.java b/plugin-maven/src/main/java/com/diffplug/spotless/maven/groovy/Groovy.java index 980c37841f..db4b35dfd6 100644 --- a/plugin-maven/src/main/java/com/diffplug/spotless/maven/groovy/Groovy.java +++ b/plugin-maven/src/main/java/com/diffplug/spotless/maven/groovy/Groovy.java @@ -53,7 +53,7 @@ public void addImportOrder(ImportOrder importOrder) { addStepFactory(importOrder); } - public void addRemoveSemiColons(RemoveSemiColons removeSemiColons) { - addStepFactory(removeSemiColons); + public void addRemoveSemicolons(RemoveSemicolons removeSemicolons) { + addStepFactory(removeSemicolons); } } diff --git a/plugin-maven/src/main/java/com/diffplug/spotless/maven/groovy/RemoveSemiColons.java b/plugin-maven/src/main/java/com/diffplug/spotless/maven/groovy/RemoveSemicolons.java similarity index 84% rename from plugin-maven/src/main/java/com/diffplug/spotless/maven/groovy/RemoveSemiColons.java rename to plugin-maven/src/main/java/com/diffplug/spotless/maven/groovy/RemoveSemicolons.java index 1a88de2a9a..a96a078692 100644 --- a/plugin-maven/src/main/java/com/diffplug/spotless/maven/groovy/RemoveSemiColons.java +++ b/plugin-maven/src/main/java/com/diffplug/spotless/maven/groovy/RemoveSemicolons.java @@ -16,14 +16,14 @@ package com.diffplug.spotless.maven.groovy; import com.diffplug.spotless.FormatterStep; -import com.diffplug.spotless.groovy.RemoveSemiColonsStep; +import com.diffplug.spotless.groovy.RemoveSemicolonsStep; import com.diffplug.spotless.maven.FormatterStepConfig; import com.diffplug.spotless.maven.FormatterStepFactory; -public class RemoveSemiColons implements FormatterStepFactory { +public class RemoveSemicolons implements FormatterStepFactory { @Override public FormatterStep newFormatterStep(FormatterStepConfig config) { - return RemoveSemiColonsStep.create(); + return RemoveSemicolonsStep.create(); } } diff --git a/plugin-maven/src/test/java/com/diffplug/spotless/maven/groovy/RemoveSemiColonsTest.java b/plugin-maven/src/test/java/com/diffplug/spotless/maven/groovy/RemoveSemicolonsTest.java similarity index 76% rename from plugin-maven/src/test/java/com/diffplug/spotless/maven/groovy/RemoveSemiColonsTest.java rename to plugin-maven/src/test/java/com/diffplug/spotless/maven/groovy/RemoveSemicolonsTest.java index ff747974a3..af3846e1d8 100644 --- a/plugin-maven/src/test/java/com/diffplug/spotless/maven/groovy/RemoveSemiColonsTest.java +++ b/plugin-maven/src/test/java/com/diffplug/spotless/maven/groovy/RemoveSemicolonsTest.java @@ -19,28 +19,28 @@ import com.diffplug.spotless.maven.MavenIntegrationHarness; -class RemoveSemiColonsTest extends MavenIntegrationHarness { +class RemoveSemicolonsTest extends MavenIntegrationHarness { @Test - void testRemoveSemiColonsString() throws Exception { - writePomWithGroovySteps(""); + void testRemoveSemicolonsString() throws Exception { + writePomWithGroovySteps(""); runTest("Hello World;", "Hello World"); } @Test - void testNotRemoveSemiColonsString() throws Exception { - writePomWithGroovySteps(""); + void testNotRemoveSemicolonsString() throws Exception { + writePomWithGroovySteps(""); runTest("Hello;World", "Hello;World"); } @Test - void testRemoveSemiColons() throws Exception { - writePomWithGroovySteps(""); + void testRemoveSemicolons() throws Exception { + writePomWithGroovySteps(""); String path = "src/main/groovy/test.groovy"; - setFile(path).toResource("groovy/removesemicolons/GroovyCodeWithSemiColons.test"); + setFile(path).toResource("groovy/removesemicolons/GroovyCodeWithSemicolons.test"); mavenRunner().withArguments("spotless:apply").runNoError(); - assertFile(path).sameAsResource("groovy/removesemicolons/GroovyCodeWithSemiColonsFormatted.test"); + assertFile(path).sameAsResource("groovy/removesemicolons/GroovyCodeWithSemicolonsFormatted.test"); } diff --git a/testlib/src/main/resources/groovy/removesemicolons/GroovyCodeWithSemiColons.test b/testlib/src/main/resources/groovy/removesemicolons/GroovyCodeWithSemicolons.test similarity index 100% rename from testlib/src/main/resources/groovy/removesemicolons/GroovyCodeWithSemiColons.test rename to testlib/src/main/resources/groovy/removesemicolons/GroovyCodeWithSemicolons.test diff --git a/testlib/src/main/resources/groovy/removesemicolons/GroovyCodeWithSemiColonsFormatted.test b/testlib/src/main/resources/groovy/removesemicolons/GroovyCodeWithSemicolonsFormatted.test similarity index 100% rename from testlib/src/main/resources/groovy/removesemicolons/GroovyCodeWithSemiColonsFormatted.test rename to testlib/src/main/resources/groovy/removesemicolons/GroovyCodeWithSemicolonsFormatted.test