Added tests for @ExtensionMethod

This commit is contained in:
Reinier Zwitserloot committed 2012-07-16 21:05:48 +02:00
1 parent 06826342f3
commit c09481eb8e
3 files changed
+65

No files matched your search

@@ -0,0 +1,17 @@
class ExtensionMethodPlain {
public String test() {
int[] intArray = {5, 3, 8, 2};
java.util.Arrays.sort(intArray);
String iAmNull = null;
return ExtensionMethodPlain.Extensions.or(iAmNull, ExtensionMethodPlain.Extensions.toTitleCase("hELlO, WORlD!"));
}
static class Extensions {
public static <T> T or(T obj, T ifNull) {
return obj != null ? obj : ifNull;
}
public static String toTitleCase(String in) {
if (in.isEmpty()) return in;
return "" + Character.toTitleCase(in.charAt(0)) + in.substring(1).toLowerCase();
}
}
}
@@ -0,0 +1,25 @@
import lombok.experimental.ExtensionMethod;
@ExtensionMethod({java.util.Arrays.class, ExtensionMethodPlain.Extensions.class}) class ExtensionMethodPlain {
static class Extensions {
Extensions() {
super();
}
public static <T>T or(T obj, T ifNull) {
return ((obj != null) ? obj : ifNull);
}
public static String toTitleCase(String in) {
if (in.isEmpty())
return in;
return (("" + Character.toTitleCase(in.charAt(0))) + in.substring(1).toLowerCase());
}
}
ExtensionMethodPlain() {
super();
}
public String test() {
int[] intArray = {5, 3, 8, 2};
java.util.Arrays.sort(intArray);
String iAmNull = null;
return ExtensionMethodPlain.Extensions.or(iAmNull, ExtensionMethodPlain.Extensions.toTitleCase("hELlO, WORlD!"));
}
}
@@ -0,0 +1,23 @@
import lombok.experimental.ExtensionMethod;
@ExtensionMethod({java.util.Arrays.class, ExtensionMethodPlain.Extensions.class})
class ExtensionMethodPlain {
public String test() {
int[] intArray = {5, 3, 8, 2};
intArray.sort();
String iAmNull = null;
return iAmNull.or("hELlO, WORlD!".toTitleCase());
}
static class Extensions {
public static <T> T or(T obj, T ifNull) {
return obj != null ? obj : ifNull;
}
public static String toTitleCase(String in) {
if (in.isEmpty()) return in;
return "" + Character.toTitleCase(in.charAt(0)) + in.substring(1).toLowerCase();
}
}
}