org.apache.velocity.test
Class TemplateTestCase

java.lang.Object
  extended by junit.framework.Assert
      extended by junit.framework.TestCase
          extended by org.apache.velocity.test.BaseTestCase
              extended by org.apache.velocity.test.TemplateTestCase
All Implemented Interfaces:
junit.framework.Test, TemplateTestBase

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 151484 2005-02-05 07:09:52Z wglass $
Author:
Daniel Rall, Jason van Zyl, Geir Magnusson Jr., Jon S. Stevens

Field Summary
protected  String baseFileName
          The base file name of the template and comparison file (i.e. array for array.vm and array.cmp).
 
Fields inherited from interface org.apache.velocity.test.TemplateTestBase
CMP_FILE_EXT, COMPARE_DIR, FILE_RESOURCE_LOADER_PATH, RESULT_DIR, RESULT_FILE_EXT, TEST_CASE_PROPERTIES, TMPL_FILE_EXT
 
Constructor Summary
TemplateTestCase(String baseFileName)
          Creates a new instance.
 
Method Summary
 void runTest()
          Runs the test.
protected  void setUp()
          Sets up the test.
static junit.framework.Test suite()
           
 
Methods inherited from class org.apache.velocity.test.BaseTestCase
assureResultsDirectoryExists, getFileName, getTestCaseName, isMatch, normalizeNewlines
 
Methods inherited from class junit.framework.TestCase
countTestCases, createResult, getName, run, run, runBare, setName, tearDown, toString
 
Methods inherited from class junit.framework.Assert
assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertFalse, assertFalse, assertNotNull, assertNotNull, assertNotSame, assertNotSame, assertNull, assertNull, assertSame, assertSame, assertTrue, assertTrue, fail, fail
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

baseFileName

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

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

suite

public static junit.framework.Test suite()

setUp

protected void setUp()
Sets up the test.

Overrides:
setUp in class junit.framework.TestCase

runTest

public void runTest()
Runs the test.

Overrides:
runTest in class junit.framework.TestCase


Copyright © 2002 Apache Software Foundation. All Rights Reserved.