• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#*
2
3@test escape.vm
4
5This template is used for Velocity regression testing.
6If you alter this template make sure you change the
7corresponding comparison file so that the regression
8test doesn't fail incorrectly.
9
10Tests the basic integer math capabilities.
11
12*#
13
14Addition and subtraction :
15#set($foo = 1)
16#set($foo = $foo + 1)
171 + 1 = $foo
18$foo - 1 = #set($foo = $foo - 1 )$foo
19
20Multiplication, division, and modulus :
21#set($bar = 5)
22#set($rem = $bar % 2)
23#set($rem2 = $bar % 0)
24#set($rem3 = 7%2)
25$bar % 2 = $rem
26$bar % 0 = $rem2
277 % 2 = $rem3
28$bar / 2 = #set($rem = $bar / 2 )$rem
29$bar / 0 = #set($rem4 = $bar / 0 )$rem4
30$bar * 2 = #set($rem = $bar * 2 )$rem
31
32$bar * -1 = #set($rem = $bar * -1)$rem
33$bar * -2 = #set($rem = $bar *-2)$rem
34$bar * -2 = #set($rem = -2*$bar)$rem
35
36And now null nodes to make sure it doesn't throw an NPE :
37#set($flargh=$woogie + $wabbie)
38
39Some test for the new number-handling
40$int1 + $long1 = #set ($rem = $int1 + $long1)$rem
41$int1 - $long1 = #set ($rem = $int1 - $long1)$rem
42$int1 * $long1 = #set ($rem = $int1 * $long1)$rem
43$int1 / $long1 = #set ($rem = $int1 / $long1)$rem
44$int1 % $long1 = #set ($rem = $int1 % $long1)$rem
45
46$int1 + $float1 = #set ($rem = $int1 + $float1)$rem
47$int1 - $float1 = #set ($rem = $int1 - $float1)$rem
48$int1 * $float1 = #set ($rem = $int1 * $float1)$rem
49$int1 / $float1 = #set ($rem = $int1 / $float1)$rem
50
51This checks that an object implementing TemplateNumber can be used in arithmetic
52$int1 + $templatenumber1.AsNumber = #set ($rem = $int1 + $templatenumber1)$rem
53$int1 - $templatenumber1.AsNumber = #set ($rem = $int1 - $templatenumber1)$rem
54$int1 * $templatenumber1.AsNumber = #set ($rem = $int1 * $templatenumber1)$rem
55$int1 / $templatenumber1.AsNumber = #set ($rem = $int1 / $templatenumber1)$rem
56
57Test integer division
585 / 2 = #set($result = 5 / 2)$result
59
60Test decimal division
615 / 2.0 = #set($result = 5 / 2.0)$result
625.0 / 2 = #set($result = 5.0 / 2)$result
63
64Unary negate
65#set($five = 5)
66#set($a = 0 - $five)
67#set($b = 0-$five)
68#set($c = - $five)
69#set($d = -$five)
70#set($e =-$five)
71-5 = $a = $b = $c = $d = $e
72