aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorReinier Zwitserloot <reinier@zwitserloot.com>2012-10-25 00:07:44 +0200
committerReinier Zwitserloot <reinier@zwitserloot.com>2012-10-25 00:07:44 +0200
commitd2808d407a65da9fe1e290a83df0f0da107f0cf8 (patch)
tree80e577330ebef88dbd91c1de59951cbff94af9e8
parent2d216118986115bf309c050cd841bbe8b62b80b3 (diff)
downloadlombok-d2808d407a65da9fe1e290a83df0f0da107f0cf8.tar.gz
lombok-d2808d407a65da9fe1e290a83df0f0da107f0cf8.tar.bz2
lombok-d2808d407a65da9fe1e290a83df0f0da107f0cf8.zip
The testrunner now uses a different mechanism to verify correctness of produced errors and warnings (i.e. we intentionally compile code with errors in them to verify that the appropriate error or warning message is emitted when lombok is active during a compilation run of either javac or ecj) - instead of string comparisons, it's a little more complex. This to enable testing of both javac6 and javac7, even if they produce (slightly) different error output.
Updated all message files in the 'expected output' directories to represent this change.
-rw-r--r--.gitignore3
-rw-r--r--test/core/src/lombok/AbstractRunTests.java64
-rw-r--r--test/core/src/lombok/CompilerMessage.java50
-rw-r--r--test/core/src/lombok/CompilerMessageMatcher.java62
-rw-r--r--test/core/src/lombok/RunTestsViaDelombok.java6
-rw-r--r--test/core/src/lombok/RunTestsViaEcj.java5
-rw-r--r--test/transform/resource/messages-delombok/Accessors.java.messages2
-rw-r--r--test/transform/resource/messages-delombok/ConflictingStaticConstructorNames.java.messages2
-rw-r--r--test/transform/resource/messages-delombok/EqualsAndHashCodeWithExistingMethods.java.messages6
-rw-r--r--test/transform/resource/messages-delombok/FieldDefaultsNoop.java.messages2
-rw-r--r--test/transform/resource/messages-delombok/GetterAlreadyExists.java.messages16
-rw-r--r--test/transform/resource/messages-delombok/GetterBoolean.java.messages2
-rw-r--r--test/transform/resource/messages-delombok/GetterLazyInvalid.java.messages12
-rw-r--r--test/transform/resource/messages-delombok/GetterOnMethod.java.messages24
-rw-r--r--test/transform/resource/messages-delombok/LoggerSlf4jAlreadyExists.java.messages2
-rw-r--r--test/transform/resource/messages-delombok/LoggerSlf4jOnNonStaticInnerClass.java.messages2
-rw-r--r--test/transform/resource/messages-delombok/LoggerSlf4jOnNonType.java.messages2
-rw-r--r--test/transform/resource/messages-delombok/LoggerSlf4jTypes.java.messages4
-rw-r--r--test/transform/resource/messages-delombok/SetterAlreadyExists.java.messages14
-rw-r--r--test/transform/resource/messages-delombok/SetterOnMethod.java.messages24
-rw-r--r--test/transform/resource/messages-delombok/SetterOnParam.java.messages24
-rw-r--r--test/transform/resource/messages-delombok/SetterOnParamAndOnMethod.java.messages8
-rw-r--r--test/transform/resource/messages-delombok/SimpleTypeResolution.java.messages10
-rw-r--r--test/transform/resource/messages-delombok/SynchronizedNameNoSuchField.java.messages2
-rw-r--r--test/transform/resource/messages-delombok/SynchronizedNameStaticToInstanceRef.java.messages2
-rw-r--r--test/transform/resource/messages-delombok/ValErrors.java.messages4
-rw-r--r--test/transform/resource/messages-delombok/ValInBasicFor.java.messages6
-rw-r--r--test/transform/resource/messages-delombok/WitherAlreadyExists.java.messages14
-rw-r--r--test/transform/resource/messages-delombok/WitherOnStatic.java.messages4
-rw-r--r--test/transform/resource/messages-delombok/WitherWithDollar.java.messages2
-rw-r--r--test/transform/resource/messages-ecj/Accessors.java.messages2
-rw-r--r--test/transform/resource/messages-ecj/ConflictingStaticConstructorNames.java.messages2
-rw-r--r--test/transform/resource/messages-ecj/EqualsAndHashCodeWithExistingMethods.java.messages6
-rw-r--r--test/transform/resource/messages-ecj/FieldDefaultsNoop.java.messages2
-rw-r--r--test/transform/resource/messages-ecj/GetterAlreadyExists.java.messages16
-rw-r--r--test/transform/resource/messages-ecj/GetterBoolean.java.messages2
-rw-r--r--test/transform/resource/messages-ecj/GetterLazyInvalid.java.messages12
-rw-r--r--test/transform/resource/messages-ecj/GetterOnMethod.java.messages4
-rw-r--r--test/transform/resource/messages-ecj/LoggerSlf4jAlreadyExists.java.messages2
-rw-r--r--test/transform/resource/messages-ecj/LoggerSlf4jOnNonStaticInnerClass.java.messages2
-rw-r--r--test/transform/resource/messages-ecj/LoggerSlf4jOnNonType.java.messages2
-rw-r--r--test/transform/resource/messages-ecj/LoggerSlf4jTypes.java.messages4
-rw-r--r--test/transform/resource/messages-ecj/SetterAlreadyExists.java.messages14
-rw-r--r--test/transform/resource/messages-ecj/SetterOnMethod.java.messages4
-rw-r--r--test/transform/resource/messages-ecj/SetterOnParam.java.messages4
-rw-r--r--test/transform/resource/messages-ecj/SimpleTypeResolution.java.messages2
-rw-r--r--test/transform/resource/messages-ecj/SynchronizedName.java.messages2
-rw-r--r--test/transform/resource/messages-ecj/SynchronizedNameNoSuchField.java.messages2
-rw-r--r--test/transform/resource/messages-ecj/SynchronizedNameStaticToInstanceRef.java.messages2
-rw-r--r--test/transform/resource/messages-ecj/ValErrors.java.messages4
-rw-r--r--test/transform/resource/messages-ecj/ValInBasicFor.java.messages8
-rw-r--r--test/transform/resource/messages-ecj/ValRawType.java.messages2
-rw-r--r--test/transform/resource/messages-ecj/WitherAlreadyExists.java.messages14
-rw-r--r--test/transform/resource/messages-ecj/WitherOnStatic.java.messages4
-rw-r--r--test/transform/resource/messages-ecj/WitherWithDollar.java.messages2
-rw-r--r--test/transform/resource/messages-idempotent/SimpleTypeResolution.java.messages10
-rw-r--r--test/transform/resource/messages-idempotent/SynchronizedNameStaticToInstanceRef.java.messages2
-rw-r--r--test/transform/resource/messages-idempotent/ValErrors.java.messages10
-rw-r--r--test/transform/resource/messages-idempotent/ValInBasicFor.java.messages6
59 files changed, 320 insertions, 208 deletions
diff --git a/.gitignore b/.gitignore
index bc8b4ec0..7fb9cc6b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -5,8 +5,7 @@
/ivyCache
/google.properties
/debug
-/LombokizedEclipse.launch
-/RunLombokTests.launch
+/*.launch
/escudo-upload.key
/findbugsReport.html
/lib
diff --git a/test/core/src/lombok/AbstractRunTests.java b/test/core/src/lombok/AbstractRunTests.java
index 02c4803a..676426f4 100644
--- a/test/core/src/lombok/AbstractRunTests.java
+++ b/test/core/src/lombok/AbstractRunTests.java
@@ -25,13 +25,19 @@ import static org.junit.Assert.*;
import java.io.BufferedReader;
import java.io.File;
+import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
+import java.io.InputStream;
import java.io.StringReader;
import java.io.StringWriter;
import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.LinkedHashSet;
import java.util.List;
public abstract class AbstractRunTests {
@@ -43,11 +49,23 @@ public abstract class AbstractRunTests {
}
public boolean compareFile(DirectoryRunner.TestParams params, File file) throws Throwable {
- StringBuilder messages = new StringBuilder();
+ LinkedHashSet<CompilerMessage> messages = new LinkedHashSet<CompilerMessage>();
StringWriter writer = new StringWriter();
transformCode(messages, writer, file);
String expectedFile = readFile(params.getAfterDirectory(), file, false);
- String expectedMessages = readFile(params.getMessagesDirectory(), file, true);
+ List<CompilerMessageMatcher> expectedMessages = Collections.emptyList();
+ if (params.getMessagesDirectory() != null) {
+ try {
+ InputStream in = new FileInputStream(new File(params.getMessagesDirectory(), file.getName() + ".messages"));
+ try {
+ expectedMessages = CompilerMessageMatcher.readAll(in);
+ } finally {
+ in.close();
+ }
+ } catch (FileNotFoundException ex) {
+ // That's okay - then we expect no messages, and expectedMessages already gets initialized to the empty list.
+ }
+ }
StringReader r = new StringReader(expectedFile);
BufferedReader br = new BufferedReader(r);
@@ -58,13 +76,13 @@ public abstract class AbstractRunTests {
expectedFile,
writer.toString(),
expectedMessages,
- messages.toString(),
+ messages,
params.printErrors());
return true;
}
- protected abstract void transformCode(StringBuilder message, StringWriter result, File file) throws Throwable;
+ protected abstract void transformCode(Collection<CompilerMessage> messages, StringWriter result, File file) throws Throwable;
protected String readFile(File file) throws IOException {
BufferedReader reader;
@@ -107,7 +125,19 @@ public abstract class AbstractRunTests {
}
}
- private void compare(String name, String expectedFile, String actualFile, String expectedMessages, String actualMessages, boolean printErrors) throws Throwable {
+ private static void dumpToFile(File file, Collection<CompilerMessage> content) throws IOException {
+ FileOutputStream fos = new FileOutputStream(file);
+ try {
+ for (CompilerMessage message : content) {
+ fos.write(message.asCompilerMessageMatcher().toString().getBytes("UTF-8"));
+ fos.write('\n');
+ }
+ } finally {
+ fos.close();
+ }
+ }
+
+ private void compare(String name, String expectedFile, String actualFile, List<CompilerMessageMatcher> expectedMessages, LinkedHashSet<CompilerMessage> actualMessages, boolean printErrors) throws Throwable {
try {
compareContent(name, expectedFile, actualFile);
} catch (Throwable e) {
@@ -129,8 +159,9 @@ public abstract class AbstractRunTests {
}
throw e;
}
+
try {
- compareContent(name, expectedMessages, actualMessages);
+ compareMessages(name, expectedMessages, actualMessages);
} catch (Throwable e) {
if (printErrors) {
System.out.println("***** " + name + " *****");
@@ -148,6 +179,27 @@ public abstract class AbstractRunTests {
}
}
+ private static void compareMessages(String name, List<CompilerMessageMatcher> expected, LinkedHashSet<CompilerMessage> actual) {
+ Iterator<CompilerMessageMatcher> expectedIterator = expected.iterator();
+ Iterator<CompilerMessage> actualIterator = actual.iterator();
+
+ while (true) {
+ boolean exHasNext = expectedIterator.hasNext();
+ boolean acHasNext = actualIterator.hasNext();
+ if (!exHasNext && !acHasNext) break;
+ if (exHasNext && acHasNext) {
+ CompilerMessageMatcher cmm = expectedIterator.next();
+ CompilerMessage cm = actualIterator.next();
+ if (cmm.matches(cm)) continue;
+ fail(String.format("[%s] Expected message '%s' but got message '%s'", name, cmm, cm));
+ throw new AssertionError("fail should have aborted already.");
+ }
+ if (exHasNext) fail(String.format("[%s] Expected message '%s' but ran out of actual messages", name, expectedIterator.next()));
+ if (acHasNext) fail(String.format("[%s] Unexpected message: %s", name, actualIterator.next()));
+ throw new AssertionError("fail should have aborted already.");
+ }
+ }
+
private static void compareContent(String name, String expectedFile, String actualFile) {
String[] expectedLines = expectedFile.split("(\\r?\\n)");
String[] actualLines = actualFile.split("(\\r?\\n)");
diff --git a/test/core/src/lombok/CompilerMessage.java b/test/core/src/lombok/CompilerMessage.java
new file mode 100644
index 00000000..d04d17f1
--- /dev/null
+++ b/test/core/src/lombok/CompilerMessage.java
@@ -0,0 +1,50 @@
+package lombok;
+
+public final class CompilerMessage {
+ /** Line Number (starting at 1) */
+ final long line;
+
+ /** Position is either column number, OR position in file starting from the first byte. */
+ final long position;
+ final boolean isError;
+ final String message;
+
+ public CompilerMessage(long line, long position, boolean isError, String message) {
+ this.line = line;
+ this.position = position;
+ this.isError = isError;
+ this.message = message;
+ }
+
+ @Override public int hashCode() {
+ final int prime = 31;
+ int result = 1;
+ result = prime * result + (isError ? 1231 : 1237);
+ result = prime * result + (int) (line ^ (line >>> 32));
+ result = prime * result + ((message == null) ? 0 : message.hashCode());
+ result = prime * result + (int) (position ^ (position >>> 32));
+ return result;
+ }
+
+ @Override public boolean equals(Object obj) {
+ if (this == obj) return true;
+ if (obj == null) return false;
+ if (getClass() != obj.getClass()) return false;
+ CompilerMessage other = (CompilerMessage) obj;
+ if (isError != other.isError) return false;
+ if (line != other.line) return false;
+ if (message == null) {
+ if (other.message != null) return false;
+ } else if (!message.equals(other.message)) return false;
+ if (position != other.position) return false;
+ return true;
+ }
+
+ public CompilerMessageMatcher asCompilerMessageMatcher() {
+ return new CompilerMessageMatcher(line, position, message);
+ }
+
+ @Override public String toString() {
+ return String.format("%d:%d %s %s", line, position, isError ? "ERROR" : "WARNING", message);
+ }
+}
diff --git a/test/core/src/lombok/CompilerMessageMatcher.java b/test/core/src/lombok/CompilerMessageMatcher.java
new file mode 100644
index 00000000..b7902395
--- /dev/null
+++ b/test/core/src/lombok/CompilerMessageMatcher.java
@@ -0,0 +1,62 @@
+package lombok;
+
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.List;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+public class CompilerMessageMatcher {
+ /** Line Number (starting at 1) */
+ private final long line;
+
+ /** Position is either column number, OR position in file starting from the first byte. */
+ private final long position;
+ private final Collection<String> messageParts;
+
+ public CompilerMessageMatcher(long line, long position, String message) {
+ this.line = line;
+ this.position = position;
+ this.messageParts = Arrays.asList(message.split("\\s+"));
+ }
+
+ @Override public String toString() {
+ StringBuilder parts = new StringBuilder();
+ for (String part : messageParts) parts.append(part).append(" ");
+ if (parts.length() > 0) parts.setLength(parts.length() - 1);
+ return String.format("%d:%d %s", line, position, parts);
+ }
+
+ public boolean matches(CompilerMessage message) {
+ if (message.line != this.line) return false;
+ if (message.position != this.position) return false;
+ for (String token : messageParts) {
+ if (!message.message.contains(token)) return false;
+ }
+ return true;
+ }
+
+ public static List<CompilerMessageMatcher> readAll(InputStream rawIn) throws IOException {
+ BufferedReader in = new BufferedReader(new InputStreamReader(rawIn, "UTF-8"));
+ List<CompilerMessageMatcher> out = new ArrayList<CompilerMessageMatcher>();
+ for (String line = in.readLine(); line != null; line = in.readLine()) {
+ CompilerMessageMatcher cmm = read(line);
+ if (cmm != null) out.add(cmm);
+ }
+ return out;
+ }
+
+ private static final Pattern PATTERN = Pattern.compile("^(\\d+):(\\d+) (.*)$");
+ private static CompilerMessageMatcher read(String line) {
+ line = line.trim();
+ if (line.isEmpty()) return null;
+ Matcher m = PATTERN.matcher(line);
+ if (!m.matches()) throw new IllegalArgumentException("Typo in test file: " + line);
+ return new CompilerMessageMatcher(Integer.parseInt(m.group(1)), Integer.parseInt(m.group(2)), m.group(3));
+ }
+}
diff --git a/test/core/src/lombok/RunTestsViaDelombok.java b/test/core/src/lombok/RunTestsViaDelombok.java
index e58cffc0..16eae8d3 100644
--- a/test/core/src/lombok/RunTestsViaDelombok.java
+++ b/test/core/src/lombok/RunTestsViaDelombok.java
@@ -23,11 +23,13 @@ package lombok;
import java.io.File;
import java.io.StringWriter;
+import java.util.Collection;
import java.util.Locale;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import javax.tools.Diagnostic;
+import javax.tools.Diagnostic.Kind;
import javax.tools.DiagnosticListener;
import javax.tools.JavaFileObject;
@@ -37,7 +39,7 @@ public class RunTestsViaDelombok extends AbstractRunTests {
private Delombok delombok = new Delombok();
@Override
- public void transformCode(final StringBuilder messages, StringWriter result, final File file) throws Throwable {
+ public void transformCode(final Collection<CompilerMessage> messages, StringWriter result, final File file) throws Throwable {
delombok.setVerbose(false);
delombok.setForceProcess(true);
delombok.setCharset("UTF-8");
@@ -49,7 +51,7 @@ public class RunTestsViaDelombok extends AbstractRunTests {
"^" + Pattern.quote(file.getAbsolutePath()) +
"\\s*:\\s*\\d+\\s*:\\s*(?:warning:\\s*)?(.*)$", Pattern.DOTALL).matcher(msg);
if (m.matches()) msg = m.group(1);
- messages.append(String.format("%d:%d %s %s\n", d.getLineNumber(), d.getColumnNumber(), d.getKind(), msg));
+ messages.add(new CompilerMessage(d.getLineNumber(), d.getColumnNumber(), d.getKind() == Kind.ERROR, msg));
}
});
diff --git a/test/core/src/lombok/RunTestsViaEcj.java b/test/core/src/lombok/RunTestsViaEcj.java
index 5c573efd..112f07f9 100644
--- a/test/core/src/lombok/RunTestsViaEcj.java
+++ b/test/core/src/lombok/RunTestsViaEcj.java
@@ -25,6 +25,7 @@ import java.io.File;
import java.io.StringWriter;
import java.util.ArrayList;
import java.util.Arrays;
+import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
@@ -84,7 +85,7 @@ public class RunTestsViaEcj extends AbstractRunTests {
}
@Override
- public void transformCode(final StringBuilder messages, StringWriter result, File file) throws Throwable {
+ public void transformCode(Collection<CompilerMessage> messages, StringWriter result, File file) throws Throwable {
final AtomicReference<CompilationResult> compilationResult_ = new AtomicReference<CompilationResult>();
final AtomicReference<CompilationUnitDeclaration> compilationUnit_ = new AtomicReference<CompilationUnitDeclaration>();
ICompilerRequestor bitbucketRequestor = new ICompilerRequestor() {
@@ -109,7 +110,7 @@ public class RunTestsViaEcj extends AbstractRunTests {
CategorizedProblem[] problems = compilationResult.getAllProblems();
if (problems != null) for (CategorizedProblem p : problems) {
- messages.append(String.format("%d %s %s\n", p.getSourceLineNumber(), p.isError() ? "error" : p.isWarning() ? "warning" : "unknown", p.getMessage()));
+ messages.add(new CompilerMessage(p.getSourceLineNumber(), p.getSourceStart(), p.isError(), p.getMessage()));
}
CompilationUnitDeclaration cud = compilationUnit_.get();
diff --git a/test/transform/resource/messages-delombok/Accessors.java.messages b/test/transform/resource/messages-delombok/Accessors.java.messages
index 4c7a0daa..367621bd 100644
--- a/test/transform/resource/messages-delombok/Accessors.java.messages
+++ b/test/transform/resource/messages-delombok/Accessors.java.messages
@@ -1 +1 @@
-19:9 WARNING Not generating setter for this field: It does not fit your @Accessors prefix list. \ No newline at end of file
+19:9 Not generating setter for this field: It does not fit your @Accessors prefix list. \ No newline at end of file
diff --git a/test/transform/resource/messages-delombok/ConflictingStaticConstructorNames.java.messages b/test/transform/resource/messages-delombok/ConflictingStaticConstructorNames.java.messages
index 40366cd7..06b88c10 100644
--- a/test/transform/resource/messages-delombok/ConflictingStaticConstructorNames.java.messages
+++ b/test/transform/resource/messages-delombok/ConflictingStaticConstructorNames.java.messages
@@ -1 +1 @@
-1:1 WARNING Ignoring static constructor name: explicit @XxxArgsConstructor annotation present; its `staticName` parameter will be used.
+1:1 Ignoring static constructor name: explicit @XxxArgsConstructor annotation present; its `staticName` parameter will be used.
diff --git a/test/transform/resource/messages-delombok/EqualsAndHashCodeWithExistingMethods.java.messages b/test/transform/resource/messages-delombok/EqualsAndHashCodeWithExistingMethods.java.messages
index dd78e67f..057a7521 100644
--- a/test/transform/resource/messages-delombok/EqualsAndHashCodeWithExistingMethods.java.messages
+++ b/test/transform/resource/messages-delombok/EqualsAndHashCodeWithExistingMethods.java.messages
@@ -1,3 +1,3 @@
-1:1 WARNING Not generating equals, hashCode and canEquals: A method with one of those names already exists. (Either all or none of these methods will be generated).
-10:1 WARNING Not generating equals and hashCode: A method with one of those names already exists. (Either all or none of these methods will be generated).
-19:1 WARNING Not generating equals, hashCode and canEquals: A method with one of those names already exists. (Either all or none of these methods will be generated).
+1:1 Not generating equals, hashCode and canEquals: A method with one of those names already exists. (Either all or none of these methods will be generated).
+10:1 Not generating equals and hashCode: A method with one of those names already exists. (Either all or none of these methods will be generated).
+19:1 Not generating equals, hashCode and canEquals: A method with one of those names already exists. (Either all or none of these methods will be generated).
diff --git a/test/transform/resource/messages-delombok/FieldDefaultsNoop.java.messages b/test/transform/resource/messages-delombok/FieldDefaultsNoop.java.messages
index 65fed477..ae5dd265 100644
--- a/test/transform/resource/messages-delombok/FieldDefaultsNoop.java.messages
+++ b/test/transform/resource/messages-delombok/FieldDefaultsNoop.java.messages
@@ -1 +1 @@
-1:1 ERROR This does nothing; provide either level or makeFinal or both. \ No newline at end of file
+1:1 This does nothing; provide either level or makeFinal or both. \ No newline at end of file
diff --git a/test/transform/resource/messages-delombok/GetterAlreadyExists.java.messages b/test/transform/resource/messages-delombok/GetterAlreadyExists.java.messages
index 302bbced..7a326742 100644
--- a/test/transform/resource/messages-delombok/GetterAlreadyExists.java.messages
+++ b/test/transform/resource/messages-delombok/GetterAlreadyExists.java.messages
@@ -1,8 +1,8 @@
-8:9 WARNING Not generating isFoo(): A method with that name already exists
-14:9 WARNING Not generating isFoo(): A method with that name already exists (getFoo)
-32:9 WARNING Not generating getFoo(): A method with that name already exists
-50:9 WARNING Not generating getFoo(): A method with that name already exists
-62:9 WARNING Not generating isFoo(): A method with that name already exists
-68:9 WARNING Not generating isFoo(): A method with that name already exists (getFoo)
-86:9 WARNING Not generating getFoo(): A method with that name already exists
-104:9 WARNING Not generating getFoo(): A method with that name already exists
+8:9 Not generating isFoo(): A method with that name already exists
+14:9 Not generating isFoo(): A method with that name already exists (getFoo)
+32:9 Not generating getFoo(): A method with that name already exists
+50:9 Not generating getFoo(): A method with that name already exists
+62:9 Not generating isFoo(): A method with that name already exists
+68:9 Not generating isFoo(): A method with that name already exists (getFoo)
+86:9 Not generating getFoo(): A method with that name already exists
+104:9 Not generating getFoo(): A method with that name already exists
diff --git a/test/transform/resource/messages-delombok/GetterBoolean.java.messages b/test/transform/resource/messages-delombok/GetterBoolean.java.messages
index 3d14bcc9..91ad3512 100644
--- a/test/transform/resource/messages-delombok/GetterBoolean.java.messages
+++ b/