aboutsummaryrefslogtreecommitdiff
path: root/velocity-engine-core/src/test/java/org/apache/velocity
diff options
context:
space:
mode:
authorClaude Brisson <cbrisson@apache.org>2019-12-28 12:17:30 +0000
committerClaude Brisson <cbrisson@apache.org>2019-12-28 12:17:30 +0000
commitead820a5a3d788f164602396c9d1e0415b71940e (patch)
tree2f223b3092bc17994e67febe4c5bee66daa8beb0 /velocity-engine-core/src/test/java/org/apache/velocity
parente6cbf920085834ef2e61cbbe1e0979a8cafa4bf9 (diff)
downloadapache-velocity-engine-ead820a5a3d788f164602396c9d1e0415b71940e.tar.gz
[engine] Fix VELOCITY-904 again
git-svn-id: https://svn.apache.org/repos/asf/velocity/engine/trunk@1872050 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'velocity-engine-core/src/test/java/org/apache/velocity')
-rwxr-xr-xvelocity-engine-core/src/test/java/org/apache/velocity/test/issues/Velocity904TestCase.java25
1 files changed, 25 insertions, 0 deletions
diff --git a/velocity-engine-core/src/test/java/org/apache/velocity/test/issues/Velocity904TestCase.java b/velocity-engine-core/src/test/java/org/apache/velocity/test/issues/Velocity904TestCase.java
index 04d78373..e1e55268 100755
--- a/velocity-engine-core/src/test/java/org/apache/velocity/test/issues/Velocity904TestCase.java
+++ b/velocity-engine-core/src/test/java/org/apache/velocity/test/issues/Velocity904TestCase.java
@@ -68,4 +68,29 @@ public class Velocity904TestCase extends BaseTestCase
assertEvalEquals("$param$param2$param", "#macro(macro1 $return)$return#macro2($param2)$return#end#macro(macro2 $return)$return#end#macro1($param)");
}
+ public void testNoArgNoPreserve()
+ {
+ assertEvalEquals("","#macro(testMacro $param)#end#testMacro()");
+ }
+
+ public void testNoArgPreserve()
+ {
+ assertEvalEquals("","#macro(testMacro $param)#end#testMacro()");
+ }
+
+ public void testConstantSetToNullNoPreserve()
+ {
+ assertEvalEquals("$input", "#macro(mymacro $input)#set($input = $null)$input#end#mymacro('string-value')");
+ assertEvalEquals("$input", "#macro(mymacro $input)#set($input = $null)$input#end#mymacro(\"interpolated-$bar-value\")");
+ assertEvalEquals("$input", "#macro(mymacro $input)#set($input = $null)$input#end#mymacro(true)");
+ assertEvalEquals("$input", "#macro(mymacro $input)#set($input = $null)$input#end#mymacro(4.5)");
+ }
+
+ public void testConstantSetToNullPreserve()
+ {
+ assertEvalEquals("'string-value'", "#macro(mymacro $input)#set($input = $null)$input#end#mymacro('string-value')");
+ assertEvalEquals("\"interpolated-$bar-value\"", "#macro(mymacro $input)#set($input = $null)$input#end#mymacro(\"interpolated-$bar-value\")");
+ assertEvalEquals("$input", "#macro(mymacro $input)#set($input = $null)$input#end#mymacro(true)");
+ assertEvalEquals("$input", "#macro(mymacro $input)#set($input = $null)$input#end#mymacro(4.5)");
+ }
}