Skip to content

Commit 1ed19a7

Browse files
committed
Refactor EquoResourceHarness to go through StepHarnessWithFile.
1 parent ab1452d commit 1ed19a7

File tree

4 files changed

+18
-60
lines changed

4 files changed

+18
-60
lines changed

lib-extra/src/test/java/com/diffplug/spotless/extra/cpp/EclipseCdtFormatterStepTest.java

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,17 +24,16 @@
2424
import com.diffplug.spotless.extra.eclipse.EquoResourceHarness;
2525

2626
class EclipseCdtFormatterStepTest extends EquoResourceHarness {
27-
private final static String INPUT = "#include <a.h>;\nint main(int argc, \nchar *argv[]) {}";
28-
private final static String EXPECTED = "#include <a.h>;\nint main(int argc, char *argv[]) {\n}\n";
29-
3027
public EclipseCdtFormatterStepTest() {
31-
super(EclipseCdtFormatterStep.createBuilder(TestProvisioner.mavenCentral()), INPUT, EXPECTED);
28+
super(EclipseCdtFormatterStep.createBuilder(TestProvisioner.mavenCentral()));
3229
}
3330

3431
@ParameterizedTest
3532
@MethodSource
3633
void formatWithVersion(String version) throws Exception {
37-
assertFormatted(version);
34+
harnessFor(version).test("main.c",
35+
"#include <a.h>;\nint main(int argc, \nchar *argv[]) {}",
36+
"#include <a.h>;\nint main(int argc, char *argv[]) {\n}\n");
3837
}
3938

4039
private static Stream<String> formatWithVersion() {

lib-extra/src/test/java/com/diffplug/spotless/extra/eclipse/EquoResourceHarness.java

Lines changed: 4 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,12 @@
1515
*/
1616
package com.diffplug.spotless.extra.eclipse;
1717

18-
import static org.assertj.core.api.Assertions.assertThat;
19-
2018
import java.io.File;
2119
import java.util.Arrays;
2220

2321
import com.diffplug.spotless.FormatterStep;
24-
import com.diffplug.spotless.LineEnding;
2522
import com.diffplug.spotless.ResourceHarness;
23+
import com.diffplug.spotless.StepHarnessWithFile;
2624
import com.diffplug.spotless.extra.EquoBasedStepBuilder;
2725

2826
/**
@@ -43,57 +41,19 @@
4341
*/
4442
public class EquoResourceHarness extends ResourceHarness {
4543
private final EquoBasedStepBuilder stepBuilder;
46-
private final String fileName;
47-
private final String input;
48-
private final String expected;
49-
50-
/**
51-
* Create harness to be used for several versions of the formatter step
52-
* @param builder Eclipse Formatter step builder
53-
* @param unformatted Simple unformatted input
54-
* @param formatted Expected formatted output
55-
*/
56-
public EquoResourceHarness(EquoBasedStepBuilder builder, String unformatted, String formatted) {
57-
this(builder, "someSourceFile", unformatted, formatted);
58-
}
5944

6045
/**
6146
* Create harness to be used for several versions of the formatter step
6247
* @param builder Eclipse Formatter step builder
63-
* @param sourceFileName File name of the source file
64-
* @param unformatted Simple unformatted input
65-
* @param formatted Expected formatted output
6648
*/
67-
public EquoResourceHarness(EquoBasedStepBuilder builder, String sourceFileName, String unformatted, String formatted) {
49+
public EquoResourceHarness(EquoBasedStepBuilder builder) {
6850
stepBuilder = builder;
69-
fileName = sourceFileName;
70-
input = unformatted;
71-
expected = formatted;
7251
}
7352

74-
/**
75-
* Assert that formatting input results in expected output
76-
* @param formatterVersion Formatter version
77-
* @param settingsFiles Formatter settings
78-
* @return Formatted string
79-
*/
80-
protected String assertFormatted(String formatterVersion, File... settingsFiles) throws Exception {
81-
String output = format(formatterVersion, settingsFiles);
82-
assertThat(output).isEqualTo(expected);
83-
return output;
84-
}
85-
86-
/**
87-
* Formatting input results and returns output
88-
* @param formatterVersion Formatter version
89-
* @param settingsFiles Formatter settings
90-
* @return Formatted string
91-
*/
92-
protected String format(String formatterVersion, File... settingsFiles) throws Exception {
93-
File inputFile = setFile(fileName).toContent(input);
53+
protected StepHarnessWithFile harnessFor(String formatterVersion, File... settingsFiles) throws Exception {
9454
stepBuilder.setVersion(formatterVersion);
9555
stepBuilder.setPreferences(Arrays.asList(settingsFiles));
9656
FormatterStep step = stepBuilder.build();
97-
return LineEnding.toUnix(step.format(input, inputFile));
57+
return StepHarnessWithFile.forStep(this, step);
9858
}
9959
}

lib-extra/src/test/java/com/diffplug/spotless/extra/groovy/GrEclipseFormatterStepTest.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,13 +28,14 @@ public class GrEclipseFormatterStepTest extends EquoResourceHarness {
2828
private final static String EXPECTED = "class F{\n\tdef m(){}\n}";
2929

3030
public GrEclipseFormatterStepTest() {
31-
super(GrEclipseFormatterStep.createBuilder(TestProvisioner.mavenCentral()), INPUT, EXPECTED);
31+
super(GrEclipseFormatterStep.createBuilder(TestProvisioner.mavenCentral()));
3232
}
3333

3434
@ParameterizedTest
3535
@MethodSource
3636
void formatWithVersion(String version) throws Exception {
37-
assertFormatted(version);
37+
harnessFor(version).test("test.groovy",
38+
"class F{ def m(){} }", "class F{\n\tdef m(){}\n}");
3839
}
3940

4041
private static Stream<String> formatWithVersion() {

lib-extra/src/test/java/com/diffplug/spotless/extra/java/EclipseJdtFormatterStepTest.java

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@
1515
*/
1616
package com.diffplug.spotless.extra.java;
1717

18-
import java.io.File;
1918
import java.util.stream.Stream;
2019

2120
import org.junit.jupiter.api.Nested;
@@ -28,21 +27,20 @@
2827
import com.diffplug.spotless.extra.eclipse.EquoResourceHarness;
2928

3029
class EclipseJdtFormatterStepTest extends EquoResourceHarness {
31-
private final static String INPUT = "package p; class C{}";
32-
private final static String EXPECTED = "package p;\nclass C {\n}";
33-
3430
private static EquoBasedStepBuilder createBuilder() {
3531
return EclipseJdtFormatterStep.createBuilder(TestProvisioner.mavenCentral());
3632
}
3733

3834
public EclipseJdtFormatterStepTest() {
39-
super(createBuilder(), INPUT, EXPECTED);
35+
super(createBuilder());
4036
}
4137

4238
@ParameterizedTest
4339
@MethodSource
4440
void formatWithVersion(String version) throws Exception {
45-
assertFormatted(version);
41+
harnessFor(version).test("test.java",
42+
"package p; class C{}",
43+
"package p;\nclass C {\n}");
4644
}
4745

4846
private static Stream<String> formatWithVersion() {
@@ -53,13 +51,13 @@ private static Stream<String> formatWithVersion() {
5351
@Nested
5452
class NewFormatInterface extends EquoResourceHarness {
5553
public NewFormatInterface() {
56-
super(createBuilder(), "module-info.java", getTestResource("java/eclipse/ModuleInfoUnformatted.test"), getTestResource("java/eclipse/ModuleInfoFormatted.test"));
54+
super(createBuilder());
5755
}
5856

5957
@Test
6058
void formatModuleInfo() throws Exception {
61-
File settingsFile = createTestFile("java/eclipse/ModuleInfo.prefs");
62-
assertFormatted("4.11", settingsFile);
59+
harnessFor("4.11", createTestFile("java/eclipse/ModuleInfo.prefs"))
60+
.testResource("module-info.java", "java/eclipse/ModuleInfoUnformatted.test", "java/eclipse/ModuleInfoFormatted.test");
6361
}
6462
}
6563
}

0 commit comments

Comments
 (0)