Package 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.Orderable`, `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
  Description
  `static class`
  `TapestryIOCJUnit4ClassRunner.RegistryManagerRunNotifier`

- ## Constructor Summary

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

- ## Method Summary

  Modifier and Type
  Method
  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, createTest, describeChild, getChildren, getTestRules, isIgnored, methodBlock, methodInvoker, possiblyExpectingExceptions, rules, runChild, testName, validateConstructor, validateFields, validateInstanceMethods, validateNoNonStaticInnerClass, validateOnlyOneConstructor, validateTestMethods, validateZeroArgConstructor, withAfters, withBefores, withPotentialTimeout`

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

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

  ### 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 Details

  - ### TapestryIOCJUnit4ClassRunner

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

- ## Method Details

  - ### 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`