org.apache.velocity.test

Class TemplateTestCase

public class TemplateTestCase extends BaseTestCase implements TemplateTestBase

Easily add test cases which evaluate templates and check their output. NOTE: This class DOES NOT extend RuntimeTestCase because the TemplateTestSuite already initializes the Velocity runtime and adds the template test cases. Having this class extend RuntimeTestCase causes the Runtime to be initialized twice which is not good. I only discovered this after a couple hours of wondering why all the properties being setup were ending up as Vectors. At first I thought it was a problem with the Configuration class, but the Runtime was being initialized twice: so the first time the property is seen it's stored as a String, the second time it's seen the Configuration class makes a Vector with both Strings. As a result all the getBoolean(property) calls were failing because the Configurations class was trying to create a Boolean from a Vector which doesn't really work that well. I have learned my lesson and now have to add some code to make sure the Runtime isn't initialized more then once :-)

Version: $Id: TemplateTestCase.java,v 1.34.8.1 2004/03/03 23:23:04 geirm Exp $

Author: Daniel Rall Jason van Zyl Geir Magnusson Jr. Jon S. Stevens

Field Summary
ArrayListal
protected StringbaseFileName
The base file name of the template and comparison file (i.e. array for array.vm and array.cmp).
VelocityContextcontext
VelocityContextcontext1
VelocityContextcontext2
Hashtableh
TestProviderprovider
Vectorvec
Constructor Summary
TemplateTestCase(String baseFileName)
Creates a new instance.
Method Summary
voidrunTest()
Runs the test.
protected voidsetUp()
Sets up the test.
static Testsuite()

Field Detail

al

private ArrayList al

baseFileName

protected String baseFileName
The base file name of the template and comparison file (i.e. array for array.vm and array.cmp).

context

private VelocityContext context

context1

private VelocityContext context1

context2

private VelocityContext context2

h

private Hashtable h

provider

private TestProvider provider

vec

private Vector vec

Constructor Detail

TemplateTestCase

public TemplateTestCase(String baseFileName)
Creates a new instance.

Parameters: baseFileName The base name of the template and comparison file to use (i.e. array for array.vm and array.cmp).

Method Detail

runTest

public void runTest()
Runs the test.

setUp

protected void setUp()
Sets up the test.

suite

public static Test suite()
Copyright B) 2002 Apache Software Foundation. All Rights Reserved.