aboutsummaryrefslogtreecommitdiff
path: root/java/src/main/java/org/pablotron/luigi/Test.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/src/main/java/org/pablotron/luigi/Test.java')
-rw-r--r--java/src/main/java/org/pablotron/luigi/Test.java57
1 files changed, 57 insertions, 0 deletions
diff --git a/java/src/main/java/org/pablotron/luigi/Test.java b/java/src/main/java/org/pablotron/luigi/Test.java
new file mode 100644
index 0000000..2a560e2
--- /dev/null
+++ b/java/src/main/java/org/pablotron/luigi/Test.java
@@ -0,0 +1,57 @@
+package org.pablotron.luigi;
+
+import java.util.Map;
+import java.util.HashMap;
+
+import org.pablotron.luigi.LuigiError;
+import org.pablotron.luigi.Filter;
+import org.pablotron.luigi.Template;
+import org.pablotron.luigi.Cache;
+
+public final class Test {
+ // test template
+ private static final String TEMPLATE =
+ "test basic: hello %{name}\n" +
+ "test filter: hello %{name | uc}\n" +
+ "test custom: %{name | custom | uc | lc}\n" +
+ "test custom_with_arg: %{name | custom_with_arg hello}\n";
+
+ // test template cache
+ private static final Cache cache = new Cache(new HashMap<String, String>() {{
+ put("test-template", TEMPLATE);
+ }});
+
+ // test arguments
+ private static final Map<String, String> args = new HashMap<String, String>() {{
+ put("name", "paul");
+ }};
+
+ // custom filters
+ private static final Map<String, Filter.Handler> filters = new HashMap<String, Filter.Handler>() {{
+ // add custom filter
+ put("custom", new Filter.Handler() {
+ public String filter(String val, String args[], Map<String, String> row) {
+ return "custom";
+ }
+ });
+
+ // add custom filter with argument
+ put("custom_with_arg", new Filter.Handler() {
+ public String filter(String val, String args[], Map<String, String> row) {
+ return (args.length > 0) ? args[0] : "custom";
+ }
+ });
+ }};
+
+ public static void main(String params[]) throws Exception {
+ // add custom filters
+ Filter.FILTERS.putAll(filters);
+
+ // create and run template
+ final Template t = new Template(TEMPLATE);
+ System.out.print(t.run(args));
+
+ // run cache
+ System.out.print(cache.run("test-template", args));
+ }
+};