blob: fdebe1470b1e523dc46d74337b154bf1db8d62a2 [file] [log] [blame]
#*
@test reference.vm
This template is used for Velocity regression testing.
If you alter this template make sure you change the
corresponding comparison file so that the regression
test doesn't fail incorrectly.
*#
#set($_foo = "bar")
$_foo
#if ($_foo.equals("bar"))
\$_foo equals "bar" : $_foo
#end
Late introspection :
$vector.firstElement().length()
More stupid reference escaping ...
When it does exist in the context :
#set($foo = "foo")
$foo
\$foo
\$!foo
$\!foo
$\\!foo
\$\!foo
And when it doesn't :
$bar
\$bar
\$!bar (because it's just text...)
$\!foo
$\\!foo
$\\\!foo
$\\\\!foo
\\$\!foo
Misc tests :
[$foo.bar]
Test lower case property names
$provider.Title
$provider.title
#foreach($i in $provider.vector)
$i
#end
#foreach($i in $provider.Vector)
$i
#end
Now test if we can use lowercase for propertes in set
#set($oldtitle = $provider.title)
Was : $oldtitle
#set($provider.title = "geir")
Now : $provider.title
#set($provider.title = $oldtitle)
Back : $provider.title
Test what was a bug :
#set($b = 'boy')
#set($c = 'cat')
$b${c}.java
${b}${c}.java
More tests :
$provider.title
$$provider.title
#$provider.title
$foo.bar#if( $foo ) ($bar) #end
Test boolean introspection isFoo()
#if( $boolobj.boolean == true )
Correct
#else
Wrong
#end
#if ( $boolobj.notboolean == true )
Wrong
#else
Correct
#end