org.apache.tapestry5.ioc.junit

## Class TapestryIOCJUnit4ClassRunner

- java.lang.Object
- - org.junit.runner.Runner
  - - org.junit.runners.ParentRunner<org.junit.runners.model.FrameworkMethod>
    - - org.junit.runners.BlockJUnit4ClassRunner
      - - org.apache.tapestry5.ioc.junit.TapestryIOCJUnit4ClassRunner

- All Implemented Interfaces:
    org.junit.runner.Describable, org.junit.runner.manipulation.Filterable, org.junit.runner.manipulation.Sortable

      public class TapestryIOCJUnit4ClassRunner
      extends org.junit.runners.BlockJUnit4ClassRunner

  A JUnit4ClassRunner to help with Tapestry IOC integration tests. The test runner requires a registry configuration to be defined in a `Registry` annotation. A `RegistryShutdownType` can be specified to configure the lifecycle of the test registry and it's services

  `ModuleDef`s can be added to the `Registry` by annotating a factory method(s) with `ModuleDef`. These `ModuleDef` factory methods must be

  - public
  - static
  - take zero arguments
  - return a subclass of `ModuleDef`

  Any services defined in the registry can be `Inject`ed into the test class to be used during testing.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `TapestryIOCJUnit4ClassRunner.RegistryManagerRunNotifier`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `TapestryIOCJUnit4ClassRunner(Class<?> type)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected Object` | `createTest()`
    `void` | `run(org.junit.runner.notification.RunNotifier notifier)`
    `protected org.junit.runners.model.Statement` | `withAfterClasses(org.junit.runners.model.Statement statement)`

    - ### Methods inherited from class org.junit.runners.BlockJUnit4ClassRunner

      `collectInitializationErrors, computeTestMethods, describeChild, getChildren, getTestRules, methodBlock, methodInvoker, possiblyExpectingExceptions, rules, runChild, testName, validateConstructor, validateInstanceMethods, validateNoNonStaticInnerClass, validateOnlyOneConstructor, validateTestMethods, validateZeroArgConstructor, withAfters, withBefores, withPotentialTimeout`

    - ### Methods inherited from class org.junit.runners.ParentRunner

      `childrenInvoker, classBlock, classRules, filter, getDescription, getName, getRunnerAnnotations, getTestClass, runLeaf, setScheduler, sort, validatePublicVoidNoArgMethods, withBeforeClasses`

    - ### Methods inherited from class org.junit.runner.Runner

      `testCount`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### TapestryIOCJUnit4ClassRunner

          public TapestryIOCJUnit4ClassRunner(Class<?> type)
                                       throws org.junit.runners.model.InitializationError

      Throws:
        `org.junit.runners.model.InitializationError`

  - ### Method Detail

    - #### run

          public void run(org.junit.runner.notification.RunNotifier notifier)

      Overrides:
        `run` in class `org.junit.runners.ParentRunner<org.junit.runners.model.FrameworkMethod>`

    - #### withAfterClasses

          protected org.junit.runners.model.Statement withAfterClasses(org.junit.runners.model.Statement statement)

      Overrides:
        `withAfterClasses` in class `org.junit.runners.ParentRunner<org.junit.runners.model.FrameworkMethod>`

    - #### createTest

          protected Object createTest()
                               throws Exception

      Overrides:
        `createTest` in class `org.junit.runners.BlockJUnit4ClassRunner`
      Throws:
        `Exception`

${project.version} - Copyright © 2003-2014 The Apache Software Foundation.