public class DefaultTestContext extends AttributeAccessorSupport implements TestContext
TestContext
interface.Constructor and Description |
---|
DefaultTestContext(Class<?> testClass,
MergedContextConfiguration mergedContextConfiguration,
CacheAwareContextLoaderDelegate cacheAwareContextLoaderDelegate)
Construct a new
DefaultTestContext from the supplied arguments. |
Modifier and Type | Method and Description |
---|---|
ApplicationContext |
getApplicationContext()
Get the application context for this
test context.
|
Class<?> |
getTestClass()
Get the test class for this test context.
|
Throwable |
getTestException()
Get the exception that was thrown during execution
of the test method.
|
Object |
getTestInstance()
Get the current test instance for this test context.
|
Method |
getTestMethod()
Get the current test method for this test context.
|
void |
markApplicationContextDirty(DirtiesContext.HierarchyMode hierarchyMode)
Mark the application context associated
with this test context as dirty (i.e., by removing it from the
context cache and closing it).
|
String |
toString()
Provide a String representation of this test context's state.
|
void |
updateState(Object testInstance,
Method testMethod,
Throwable testException)
Update this test context to reflect the state of the currently executing test.
|
attributeNames, copyAttributesFrom, equals, getAttribute, hasAttribute, hashCode, removeAttribute, setAttribute
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
attributeNames, getAttribute, hasAttribute, removeAttribute, setAttribute
public DefaultTestContext(Class<?> testClass, MergedContextConfiguration mergedContextConfiguration, CacheAwareContextLoaderDelegate cacheAwareContextLoaderDelegate)
DefaultTestContext
from the supplied arguments.testClass
- the test class for this test context; never null
mergedContextConfiguration
- the merged application context
configuration for this test context; never null
cacheAwareContextLoaderDelegate
- the delegate to use for loading
and closing the application context for this test context; never null
public ApplicationContext getApplicationContext()
The default implementation delegates to the CacheAwareContextLoaderDelegate
that was supplied when this TestContext
was constructed.
getApplicationContext
in interface TestContext
null
)IllegalStateException
- if the context returned by the context
loader delegate is not active (i.e., has been closed).CacheAwareContextLoaderDelegate.loadContext(org.springframework.test.context.MergedContextConfiguration)
public void markApplicationContextDirty(DirtiesContext.HierarchyMode hierarchyMode)
The default implementation delegates to the CacheAwareContextLoaderDelegate
that was supplied when this TestContext
was constructed.
markApplicationContextDirty
in interface TestContext
hierarchyMode
- the context cache clearing mode to be applied if the
context is part of a hierarchy (may be null
)CacheAwareContextLoaderDelegate.closeContext(org.springframework.test.context.MergedContextConfiguration, org.springframework.test.annotation.DirtiesContext.HierarchyMode)
public final Class<?> getTestClass()
TestContext
getTestClass
in interface TestContext
null
)public final Object getTestInstance()
TestContext
Note: this is a mutable property.
getTestInstance
in interface TestContext
null
)TestContext.updateState(Object, Method, Throwable)
public final Method getTestMethod()
TestContext
Note: this is a mutable property.
getTestMethod
in interface TestContext
null
)TestContext.updateState(Object, Method, Throwable)
public final Throwable getTestException()
TestContext
Note: this is a mutable property.
getTestException
in interface TestContext
null
if no exception was thrownTestContext.updateState(Object, Method, Throwable)
public void updateState(Object testInstance, Method testMethod, Throwable testException)
TestContext
Caution: concurrent invocations of this method might not be thread-safe, depending on the underlying implementation.
updateState
in interface TestContext
testInstance
- the current test instance (may be null
)testMethod
- the current test method (may be null
)testException
- the exception that was thrown in the test method,
or null
if no exception was thrown