Class AntUnitSuite

  • All Implemented Interfaces:
    junit.framework.Test

    public class AntUnitSuite
    extends junit.framework.TestSuite
    A JUnit 3 TestSuite that group a suite of AntUnit targets coming from an ant script.
    • Constructor Summary

      Constructors 
      Constructor Description
      AntUnitSuite​(java.io.File scriptFile, java.lang.Class rootClass)
      Create a JUnit TestSuite that when executed will run the given ant script.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      org.apache.tools.ant.BuildException getAntInitialisationException()  
      boolean hasAntInitError()  
      void run​(junit.framework.TestResult testResult)
      void runInContainer​(java.util.List targetList, AntUnitExecutionNotifier notifier)
      Execute the test suite in a 'container' similar to the ant 'container'.
      void runTest​(junit.framework.Test test, junit.framework.TestResult result)
      • Methods inherited from class junit.framework.TestSuite

        addTest, addTestSuite, countTestCases, createTest, getName, getTestConstructor, setName, testAt, testCount, tests, toString, warning
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • AntUnitSuite

        public AntUnitSuite​(java.io.File scriptFile,
                            java.lang.Class rootClass)
        Create a JUnit TestSuite that when executed will run the given ant script.

        Note that it is the responsibility of the caller to give the correct File reference. Namely, if the File is a relative file, it will be resolve relatively to the execution directory (which might be different different from the project root directory).

        Parameters:
        scriptFile - AntUnit script file
        rootClass - The test class that creates this suite. This is used to give a name to the suite so that an IDE can reexecute this suite.
    • Method Detail

      • run

        public void run​(junit.framework.TestResult testResult)

        Run the full AntUnit suite.

        Specified by:
        run in interface junit.framework.Test
        Overrides:
        run in class junit.framework.TestSuite
      • runTest

        public void runTest​(junit.framework.Test test,
                            junit.framework.TestResult result)

        Run a single test target of the AntUnit suite. suiteSetUp, setUp, tearDown and suiteTearDown are executed around it.

        Overrides:
        runTest in class junit.framework.TestSuite
      • runInContainer

        public void runInContainer​(java.util.List targetList,
                                   AntUnitExecutionNotifier notifier)
        Execute the test suite in a 'container' similar to the ant 'container'.

        When ant executes a project it redirect the input and the output. In this context we will only redirect output (unit test are not supposed to be interactive).

        Parameters:
        targetList - The list of test target to execute
        notifier - The AntUnit notifier that will receive execution notifications
      • hasAntInitError

        public boolean hasAntInitError()
      • getAntInitialisationException

        public org.apache.tools.ant.BuildException getAntInitialisationException()