Applied patch from Jan Limpens 'ReflectionBasedDictionaryAdapter needs to check if...
[castle.git] / Tools / NVelocity / test / templates / reference.vm
blobe36f5220cf9fa983b45c84d4906958a2f23d742c
1 #*
3 @test reference.vm
5 This template is used for Velocity regression testing.
6 If you alter this template make sure you change the
7 corresponding comparison file so that the regression 
8 test doesn't fail incorrectly.
12 #set($_foo = "bar")
13 $_foo
14 #if ($_foo.Equals("bar"))
15    \$_foo equals "bar" : $_foo
16 #end
18 Late introspection :
20 $vector.get_Item(0).Length
23 More stupid reference escaping ...
25 When it does exist in the context :
27 #set($foo = "foo")
28 $foo
29 \$foo
30 \$!foo
31 $\!foo
32 $\\!foo
33 \$\!foo
35 And when it doesn't :
37 $bar
38 \$bar
40 \$!bar  (because it's just text...)
42 $\!foo
43 $\\!foo
44 $\\\!foo
45 $\\\\!foo
46 \\$\!foo
48 Misc tests :
50 [$foo.bar]
53 Test lower case property names 
55 $provider.Title
56 $provider.title
58 #foreach($i in $provider.vector)
59  $i
60 #end
61 #foreach($i in $provider.Vector)
62  $i
63 #end
65 Now test if we can use lowercase for propertes in set
66 #set($oldtitle = $provider.title)
67 Was : $oldtitle
68 #set($provider.title = "geir")
69 Now : $provider.title
70 #set($provider.title = $oldtitle)
71 Back : $provider.title
73 Test what was a bug :
75 #set($b = 'boy')
76 #set($c = 'cat')
77 $b${c}.java
78 ${b}${c}.java
81 More tests :
83 $provider.title
84 $$provider.title
85 #$provider.title
87 $foo.bar#if( $foo ) ($bar) #end
90 Test boolean introspection isFoo()
92 #if( $boolobj.isBoolean == true )
93   Correct
94 #else
95   Wrong
96 #end
99 #if ( $boolobj.isNotboolean == true )
100    Wrong
101 #else
102    Correct
103 #end