aboutsummaryrefslogtreecommitdiff
path: root/test/transform
diff options
context:
space:
mode:
Diffstat (limited to 'test/transform')
-rw-r--r--test/transform/resource/after-delombok/ClassNamedAfterGetter.java7
-rw-r--r--test/transform/resource/after-delombok/CleanupName.java18
-rw-r--r--test/transform/resource/after-delombok/CleanupPlain.java18
-rw-r--r--test/transform/resource/after-delombok/CommentsInterspersed.java16
-rw-r--r--test/transform/resource/after-delombok/DataExtended.java37
-rw-r--r--test/transform/resource/after-delombok/DataIgnore.java36
-rw-r--r--test/transform/resource/after-delombok/DataPlain.java92
-rw-r--r--test/transform/resource/after-delombok/GetterAccessLevel.java49
-rw-r--r--test/transform/resource/after-delombok/GetterAlreadyExists.java140
-rw-r--r--test/transform/resource/after-delombok/GetterBoolean.java23
-rw-r--r--test/transform/resource/after-delombok/GetterOnClass.java59
-rw-r--r--test/transform/resource/after-delombok/GetterPlain.java12
-rw-r--r--test/transform/resource/after-delombok/GetterWithDollar.java15
-rw-r--r--test/transform/resource/after-delombok/NonNullPlain.java25
-rw-r--r--test/transform/resource/after-delombok/SetterAccessLevel.java28
-rw-r--r--test/transform/resource/after-delombok/SetterAlreadyExists.java35
-rw-r--r--test/transform/resource/after-delombok/SetterOnClass.java59
-rw-r--r--test/transform/resource/after-delombok/SetterPlain.java12
-rw-r--r--test/transform/resource/after-delombok/SetterWithDollar.java15
-rw-r--r--test/transform/resource/after-delombok/SneakyThrowsMultiple.java45
-rw-r--r--test/transform/resource/after-delombok/SneakyThrowsPlain.java17
-rw-r--r--test/transform/resource/after-delombok/SneakyThrowsSingle.java26
-rw-r--r--test/transform/resource/after-delombok/SynchronizedName.java25
-rw-r--r--test/transform/resource/after-delombok/SynchronizedPlain.java28
-rw-r--r--test/transform/resource/after-delombok/ToStringInner.java36
-rw-r--r--test/transform/resource/after-delombok/ToStringPlain.java18
-rw-r--r--test/transform/resource/before/ClassNamedAfterGetter.java3
-rw-r--r--test/transform/resource/before/CleanupName.java10
-rw-r--r--test/transform/resource/before/CleanupPlain.java11
-rw-r--r--test/transform/resource/before/CommentsInterspersed.java17
-rw-r--r--test/transform/resource/before/DataExtended.java5
-rw-r--r--test/transform/resource/before/DataIgnore.java4
-rw-r--r--test/transform/resource/before/DataPlain.java9
-rw-r--r--test/transform/resource/before/GetterAccessLevel.java24
-rw-r--r--test/transform/resource/before/GetterAlreadyExists.java108
-rw-r--r--test/transform/resource/before/GetterBoolean.java12
-rw-r--r--test/transform/resource/before/GetterOnClass.java37
-rw-r--r--test/transform/resource/before/GetterPlain.java5
-rw-r--r--test/transform/resource/before/GetterWithDollar.java9
-rw-r--r--test/transform/resource/before/NonNullPlain.java11
-rw-r--r--test/transform/resource/before/SetterAccessLevel.java14
-rw-r--r--test/transform/resource/before/SetterAlreadyExists.java35
-rw-r--r--test/transform/resource/before/SetterOnClass.java37
-rw-r--r--test/transform/resource/before/SetterPlain.java5
-rw-r--r--test/transform/resource/before/SetterWithDollar.java9
-rw-r--r--test/transform/resource/before/SneakyThrowsMultiple.java28
-rw-r--r--test/transform/resource/before/SneakyThrowsPlain.java10
-rw-r--r--test/transform/resource/before/SneakyThrowsSingle.java21
-rw-r--r--test/transform/resource/before/SynchronizedName.java21
-rw-r--r--test/transform/resource/before/SynchronizedPlain.java17
-rw-r--r--test/transform/resource/before/ToStringInner.java16
-rw-r--r--test/transform/resource/before/ToStringPlain.java9
-rw-r--r--test/transform/resource/messages-delombok/GetterAlreadyExists.java.messages10
-rw-r--r--test/transform/resource/messages-delombok/GetterBoolean.java.messages1
-rw-r--r--test/transform/resource/messages-delombok/SetterAlreadyExists.java.messages7
-rw-r--r--test/transform/src/lombok/transform/TestLombokFilesIdempotent.java56
-rw-r--r--test/transform/src/lombok/transform/TestSourceFiles.java52
-rw-r--r--test/transform/src/lombok/transform/TestWithDelombok.java56
58 files changed, 1560 insertions, 0 deletions
diff --git a/test/transform/resource/after-delombok/ClassNamedAfterGetter.java b/test/transform/resource/after-delombok/ClassNamedAfterGetter.java
new file mode 100644
index 00000000..769aaf7c
--- /dev/null
+++ b/test/transform/resource/after-delombok/ClassNamedAfterGetter.java
@@ -0,0 +1,7 @@
+class GetFoo {
+ private int foo;
+ @java.lang.SuppressWarnings("all")
+ public int getFoo() {
+ return this.foo;
+ }
+}
diff --git a/test/transform/resource/after-delombok/CleanupName.java b/test/transform/resource/after-delombok/CleanupName.java
new file mode 100644
index 00000000..cd29eb68
--- /dev/null
+++ b/test/transform/resource/after-delombok/CleanupName.java
@@ -0,0 +1,18 @@
+class CleanupName {
+ void test() {
+ Object o = "Hello World!";
+ try {
+ System.out.println(o);
+ } finally {
+ o.toString();
+ }
+ }
+ void test2() {
+ Object o = "Hello World too!";
+ try {
+ System.out.println(o);
+ } finally {
+ o.toString();
+ }
+ }
+}
diff --git a/test/transform/resource/after-delombok/CleanupPlain.java b/test/transform/resource/after-delombok/CleanupPlain.java
new file mode 100644
index 00000000..35d51543
--- /dev/null
+++ b/test/transform/resource/after-delombok/CleanupPlain.java
@@ -0,0 +1,18 @@
+import java.io.*;
+class CleanupPlain {
+ void test() throws Exception {
+ InputStream in = new FileInputStream("in");
+ try {
+ OutputStream out = new FileOutputStream("out");
+ try {
+ if (in.markSupported()) {
+ out.flush();
+ }
+ } finally {
+ out.close();
+ }
+ } finally {
+ in.close();
+ }
+ }
+}
diff --git a/test/transform/resource/after-delombok/CommentsInterspersed.java b/test/transform/resource/after-delombok/CommentsInterspersed.java
new file mode 100644
index 00000000..5aaafe42
--- /dev/null
+++ b/test/transform/resource/after-delombok/CommentsInterspersed.java
@@ -0,0 +1,16 @@
+/* cmt *//* cmt2 */ /* cmt3 */ /*bla */
+public class CommentsInterspersed {
+ /** javadoc for field */
+ private int x;
+ /* bla2 */ private String test = "foo"; //$NON-NLS-1$
+ /** Javadoc on method */
+ public native void gwtTest(); /*-{
+ javascript;
+ }-*/
+ @java.lang.SuppressWarnings("all")
+ public String getTest() {
+ return this.test;
+ }
+} //haha!
+//hahaha!
+//hahahaha!
diff --git a/test/transform/resource/after-delombok/DataExtended.java b/test/transform/resource/after-delombok/DataExtended.java
new file mode 100644
index 00000000..6f55bc2c
--- /dev/null
+++ b/test/transform/resource/after-delombok/DataExtended.java
@@ -0,0 +1,37 @@
+class DataExtended {
+ int x;
+ @java.lang.SuppressWarnings("all")
+ public DataExtended() {
+ }
+ @java.lang.SuppressWarnings("all")
+ public int getX() {
+ return this.x;
+ }
+ @java.lang.SuppressWarnings("all")
+ public void setX(final int x) {
+ this.x = x;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public boolean equals(final java.lang.Object o) {
+ if (o == this) return true;
+ if (o == null) return false;
+ if (o.getClass() != this.getClass()) return false;
+ final DataExtended other = (DataExtended)o;
+ if (this.getX() != other.getX()) return false;
+ return true;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public int hashCode() {
+ final int PRIME = 31;
+ int result = 1;
+ result = result * PRIME + this.getX();
+ return result;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "DataExtended(x=" + this.x + ")";
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-delombok/DataIgnore.java b/test/transform/resource/after-delombok/DataIgnore.java
new file mode 100644
index 00000000..7e81432d
--- /dev/null
+++ b/test/transform/resource/after-delombok/DataIgnore.java
@@ -0,0 +1,36 @@
+class DataIgnore {
+ final int x;
+ String $name;
+ @java.beans.ConstructorProperties({"x"})
+ @java.lang.SuppressWarnings("all")
+ public DataIgnore(final int x) {
+ this.x = x;
+ }
+ @java.lang.SuppressWarnings("all")
+ public int getX() {
+ return this.x;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public boolean equals(final java.lang.Object o) {
+ if (o == this) return true;
+ if (o == null) return false;
+ if (o.getClass() != this.getClass()) return false;
+ final DataIgnore other = (DataIgnore)o;
+ if (this.getX() != other.getX()) return false;
+ return true;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public int hashCode() {
+ final int PRIME = 31;
+ int result = 1;
+ result = result * PRIME + this.getX();
+ return result;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "DataIgnore(x=" + this.getX() + ")";
+ }
+}
diff --git a/test/transform/resource/after-delombok/DataPlain.java b/test/transform/resource/after-delombok/DataPlain.java
new file mode 100644
index 00000000..1e11a33d
--- /dev/null
+++ b/test/transform/resource/after-delombok/DataPlain.java
@@ -0,0 +1,92 @@
+class Data1 {
+ final int x;
+ String name;
+ @java.beans.ConstructorProperties({"x"})
+ @java.lang.SuppressWarnings("all")
+ public Data1(final int x) {
+ this.x = x;
+ }
+ @java.lang.SuppressWarnings("all")
+ public int getX() {
+ return this.x;
+ }
+ @java.lang.SuppressWarnings("all")
+ public String getName() {
+ return this.name;
+ }
+ @java.lang.SuppressWarnings("all")
+ public void setName(final String name) {
+ this.name = name;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public boolean equals(final java.lang.Object o) {
+ if (o == this) return true;
+ if (o == null) return false;
+ if (o.getClass() != this.getClass()) return false;
+ final Data1 other = (Data1)o;
+ if (this.getX() != other.getX()) return false;
+ if (this.getName() == null ? other.getName() != null : !this.getName().equals(other.getName())) return false;
+ return true;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public int hashCode() {
+ final int PRIME = 31;
+ int result = 1;
+ result = result * PRIME + this.getX();
+ result = result * PRIME + (this.getName() == null ? 0 : this.getName().hashCode());
+ return result;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "Data1(x=" + this.getX() + ", name=" + this.getName() + ")";
+ }
+}
+class Data2 {
+ final int x;
+ String name;
+ @java.beans.ConstructorProperties({"x"})
+ @java.lang.SuppressWarnings("all")
+ public Data2(final int x) {
+ this.x = x;
+ }
+ @java.lang.SuppressWarnings("all")
+ public int getX() {
+ return this.x;
+ }
+ @java.lang.SuppressWarnings("all")
+ public String getName() {
+ return this.name;
+ }
+ @java.lang.SuppressWarnings("all")
+ public void setName(final String name) {
+ this.name = name;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public boolean equals(final java.lang.Object o) {
+ if (o == this) return true;
+ if (o == null) return false;
+ if (o.getClass() != this.getClass()) return false;
+ final Data2 other = (Data2)o;
+ if (this.getX() != other.getX()) return false;
+ if (this.getName() == null ? other.getName() != null : !this.getName().equals(other.getName())) return false;
+ return true;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public int hashCode() {
+ final int PRIME = 31;
+ int result = 1;
+ result = result * PRIME + this.getX();
+ result = result * PRIME + (this.getName() == null ? 0 : this.getName().hashCode());
+ return result;
+ }
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "Data2(x=" + this.getX() + ", name=" + this.getName() + ")";
+ }
+}
diff --git a/test/transform/resource/after-delombok/GetterAccessLevel.java b/test/transform/resource/after-delombok/GetterAccessLevel.java
new file mode 100644
index 00000000..6d977d87
--- /dev/null
+++ b/test/transform/resource/after-delombok/GetterAccessLevel.java
@@ -0,0 +1,49 @@
+class GetterAccessLevel {
+ boolean isNone;
+ boolean isPrivate;
+ boolean isPackage;
+ boolean isProtected;
+ boolean isPublic;
+ String noneString;
+ String privateString;
+ String packageString;
+ String protectedString;
+ String publicString;
+ String value;
+ @java.lang.SuppressWarnings("all")
+ private boolean isPrivate() {
+ return this.isPrivate;
+ }
+ @java.lang.SuppressWarnings("all")
+ boolean isPackage() {
+ return this.isPackage;
+ }
+ @java.lang.SuppressWarnings("all")
+ protected boolean isProtected() {
+ return this.isProtected;
+ }
+ @java.lang.SuppressWarnings("all")
+ public boolean isPublic() {
+ return this.isPublic;
+ }
+ @java.lang.SuppressWarnings("all")
+ private String getPrivateString() {
+ return this.privateString;
+ }
+ @java.lang.SuppressWarnings("all")
+ String getPackageString() {
+ return this.packageString;
+ }
+ @java.lang.SuppressWarnings("all")
+ protected String getProtectedString() {
+ return this.protectedString;
+ }
+ @java.lang.SuppressWarnings("all")
+ public String getPublicString() {
+ return this.publicString;
+ }
+ @java.lang.SuppressWarnings("all")
+ public String getValue() {
+ return this.value;
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-delombok/GetterAlreadyExists.java b/test/transform/resource/after-delombok/GetterAlreadyExists.java
new file mode 100644
index 00000000..6a5377ba
--- /dev/null
+++ b/test/transform/resource/after-delombok/GetterAlreadyExists.java
@@ -0,0 +1,140 @@
+class Getter1 {
+ boolean foo;
+ boolean hasFoo() {
+ return true;
+ }
+}
+class Getter2 {
+ boolean foo;
+ boolean isFoo() {
+ return true;
+ }
+}
+class Getter3 {
+ boolean foo;
+ boolean getFoo() {
+ return true;
+ }
+}
+class Getter4 {
+ String foo;
+ String hasFoo() {
+ return null;
+ }
+ @java.lang.SuppressWarnings("all")
+ public String getFoo() {
+ return this.foo;
+ }
+}
+class Getter5 {
+ String foo;
+ String isFoo() {
+ return null;
+ }
+ @java.lang.SuppressWarnings("all")
+ public String getFoo() {
+ return this.foo;
+ }
+}
+class Getter6 {
+ String foo;
+ String getFoo() {
+ return null;
+ }
+}
+class Getter7 {
+ String foo;
+ boolean hasFoo() {
+ return false;
+ }
+ @java.lang.SuppressWarnings("all")
+ public String getFoo() {
+ return this.foo;
+ }
+}
+class Getter8 {
+ String foo;
+ boolean isFoo() {
+ return false;
+ }
+ @java.lang.SuppressWarnings("all")
+ public String getFoo() {
+ return this.foo;
+ }
+}
+class Getter9 {
+ String foo;
+ boolean getFoo() {
+ return false;
+ }
+}
+class Getter10 {
+ boolean foo;
+ static boolean hasFoo() {
+ return false;
+ }
+}
+class Getter11 {
+ boolean foo;
+ static boolean isFoo() {
+ return false;
+ }
+}
+class Getter12 {
+ boolean foo;
+ static boolean getFoo() {
+ return false;
+ }
+}
+class Getter13 {
+ String foo;
+ static boolean hasFoo() {
+ return false;
+ }
+ @java.lang.SuppressWarnings("all")
+ public String getFoo() {
+ return this.foo;
+ }
+}
+class Getter14 {
+ String foo;
+ static boolean isFoo() {
+ return false;
+ }
+ @java.lang.SuppressWarnings("all")
+ public String getFoo() {
+ return this.foo;
+ }
+}
+class Getter15 {
+ String foo;
+ static boolean getFoo() {
+ return false;
+ }
+}
+class Getter16 {
+ String foo;
+ static String hasFoo() {
+ return false;
+ }
+ @java.lang.SuppressWarnings("all")
+ public String getFoo() {
+ return this.foo;
+ }
+}
+class Getter17 {
+ String foo;
+ static String isFoo() {
+ return false;
+ }
+ @java.lang.SuppressWarnings("all")
+ public String getFoo() {
+ return this.foo;
+ }
+}
+class Getter18 {
+ String foo;
+ static String getFoo() {
+ return false;
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-delombok/GetterBoolean.java b/test/transform/resource/after-delombok/GetterBoolean.java
new file mode 100644
index 00000000..a727e49b
--- /dev/null
+++ b/test/transform/resource/after-delombok/GetterBoolean.java
@@ -0,0 +1,23 @@
+class Getter {
+ boolean foo;
+ boolean isBar;
+ boolean hasBaz;
+ @java.lang.SuppressWarnings("all")
+ public boolean isFoo() {
+ return this.foo;
+ }
+ @java.lang.SuppressWarnings("all")
+ public boolean isBar() {
+ return this.isBar;
+ }
+ @java.lang.SuppressWarnings("all")
+ public boolean hasBaz() {
+ return this.hasBaz;
+ }
+}
+class MoreGetter {
+ boolean foo;
+ boolean hasFoo() {
+ return true;
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-delombok/GetterOnClass.java b/test/transform/resource/after-delombok/GetterOnClass.java
new file mode 100644
index 00000000..bd15ce35
--- /dev/null
+++ b/test/transform/resource/after-delombok/GetterOnClass.java
@@ -0,0 +1,59 @@
+class GetterOnClass1 {
+ boolean isNone;
+ boolean isPublic;
+ @java.lang.SuppressWarnings("all")
+ public boolean isPublic() {
+ return this.isPublic;
+ }
+}
+class GetterOnClass2 {
+ boolean isNone;
+ boolean isProtected;
+ boolean isPackage;
+ @java.lang.SuppressWarnings("all")
+ protected boolean isProtected() {
+ return this.isProtected;
+ }
+ @java.lang.SuppressWarnings("all")
+ boolean isPackage() {
+ return this.isPackage;
+ }
+}
+class GetterOnClass3 {
+ boolean isNone;
+ boolean isPackage;
+ @java.lang.SuppressWarnings("all")
+ boolean isPackage() {
+ return this.isPackage;
+ }
+}
+class GetterOnClass4 {
+ boolean isNone;
+ boolean isPrivate;
+ @java.lang.SuppressWarnings("all")
+ private boolean isPrivate() {
+ return this.isPrivate;
+ }
+}
+class GetterOnClass5 {
+ boolean isNone;
+ boolean isPublic;
+ @java.lang.SuppressWarnings("all")
+ public boolean isPublic() {
+ return this.isPublic;
+ }
+}
+class GetterOnClass6 {
+ String couldBeNull;
+ @lombok.NonNull
+ String nonNull;
+ @java.lang.SuppressWarnings("all")
+ public String getCouldBeNull() {
+ return this.couldBeNull;
+ }
+ @lombok.NonNull
+ @java.lang.SuppressWarnings("all")
+ public String getNonNull() {
+ return this.nonNull;
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-delombok/GetterPlain.java b/test/transform/resource/after-delombok/GetterPlain.java
new file mode 100644
index 00000000..359d46e2
--- /dev/null
+++ b/test/transform/resource/after-delombok/GetterPlain.java
@@ -0,0 +1,12 @@
+class GetterPlain {
+ int i;
+ int foo;
+ @java.lang.SuppressWarnings("all")
+ public int getI() {
+ return this.i;
+ }
+ @java.lang.SuppressWarnings("all")
+ public int getFoo() {
+ return this.foo;
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-delombok/GetterWithDollar.java b/test/transform/resource/after-delombok/GetterWithDollar.java
new file mode 100644
index 00000000..9e02ccb8
--- /dev/null
+++ b/test/transform/resource/after-delombok/GetterWithDollar.java
@@ -0,0 +1,15 @@
+class GetterWithDollar1 {
+ int $i;
+ @java.lang.SuppressWarnings("all")
+ public int getI() {
+ return this.$i;
+ }
+}
+class GetterWithDollar2 {
+ int $i;
+ int i;
+ @java.lang.SuppressWarnings("all")
+ public int getI() {
+ return this.i;
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-delombok/NonNullPlain.java b/test/transform/resource/after-delombok/NonNullPlain.java
new file mode 100644
index 00000000..19869db1
--- /dev/null
+++ b/test/transform/resource/after-delombok/NonNullPlain.java
@@ -0,0 +1,25 @@
+class NonNullPlain {
+ @lombok.NonNull
+ int i;
+ @lombok.NonNull
+ String s;
+ @lombok.NonNull
+ @java.lang.SuppressWarnings("all")
+ public int getI() {
+ return this.i;
+ }
+ @java.lang.SuppressWarnings("all")
+ public void setI(@lombok.NonNull final int i) {
+ this.i = i;
+ }
+ @lombok.NonNull
+ @java.lang.SuppressWarnings("all")
+ public String getS() {
+ return this.s;
+ }
+ @java.lang.SuppressWarnings("all")
+ public void setS(@lombok.NonNull final String s) {
+ if (s == null) throw new java.lang.NullPointerException("s");
+ this.s = s;
+ }
+}
diff --git a/test/transform/resource/after-delombok/SetterAccessLevel.java b/test/transform/resource/after-delombok/SetterAccessLevel.java
new file mode 100644
index 00000000..dce4cc2f
--- /dev/null
+++ b/test/transform/resource/after-delombok/SetterAccessLevel.java
@@ -0,0 +1,28 @@
+class SetterAccessLevel {
+ boolean isNone;
+ boolean isPrivate;
+ boolean isPackage;
+ boolean isProtected;
+ boolean isPublic;
+ boolean value;
+ @java.lang.SuppressWarnings("all")
+ private void setIsPrivate(final boolean isPrivate) {
+ this.isPrivate = isPrivate;
+ }
+ @java.lang.SuppressWarnings("all")
+ void setIsPackage(final boolean isPackage) {
+ this.isPackage = isPackage;
+ }
+ @java.lang.SuppressWarnings("all")
+ protected void setIsProtected(final boolean isProtected) {
+ this.isProtected = isProtected;
+ }
+ @java.lang.SuppressWarnings("all")
+ public void setIsPublic(final boolean isPublic) {
+ this.isPublic = isPublic;
+ }
+ @java.lang.SuppressWarnings("all")
+ public void setValue(final boolean value) {
+ this.value = value;
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-delombok/SetterAlreadyExists.java b/test/transform/resource/after-delombok/SetterAlreadyExists.java
new file mode 100644
index 00000000..e4992b29
--- /dev/null
+++ b/test/transform/resource/after-delombok/SetterAlreadyExists.java
@@ -0,0 +1,35 @@
+class Setter1 {
+ boolean foo;
+ void setFoo(boolean foo) {
+ }
+}
+class Setter2 {
+ boolean foo;
+ void setFoo(String foo) {
+ }
+}
+class Setter3 {
+ String foo;
+ void setFoo(boolean foo) {
+ }
+}
+class Setter4 {
+ String foo;
+ void setFoo(String foo) {
+ }
+}
+class Setter5 {
+ String foo;
+ void setFoo() {
+ }
+}
+class Setter6 {
+ String foo;
+ void setFoo(String foo, int x) {
+ }
+}
+class Setter7 {
+ String foo;
+ static void setFoo() {
+ }
+}
diff --git a/test/transform/resource/after-delombok/SetterOnClass.java b/test/transform/resource/after-delombok/SetterOnClass.java
new file mode 100644
index 00000000..05528ff8
--- /dev/null
+++ b/test/transform/resource/after-delombok/SetterOnClass.java
@@ -0,0 +1,59 @@
+class SetterOnClass1 {
+ boolean isNone;
+ boolean isPublic;
+ @java.lang.SuppressWarnings("all")
+ public void setIsPublic(final boolean isPublic) {
+ this.isPublic = isPublic;
+ }
+}
+class SetterOnClass2 {
+ boolean isNone;
+ boolean isProtected;
+ boolean isPackage;
+ @java.lang.SuppressWarnings("all")
+ protected void setIsProtected(final boolean isProtected) {
+ this.isProtected = isProtected;
+ }
+ @java.lang.SuppressWarnings("all")
+ void setIsPackage(final boolean isPackage) {
+ this.isPackage = isPackage;
+ }
+}
+class SetterOnClass3 {
+ boolean isNone;
+ boolean isPackage;
+ @java.lang.SuppressWarnings("all")
+ void setIsPackage(final boolean isPackage) {
+ this.isPackage = isPackage;
+ }
+}
+class SetterOnClass4 {
+ boolean isNone;
+ boolean isPrivate;
+ @java.lang.SuppressWarnings("all")
+ private void setIsPrivate(final boolean isPrivate) {
+ this.isPrivate = isPrivate;
+ }
+}
+class SetterOnClass5 {
+ boolean isNone;
+ boolean isPublic;
+ @java.lang.SuppressWarnings("all")
+ public void setIsPublic(final boolean isPublic) {
+ this.isPublic = isPublic;
+ }
+}
+class SetterOnClass6 {
+ String couldBeNull;
+ @lombok.NonNull
+ String nonNull;
+ @java.lang.SuppressWarnings("all")
+ public void setCouldBeNull(final String couldBeNull) {
+ this.couldBeNull = couldBeNull;
+ }
+ @java.lang.SuppressWarnings("all")
+ public void setNonNull(@lombok.NonNull final String nonNull) {
+ if (nonNull == null) throw new java.lang.NullPointerException("nonNull");
+ this.nonNull = nonNull;
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-delombok/SetterPlain.java b/test/transform/resource/after-delombok/SetterPlain.java
new file mode 100644
index 00000000..39aa7b61
--- /dev/null
+++ b/test/transform/resource/after-delombok/SetterPlain.java
@@ -0,0 +1,12 @@
+class SetterPlain {
+ int i;
+ int foo;
+ @java.lang.SuppressWarnings("all")
+ public void setI(final int i) {
+ this.i = i;
+ }
+ @java.lang.SuppressWarnings("all")
+ public void setFoo(final int foo) {
+ this.foo = foo;
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-delombok/SetterWithDollar.java b/test/transform/resource/after-delombok/SetterWithDollar.java
new file mode 100644
index 00000000..c26a1ccd
--- /dev/null
+++ b/test/transform/resource/after-delombok/SetterWithDollar.java
@@ -0,0 +1,15 @@
+class SetterWithDollar1 {
+ int $i;
+
+ public void setI(final int i) {
+ this.$i = i;
+ }
+}
+class SetterWithDollar2 {
+ int $i;
+ int i;
+
+ public void setI(final int i) {
+ this.i = i;
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-delombok/SneakyThrowsMultiple.java b/test/transform/resource/after-delombok/SneakyThrowsMultiple.java
new file mode 100644
index 00000000..bab13990
--- /dev/null
+++ b/test/transform/resource/after-delombok/SneakyThrowsMultiple.java
@@ -0,0 +1,45 @@
+import java.awt.AWTException;
+import java.io.IOException;
+import java.util.Random;
+class SneakyThrowsMultiple {
+ public void test() {
+ try {
+ try {
+ System.out.println("test1");
+ throw new IOException();
+ } catch (IOException $ex) {
+ throw lombok.Lombok.sneakyThrow($ex);
+ }
+ } catch (Throwable $ex) {
+ throw lombok.Lombok.sneakyThrow($ex);
+ }
+ }
+ public void test2() {
+ try {
+ try {
+ System.out.println("test2");
+ if (new Random().nextBoolean()) {
+ throw new IOException();
+ } else {
+ throw new AWTException("WHAT");
+ }
+ } catch (AWTException $ex) {
+ throw lombok.Lombok.sneakyThrow($ex);
+ }
+ } catch (IOException $ex) {
+ throw lombok.Lombok.sneakyThrow($ex);
+ }
+ }
+ public void test3() {
+ try {
+ try {
+ System.out.println("test3");
+ throw new IOException();
+ } catch (IOException $ex) {
+ throw lombok.Lombok.sneakyThrow($ex);
+ }
+ } catch (Throwable $ex) {
+ throw lombok.Lombok.sneakyThrow($ex);
+ }
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-delombok/SneakyThrowsPlain.java b/test/transform/resource/after-delombok/SneakyThrowsPlain.java
new file mode 100644
index 00000000..d5abc478
--- /dev/null
+++ b/test/transform/resource/after-delombok/SneakyThrowsPlain.java
@@ -0,0 +1,17 @@
+class SneakyThrowsPlain {
+ public void test() {
+ try {
+ System.out.println("test1");
+ } catch (java.lang.Throwable $ex) {
+ throw lombok.Lombok.sneakyThrow($ex);
+ }
+ }
+
+ public void test2() {
+ try {
+ System.out.println("test2");
+ } catch (java.lang.Throwable $ex) {
+ throw lombok.Lombok.sneakyThrow($ex);
+ }
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-delombok/SneakyThrowsSingle.java b/test/transform/resource/after-delombok/SneakyThrowsSingle.java
new file mode 100644
index 00000000..519d06a9
--- /dev/null
+++ b/test/transform/resource/after-delombok/SneakyThrowsSingle.java
@@ -0,0 +1,26 @@
+import java.io.IOException;
+class SneakyThrowsSingle {
+ public void test() {
+ try {
+ System.out.println("test1");
+ } catch (Throwable $ex) {
+ throw lombok.Lombok.sneakyThrow($ex);
+ }
+ }
+ public void test2() {
+ try {
+ System.out.println("test2");
+ throw new IOException();
+ } catch (IOException $ex) {
+ throw lombok.Lombok.sneakyThrow($ex);
+ }
+ }
+ public void test3() {
+ try {
+ System.out.println("test3");
+ throw new IOException();
+ } catch (IOException $ex) {
+ throw lombok.Lombok.sneakyThrow($ex);
+ }
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-delombok/SynchronizedName.java b/test/transform/resource/after-delombok/SynchronizedName.java
new file mode 100644
index 00000000..066e3bdf
--- /dev/null
+++ b/test/transform/resource/after-delombok/SynchronizedName.java
@@ -0,0 +1,25 @@
+class SynchronizedName {
+ private Object read = new Object();
+ private static Object READ = new Object();
+ void test1() {
+ synchronized (read) {
+ System.out.println("one");
+ }
+ }
+ void test2() {
+ System.out.println("two");
+ }
+ static void test3() {
+ System.out.println("three");
+ }
+ void test4() {
+ synchronized (READ) {
+ System.out.println("four");
+ }
+ }
+ void test5() {
+ synchronized (read) {
+ System.out.println("five");
+ }
+ }
+}
diff --git a/test/transform/resource/after-delombok/SynchronizedPlain.java b/test/transform/resource/after-delombok/SynchronizedPlain.java
new file mode 100644
index 00000000..695a3089
--- /dev/null
+++ b/test/transform/resource/after-delombok/SynchronizedPlain.java
@@ -0,0 +1,28 @@
+class SynchronizedPlain1 {
+ void test() {
+ synchronized (this.$lock) {
+ System.out.println("one");
+ }
+ }
+ void test2() {
+ synchronized (this.$lock) {
+ System.out.println("two");
+ }
+ }
+ @java.lang.SuppressWarnings("all")
+ private final java.lang.Object $lock = new java.lang.Object[0];
+}
+class SynchronizedPlain2 {
+ static void test() {
+ synchronized (SynchronizedPlain2.$LOCK) {
+ System.out.println("three");
+ }
+ }
+ static void test2() {
+ synchronized (SynchronizedPlain2.$LOCK) {
+ System.out.println("four");
+ }
+ }
+ @java.lang.SuppressWarnings("all")
+ private static final java.lang.Object $LOCK = new java.lang.Object[0];
+} \ No newline at end of file
diff --git a/test/transform/resource/after-delombok/ToStringInner.java b/test/transform/resource/after-delombok/ToStringInner.java
new file mode 100644
index 00000000..fc376a77
--- /dev/null
+++ b/test/transform/resource/after-delombok/ToStringInner.java
@@ -0,0 +1,36 @@
+class ToStringOuter {
+ final int x;
+ String name;
+ class ToStringInner {
+ final int y;
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "ToStringInner(y=" + this.y + ")";
+ }
+ }
+ static class ToStringStaticInner {
+ final int y;
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "ToStringStaticInner(y=" + this.y + ")";
+ }
+ }
+ class ToStringMiddle {
+ class ToStringMoreInner {
+ final String name;
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "ToStringMoreInner(name=" + this.name + ")";
+ }
+ }
+ }
+
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "ToStringOuter(x=" + this.x + ", name=" + this.name + ")";
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-delombok/ToStringPlain.java b/test/transform/resource/after-delombok/ToStringPlain.java
new file mode 100644
index 00000000..20227464
--- /dev/null
+++ b/test/transform/resource/after-delombok/ToStringPlain.java
@@ -0,0 +1,18 @@
+class ToString1 {
+ final int x;
+ String name;
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "ToString1(x=" + this.x + ", name=" + this.name + ")";
+ }
+}
+class ToString2 {
+ final int x;
+ String name;
+ @java.lang.Override
+ @java.lang.SuppressWarnings("all")
+ public java.lang.String toString() {
+ return "ToString2(x=" + this.x + ", name=" + this.name + ")";
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/ClassNamedAfterGetter.java b/test/transform/resource/before/ClassNamedAfterGetter.java
new file mode 100644
index 00000000..fe61eda1
--- /dev/null
+++ b/test/transform/resource/before/ClassNamedAfterGetter.java
@@ -0,0 +1,3 @@
+class GetFoo {
+ @lombok.Getter private int foo;
+}
diff --git a/test/transform/resource/before/CleanupName.java b/test/transform/resource/before/CleanupName.java
new file mode 100644
index 00000000..cbc5b447
--- /dev/null
+++ b/test/transform/resource/before/CleanupName.java
@@ -0,0 +1,10 @@
+class CleanupName {
+ void test() {
+ @lombok.Cleanup("toString") Object o = "Hello World!";
+ System.out.println(o);
+ }
+ void test2() {
+ @lombok.Cleanup(value="toString") Object o = "Hello World too!";
+ System.out.println(o);
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/CleanupPlain.java b/test/transform/resource/before/CleanupPlain.java
new file mode 100644
index 00000000..a91ac3c1
--- /dev/null
+++ b/test/transform/resource/before/CleanupPlain.java
@@ -0,0 +1,11 @@
+import lombok.Cleanup;
+import java.io.*;
+class CleanupPlain {
+ void test() throws Exception {
+ @lombok.Cleanup InputStream in = new FileInputStream("in");
+ @Cleanup OutputStream out = new FileOutputStream("out");
+ if (in.markSupported()) {
+ out.flush();
+ }
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/CommentsInterspersed.java b/test/transform/resource/before/CommentsInterspersed.java
new file mode 100644
index 00000000..e7898aaa
--- /dev/null
+++ b/test/transform/resource/before/CommentsInterspersed.java
@@ -0,0 +1,17 @@
+import /* cmt */ lombok./* cmt2 */Getter /* cmt3 */ ;
+
+public /*bla */ class CommentsInterspersed {
+ /** javadoc for field */
+ private int x;
+
+ private /* bla2 */ @Getter String test = "foo"; //$NON-NLS-1$
+
+ /** Javadoc on method */
+ public native void gwtTest(); /*-{
+ javascript;
+ }-*/
+} //haha!
+//hahaha!
+
+//hahahaha!
+
diff --git a/test/transform/resource/before/DataExtended.java b/test/transform/resource/before/DataExtended.java
new file mode 100644
index 00000000..a545460c
--- /dev/null
+++ b/test/transform/resource/before/DataExtended.java
@@ -0,0 +1,5 @@
+@lombok.Data
+@lombok.ToString(doNotUseGetters = true)
+class DataExtended {
+ int x;
+} \ No newline at end of file
diff --git a/test/transform/resource/before/DataIgnore.java b/test/transform/resource/before/DataIgnore.java
new file mode 100644
index 00000000..5f957bdc
--- /dev/null
+++ b/test/transform/resource/before/DataIgnore.java
@@ -0,0 +1,4 @@
+@lombok.Data class DataIgnore {
+ final int x;
+ String $name;
+}
diff --git a/test/transform/resource/before/DataPlain.java b/test/transform/resource/before/DataPlain.java
new file mode 100644
index 00000000..680ae46f
--- /dev/null
+++ b/test/transform/resource/before/DataPlain.java
@@ -0,0 +1,9 @@
+import lombok.Data;
+@lombok.Data class Data1 {
+ final int x;
+ String name;
+}
+@Data class Data2 {
+ final int x;
+ String name;
+} \ No newline at end of file
diff --git a/test/transform/resource/before/GetterAccessLevel.java b/test/transform/resource/before/GetterAccessLevel.java
new file mode 100644
index 00000000..413b888e
--- /dev/null
+++ b/test/transform/resource/before/GetterAccessLevel.java
@@ -0,0 +1,24 @@
+class GetterAccessLevel {
+ @lombok.Getter(lombok.AccessLevel.NONE)
+ boolean isNone;
+ @lombok.Getter(lombok.AccessLevel.PRIVATE)
+ boolean isPrivate;
+ @lombok.Getter(lombok.AccessLevel.PACKAGE)
+ boolean isPackage;
+ @lombok.Getter(lombok.AccessLevel.PROTECTED)
+ boolean isProtected;
+ @lombok.Getter(lombok.AccessLevel.PUBLIC)
+ boolean isPublic;
+ @lombok.Getter(lombok.AccessLevel.NONE)
+ String noneString;
+ @lombok.Getter(lombok.AccessLevel.PRIVATE)
+ String privateString;
+ @lombok.Getter(lombok.AccessLevel.PACKAGE)
+ String packageString;
+ @lombok.Getter(lombok.AccessLevel.PROTECTED)
+ String protectedString;
+ @lombok.Getter(lombok.AccessLevel.PUBLIC)
+ String publicString;
+ @lombok.Getter(value=lombok.AccessLevel.PUBLIC)
+ String value;
+}
diff --git a/test/transform/resource/before/GetterAlreadyExists.java b/test/transform/resource/before/GetterAlreadyExists.java
new file mode 100644
index 00000000..93b77dc1
--- /dev/null
+++ b/test/transform/resource/before/GetterAlreadyExists.java
@@ -0,0 +1,108 @@
+class Getter1 {
+ @lombok.Getter boolean foo;
+ boolean hasFoo() {
+ return true;
+ }
+}
+class Getter2 {
+ @lombok.Getter boolean foo;
+ boolean isFoo() {
+ return true;
+ }
+}
+class Getter3 {
+ @lombok.Getter boolean foo;
+ boolean getFoo() {
+ return true;
+ }
+}
+class Getter4 {
+ @lombok.Getter String foo;
+ String hasFoo() {
+ return null;
+ }
+}
+class Getter5 {
+ @lombok.Getter String foo;
+ String isFoo() {
+ return null;
+ }
+}
+class Getter6 {
+ @lombok.Getter String foo;
+ String getFoo() {
+ return null;
+ }
+}
+class Getter7 {
+ @lombok.Getter String foo;
+ boolean hasFoo() {
+ return false;
+ }
+}
+class Getter8 {
+ @lombok.Getter String foo;
+ boolean isFoo() {
+ return false;
+ }
+}
+class Getter9 {
+ @lombok.Getter String foo;
+ boolean getFoo() {
+ return false;
+ }
+}
+class Getter10 {
+ @lombok.Getter boolean foo;
+ static boolean hasFoo() {
+ return false;
+ }
+}
+class Getter11 {
+ @lombok.Getter boolean foo;
+ static boolean isFoo() {
+ return false;
+ }
+}
+class Getter12 {
+ @lombok.Getter boolean foo;
+ static boolean getFoo() {
+ return false;
+ }
+}
+class Getter13 {
+ @lombok.Getter String foo;
+ static boolean hasFoo() {
+ return false;
+ }
+}
+class Getter14 {
+ @lombok.Getter String foo;
+ static boolean isFoo() {
+ return false;
+ }
+}
+class Getter15 {
+ @lombok.Getter String foo;
+ static boolean getFoo() {
+ return false;
+ }
+}
+class Getter16 {
+ @lombok.Getter String foo;
+ static String hasFoo() {
+ return false;
+ }
+}
+class Getter17 {
+ @lombok.Getter String foo;
+ static String isFoo() {
+ return false;
+ }
+}
+class Getter18 {
+ @lombok.Getter String foo;
+ static String getFoo() {
+ return false;
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/GetterBoolean.java b/test/transform/resource/before/GetterBoolean.java
new file mode 100644
index 00000000..7d53ebbf
--- /dev/null
+++ b/test/transform/resource/before/GetterBoolean.java
@@ -0,0 +1,12 @@
+class Getter {
+ @lombok.Getter boolean foo;
+ @lombok.Getter boolean isBar;
+ @lombok.Getter boolean hasBaz;
+}
+class MoreGetter {
+ @lombok.Getter boolean foo;
+
+ boolean hasFoo() {
+ return true;
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/GetterOnClass.java b/test/transform/resource/before/GetterOnClass.java
new file mode 100644
index 00000000..0a38b386
--- /dev/null
+++ b/test/transform/resource/before/GetterOnClass.java
@@ -0,0 +1,37 @@
+@lombok.Getter
+class GetterOnClass1 {
+ @lombok.Getter(lombok.AccessLevel.NONE)
+ boolean isNone;
+ boolean isPublic;
+}
+@lombok.Getter(lombok.AccessLevel.PROTECTED)
+class GetterOnClass2 {
+ @lombok.Getter(lombok.AccessLevel.NONE)
+ boolean isNone;
+ boolean isProtected;
+ @lombok.Getter(lombok.AccessLevel.PACKAGE)
+ boolean isPackage;
+}
+@lombok.Getter(lombok.AccessLevel.PACKAGE)
+class GetterOnClass3 {
+ @lombok.Getter(lombok.AccessLevel.NONE)
+ boolean isNone;
+ boolean isPackage;
+}
+@lombok.Getter(lombok.AccessLevel.PRIVATE)
+class GetterOnClass4 {
+ @lombok.Getter(lombok.AccessLevel.NONE)
+ boolean isNone;
+ boolean isPrivate;
+}
+@lombok.Getter(lombok.AccessLevel.PUBLIC)
+class GetterOnClass5 {
+ @lombok.Getter(lombok.AccessLevel.NONE)
+ boolean isNone;
+ boolean isPublic;
+}
+@lombok.Getter
+class GetterOnClass6 {
+ String couldBeNull;
+ @lombok.NonNull String nonNull;
+} \ No newline at end of file
diff --git a/test/transform/resource/before/GetterPlain.java b/test/transform/resource/before/GetterPlain.java
new file mode 100644
index 00000000..d104f428
--- /dev/null
+++ b/test/transform/resource/before/GetterPlain.java
@@ -0,0 +1,5 @@
+import lombok.Getter;
+class GetterPlain {
+ @lombok.Getter int i;
+ @Getter int foo;
+} \ No newline at end of file
diff --git a/test/transform/resource/before/GetterWithDollar.java b/test/transform/resource/before/GetterWithDollar.java
new file mode 100644
index 00000000..e1ef0818
--- /dev/null
+++ b/test/transform/resource/before/GetterWithDollar.java
@@ -0,0 +1,9 @@
+//ignore
+class GetterWithDollar1 {
+ @lombok.Getter int $i;
+}
+
+class GetterWithDollar2 {
+ @lombok.Getter int $i;
+ @lombok.Getter int i;
+}
diff --git a/test/transform/resource/before/NonNullPlain.java b/test/transform/resource/before/NonNullPlain.java
new file mode 100644
index 00000000..eef64b2f
--- /dev/null
+++ b/test/transform/resource/before/NonNullPlain.java
@@ -0,0 +1,11 @@
+class NonNullPlain {
+ @lombok.Getter
+ @lombok.Setter
+ @lombok.NonNull
+ @lombok.Getter int i;
+
+ @lombok.Getter
+ @lombok.Setter
+ @lombok.NonNull
+ String s;
+} \ No newline at end of file
diff --git a/test/transform/resource/before/SetterAccessLevel.java b/test/transform/resource/before/SetterAccessLevel.java
new file mode 100644
index 00000000..8a30a7de
--- /dev/null
+++ b/test/transform/resource/before/SetterAccessLevel.java
@@ -0,0 +1,14 @@
+class SetterAccessLevel {
+ @lombok.Setter(lombok.AccessLevel.NONE)
+ boolean isNone;
+ @lombok.Setter(lombok.AccessLevel.PRIVATE)
+ boolean isPrivate;
+ @lombok.Setter(lombok.AccessLevel.PACKAGE)
+ boolean isPackage;
+ @lombok.Setter(lombok.AccessLevel.PROTECTED)
+ boolean isProtected;
+ @lombok.Setter(lombok.AccessLevel.PUBLIC)
+ boolean isPublic;
+ @lombok.Setter(value=lombok.AccessLevel.PUBLIC)
+ boolean value;
+}
diff --git a/test/transform/resource/before/SetterAlreadyExists.java b/test/transform/resource/before/SetterAlreadyExists.java
new file mode 100644
index 00000000..a7a94123
--- /dev/null
+++ b/test/transform/resource/before/SetterAlreadyExists.java
@@ -0,0 +1,35 @@
+class Setter1 {
+ @lombok.Setter boolean foo;
+ void setFoo(boolean foo) {
+ }
+}
+class Setter2 {
+ @lombok.Setter boolean foo;
+ void setFoo(String foo) {
+ }
+}
+class Setter3 {
+ @lombok.Setter String foo;
+ void setFoo(boolean foo) {
+ }
+}
+class Setter4 {
+ @lombok.Setter String foo;
+ void setFoo(String foo) {
+ }
+}
+class Setter5 {
+ @lombok.Setter String foo;
+ void setFoo() {
+ }
+}
+class Setter6 {
+ @lombok.Setter String foo;
+ void setFoo(String foo, int x) {
+ }
+}
+class Setter7 {
+ @lombok.Setter String foo;
+ static void setFoo() {
+ }
+}
diff --git a/test/transform/resource/before/SetterOnClass.java b/test/transform/resource/before/SetterOnClass.java
new file mode 100644
index 00000000..5d195ff5
--- /dev/null
+++ b/test/transform/resource/before/SetterOnClass.java
@@ -0,0 +1,37 @@
+@lombok.Setter
+class SetterOnClass1 {
+ @lombok.Setter(lombok.AccessLevel.NONE)
+ boolean isNone;
+ boolean isPublic;
+}
+@lombok.Setter(lombok.AccessLevel.PROTECTED)
+class SetterOnClass2 {
+ @lombok.Setter(lombok.AccessLevel.NONE)
+ boolean isNone;
+ boolean isProtected;
+ @lombok.Setter(lombok.AccessLevel.PACKAGE)
+ boolean isPackage;
+}
+@lombok.Setter(lombok.AccessLevel.PACKAGE)
+class SetterOnClass3 {
+ @lombok.Setter(lombok.AccessLevel.NONE)
+ boolean isNone;
+ boolean isPackage;
+}
+@lombok.Setter(lombok.AccessLevel.PRIVATE)
+class SetterOnClass4 {
+ @lombok.Setter(lombok.AccessLevel.NONE)
+ boolean isNone;
+ boolean isPrivate;
+}
+@lombok.Setter(lombok.AccessLevel.PUBLIC)
+class SetterOnClass5 {
+ @lombok.Setter(lombok.AccessLevel.NONE)
+ boolean isNone;
+ boolean isPublic;
+}
+@lombok.Setter
+class SetterOnClass6 {
+ String couldBeNull;
+ @lombok.NonNull String nonNull;
+} \ No newline at end of file
diff --git a/test/transform/resource/before/SetterPlain.java b/test/transform/resource/before/SetterPlain.java
new file mode 100644
index 00000000..e1ac99f8
--- /dev/null
+++ b/test/transform/resource/before/SetterPlain.java
@@ -0,0 +1,5 @@
+import lombok.Setter;
+class SetterPlain {
+ @lombok.Setter int i;
+ @Setter int foo;
+} \ No newline at end of file
diff --git a/test/transform/resource/before/SetterWithDollar.java b/test/transform/resource/before/SetterWithDollar.java
new file mode 100644
index 00000000..c09173b0
--- /dev/null
+++ b/test/transform/resource/before/SetterWithDollar.java
@@ -0,0 +1,9 @@
+//ignore
+class SetterWithDollar1 {
+ @lombok.Setter int $i;
+}
+
+class SetterWithDollar2 {
+ @lombok.Setter int $i;
+ @lombok.Setter int i;
+}
diff --git a/test/transform/resource/before/SneakyThrowsMultiple.java b/test/transform/resource/before/SneakyThrowsMultiple.java
new file mode 100644
index 00000000..7e644f3d
--- /dev/null
+++ b/test/transform/resource/before/SneakyThrowsMultiple.java
@@ -0,0 +1,28 @@
+import java.awt.AWTException;
+import java.io.IOException;
+import java.util.Random;
+
+class SneakyThrowsMultiple {
+ @lombok.SneakyThrows(IOException.class,Throwable.class)
+ public void test() {
+ System.out.println("test1");
+ throw new IOException();
+ }
+
+ @lombok.SneakyThrows(AWTException.class,IOException.class)
+ public void test2() {
+ System.out.println("test2");
+ if (new Random().nextBoolean()) {
+ throw new IOException();
+ }
+ else {
+ throw new AWTException("WHAT");
+ }
+ }
+
+ @lombok.SneakyThrows(value={IOException.class,Throwable.class})
+ public void test3() {
+ System.out.println("test3");
+ throw new IOException();
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/SneakyThrowsPlain.java b/test/transform/resource/before/SneakyThrowsPlain.java
new file mode 100644
index 00000000..97fecf8f
--- /dev/null
+++ b/test/transform/resource/before/SneakyThrowsPlain.java
@@ -0,0 +1,10 @@
+import lombok.SneakyThrows;
+class SneakyThrowsPlain {
+ @lombok.SneakyThrows public void test() {
+ System.out.println("test1");
+ }
+
+ @SneakyThrows public void test2() {
+ System.out.println("test2");
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/SneakyThrowsSingle.java b/test/transform/resource/before/SneakyThrowsSingle.java
new file mode 100644
index 00000000..e7b78ec7
--- /dev/null
+++ b/test/transform/resource/before/SneakyThrowsSingle.java
@@ -0,0 +1,21 @@
+import java.io.IOException;
+
+class SneakyThrowsSingle {
+ @lombok.SneakyThrows(Throwable.class)
+ public void test() {
+ System.out.println("test1");
+ }
+
+ @lombok.SneakyThrows(IOException.class)
+ public void test2() {
+ System.out.println("test2");
+ throw new IOException();
+ }
+
+ @lombok.SneakyThrows(value=IOException.class)
+ public void test3() {
+ System.out.println("test3");
+ throw new IOException();
+ }
+
+} \ No newline at end of file
diff --git a/test/transform/resource/before/SynchronizedName.java b/test/transform/resource/before/SynchronizedName.java
new file mode 100644
index 00000000..6d9ca5e9
--- /dev/null
+++ b/test/transform/resource/before/SynchronizedName.java
@@ -0,0 +1,21 @@
+//ignore
+class SynchronizedName {
+ private Object read = new Object();
+ private static Object READ = new Object();
+
+ @lombok.Synchronized("read") void test1() {
+ System.out.println("one");
+ }
+ @lombok.Synchronized("write") void test2() {
+ System.out.println("two");
+ }
+ @lombok.Synchronized("read") static void test3() {
+ System.out.println("three");
+ }
+ @lombok.Synchronized("READ") void test4() {
+ System.out.println("four");
+ }
+ @lombok.Synchronized(value="read") void test5() {
+ System.out.println("five");
+ }
+}
diff --git a/test/transform/resource/before/SynchronizedPlain.java b/test/transform/resource/before/SynchronizedPlain.java
new file mode 100644
index 00000000..6f5f3b64
--- /dev/null
+++ b/test/transform/resource/before/SynchronizedPlain.java
@@ -0,0 +1,17 @@
+import lombok.Synchronized;
+class SynchronizedPlain1 {
+ @lombok.Synchronized void test() {
+ System.out.println("one");
+ }
+ @Synchronized void test2() {
+ System.out.println("two");
+ }
+}
+class SynchronizedPlain2 {
+ @lombok.Synchronized static void test() {
+ System.out.println("three");
+ }
+ @Synchronized static void test2() {
+ System.out.println("four");
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/ToStringInner.java b/test/transform/resource/before/ToStringInner.java
new file mode 100644
index 00000000..f56865e0
--- /dev/null
+++ b/test/transform/resource/before/ToStringInner.java
@@ -0,0 +1,16 @@
+import lombok.ToString;
+@ToString class ToStringOuter {
+ final int x;
+ String name;
+ @ToString class ToStringInner {
+ final int y;
+ }
+ @ToString static class ToStringStaticInner {
+ final int y;
+ }
+ class ToStringMiddle {
+ @ToString class ToStringMoreInner {
+ final String name;
+ }
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/ToStringPlain.java b/test/transform/resource/before/ToStringPlain.java
new file mode 100644
index 00000000..5b9db1c7
--- /dev/null
+++ b/test/transform/resource/before/ToStringPlain.java
@@ -0,0 +1,9 @@
+import lombok.ToString;
+@lombok.ToString class ToString1 {
+ final int x;
+ String name;
+}
+@ToString class ToString2 {
+ final int x;
+ String name;
+} \ 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
new file mode 100644
index 00000000..99de957b
--- /dev/null
+++ b/test/transform/resource/messages-delombok/GetterAlreadyExists.java.messages
@@ -0,0 +1,10 @@
+2:9 WARNING Not generating isFoo(): A method with that name already exists (hasFoo)
+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
+56:9 WARNING Not generating isFoo(): A method with that name already exists (hasFoo)
+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 \ No newline at end of file
diff --git a/test/transform/resource/messages-delombok/GetterBoolean.java.messages b/test/transform/resource/messages-delombok/GetterBoolean.java.messages
new file mode 100644
index 00000000..91ba7340
--- /dev/null
+++ b/test/transform/resource/messages-delombok/GetterBoolean.java.messages
@@ -0,0 +1 @@
+7:9 WARNING Not generating isFoo(): A method with that name already exists (hasFoo) \ No newline at end of file
diff --git a/test/transform/resource/messages-delombok/SetterAlreadyExists.java.messages b/test/transform/resource/messages-delombok/SetterAlreadyExists.java.messages
new file mode 100644
index 00000000..7d0397ad
--- /dev/null
+++ b/test/transform/resource/messages-delombok/SetterAlreadyExists.java.messages
@@ -0,0 +1,7 @@
+2:9 WARNING Not generating setFoo(boolean foo): A method with that name already exists
+7:9 WARNING Not generating setFoo(boolean foo): A method with that name already exists
+12:9 WARNING Not generating setFoo(String foo): A method with that name already exists
+17:9 WARNING Not generating setFoo(String foo): A method with that name already exists
+22:9 WARNING Not generating setFoo(String foo): A method with that name already exists
+27:9 WARNING Not generating setFoo(String foo): A method with that name already exists
+32:9 WARNING Not generating setFoo(String foo): A method with that name already exists
diff --git a/test/transform/src/lombok/transform/TestLombokFilesIdempotent.java b/test/transform/src/lombok/transform/TestLombokFilesIdempotent.java
new file mode 100644
index 00000000..63d34820
--- /dev/null
+++ b/test/transform/src/lombok/transform/TestLombokFilesIdempotent.java
@@ -0,0 +1,56 @@
+/*
+ * Copyright © 2009-2010 Reinier Zwitserloot and Roel Spilker.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+package lombok.transform;
+
+import java.io.File;
+
+import lombok.DirectoryRunner;
+
+import org.junit.runner.RunWith;
+
+@RunWith(DirectoryRunner.class)
+public class TestLombokFilesIdempotent implements DirectoryRunner.TestParams {
+ @Override
+ public File getBeforeDirectory() {
+ return getAfterDirectory();
+ }
+
+ @Override
+ public File getAfterDirectory() {
+ return new File("test/transform/resource/after-delombok");
+ }
+
+ @Override
+ public DirectoryRunner.Compiler getCompiler() {
+ return DirectoryRunner.Compiler.DELOMBOK;
+ }
+
+ @Override
+ public boolean printErrors() {
+ return true;
+ }
+
+ @Override
+ public File getMessagesDirectory() {
+ return null;
+ }
+}
diff --git a/test/transform/src/lombok/transform/TestSourceFiles.java b/test/transform/src/lombok/transform/TestSourceFiles.java
new file mode 100644
index 00000000..7bcaa1f7
--- /dev/null
+++ b/test/transform/src/lombok/transform/TestSourceFiles.java
@@ -0,0 +1,52 @@
+/*
+ * Copyright © 2009-2010 Reinier Zwitserloot and Roel Spilker.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+package lombok.transform;
+
+import java.io.File;
+
+import lombok.DirectoryRunner;
+
+import org.junit.runner.RunWith;
+
+@RunWith(DirectoryRunner.class)
+public class TestSourceFiles implements DirectoryRunner.TestParams {
+ public DirectoryRunner.Compiler getCompiler() {
+ return DirectoryRunner.Compiler.DELOMBOK;
+ }
+
+ public boolean printErrors() {
+ return true;
+ }
+
+ public File getBeforeDirectory() {
+ return new File("test/pretty/resource/before");
+ }
+
+ public File getAfterDirectory() {
+ return new File("test/pretty/resource/after");
+ }
+
+ @Override
+ public File getMessagesDirectory() {
+ return null;
+ }
+}
diff --git a/test/transform/src/lombok/transform/TestWithDelombok.java b/test/transform/src/lombok/transform/TestWithDelombok.java
new file mode 100644
index 00000000..b4ee6793
--- /dev/null
+++ b/test/transform/src/lombok/transform/TestWithDelombok.java
@@ -0,0 +1,56 @@
+/*
+ * Copyright © 2009-2010 Reinier Zwitserloot and Roel Spilker.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+package lombok.transform;
+
+import java.io.File;
+
+import lombok.DirectoryRunner;
+
+import org.junit.runner.RunWith;
+
+@RunWith(DirectoryRunner.class)
+public class TestWithDelombok implements DirectoryRunner.TestParams {
+ @Override
+ public DirectoryRunner.Compiler getCompiler() {
+ return DirectoryRunner.Compiler.DELOMBOK;
+ }
+
+ @Override
+ public boolean printErrors() {
+ return true;
+ }
+
+ @Override
+ public File getBeforeDirectory() {
+ return new File("test/transform/resource/before");
+ }
+
+ @Override
+ public File getAfterDirectory() {
+ return new File("test/transform/resource/after-delombok");
+ }
+
+ @Override
+ public File getMessagesDirectory() {
+ return new File("test/transform/resource/messages-delombok");
+ }
+}