org.hansel
Class CoverageDecorator

java.lang.Object
  extended by junit.framework.TestSuite
      extended by org.hansel.CoverageDecorator
All Implemented Interfaces:
junit.framework.Test
Direct Known Subclasses:
AssertionCoverageDecorator

public class CoverageDecorator
extends junit.framework.TestSuite

This class decorated tests with coverage testing. Test classes that are added to this decorator are reloaded with an instrumenting classloader, that adds coverage checks to the code. After all tests are run, and if non of them has failed, the coverage results are added to the result of the test.

Author:
Niklas Mehner

Constructor Summary
CoverageDecorator(java.lang.Class[] classesCovered)
          Creates a new (empty) CoverageDecorator.
CoverageDecorator(java.lang.Class[] classesCovered, ProbeFilter probeFilter)
          Creates a new (empty) CoverageDecorator.
CoverageDecorator(java.lang.Class testClass, java.lang.Class[] classesCovered)
          Creates a new CoverageDecorator containing the test instantiated from the given class
CoverageDecorator(java.lang.Class testClass, java.lang.Class[] classesCovered, ProbeFilter probeFilter)
          Creates a new CoverageDecorator containging the test instantiated from the given class
 
Method Summary
 java.lang.Class[] getClassesCovered()
           
protected  ProbeTable getProbeTable()
           
protected  boolean init(junit.framework.TestResult result)
           
 void run(junit.framework.TestResult result)
           
 void setDisplayStatistics(boolean display)
           
protected  void shutdown(junit.framework.TestResult result)
           
protected  void superRun(junit.framework.TestResult result)
           
 java.lang.String toString()
           
 
Methods inherited from class junit.framework.TestSuite
addTest, addTestSuite, countTestCases, createTest, getName, getTestConstructor, runTest, setName, testAt, testCount, tests, warning
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

CoverageDecorator

public CoverageDecorator(java.lang.Class[] classesCovered)
Creates a new (empty) CoverageDecorator. This does not print out any coverage statistics

Parameters:
classesCovered - Classes that have to be covered.

CoverageDecorator

public CoverageDecorator(java.lang.Class[] classesCovered,
                         ProbeFilter probeFilter)
Creates a new (empty) CoverageDecorator. This does not print out any coverage statistics

Parameters:
classesCovered - Classes that have to be covered.

CoverageDecorator

public CoverageDecorator(java.lang.Class testClass,
                         java.lang.Class[] classesCovered)
Creates a new CoverageDecorator containing the test instantiated from the given class

Parameters:
testClass - Class the test is instantiated from. The restrictions for the class are the same as for junit.framework.addTestSuite()
classesCovered - Classes that have to be covered.

CoverageDecorator

public CoverageDecorator(java.lang.Class testClass,
                         java.lang.Class[] classesCovered,
                         ProbeFilter probeFilter)
Creates a new CoverageDecorator containging the test instantiated from the given class

Parameters:
testClass - Class the test is instantiated from. The restrictions for the class are the same as for junit.framework.addTestSuite()
classesCovered - Classes that have to be covered.
Method Detail

setDisplayStatistics

public void setDisplayStatistics(boolean display)

getClassesCovered

public java.lang.Class[] getClassesCovered()

getProbeTable

protected ProbeTable getProbeTable()

superRun

protected void superRun(junit.framework.TestResult result)

init

protected boolean init(junit.framework.TestResult result)

shutdown

protected void shutdown(junit.framework.TestResult result)

run

public void run(junit.framework.TestResult result)
Specified by:
run in interface junit.framework.Test
Overrides:
run in class junit.framework.TestSuite

toString

public java.lang.String toString()
Overrides:
toString in class junit.framework.TestSuite