public class WebMergedContextConfiguration extends MergedContextConfiguration
WebMergedContextConfiguration encapsulates the merged
context configuration declared on a test class and all of its superclasses
via @ContextConfiguration,
@WebAppConfiguration, and
@ActiveProfiles.
WebMergedContextConfiguration extends the contract of
MergedContextConfiguration by adding support for the resource base path configured via @WebAppConfiguration.
This allows the TestContext
to properly cache the corresponding WebApplicationContext
that was loaded using properties of this WebMergedContextConfiguration.
WebAppConfiguration,
MergedContextConfiguration,
ContextConfiguration,
ActiveProfiles,
ContextConfigurationAttributes,
SmartContextLoader.loadContext(MergedContextConfiguration),
Serialized Form| Constructor and Description |
|---|
WebMergedContextConfiguration(Class<?> testClass,
String[] locations,
Class<?>[] classes,
Set<Class<? extends ApplicationContextInitializer<?>>> contextInitializerClasses,
String[] activeProfiles,
String[] propertySourceLocations,
String[] propertySourceProperties,
Set<ContextCustomizer> contextCustomizers,
String resourceBasePath,
ContextLoader contextLoader,
CacheAwareContextLoaderDelegate cacheAwareContextLoaderDelegate,
MergedContextConfiguration parent)
Create a new
WebMergedContextConfiguration instance for the
supplied parameters. |
WebMergedContextConfiguration(Class<?> testClass,
String[] locations,
Class<?>[] classes,
Set<Class<? extends ApplicationContextInitializer<?>>> contextInitializerClasses,
String[] activeProfiles,
String[] propertySourceLocations,
String[] propertySourceProperties,
String resourceBasePath,
ContextLoader contextLoader,
CacheAwareContextLoaderDelegate cacheAwareContextLoaderDelegate,
MergedContextConfiguration parent)
Create a new
WebMergedContextConfiguration instance for the
supplied parameters. |
WebMergedContextConfiguration(MergedContextConfiguration mergedConfig,
String resourceBasePath)
Create a new
WebMergedContextConfiguration instance by copying
all properties from the supplied MergedContextConfiguration. |
| Modifier and Type | Method and Description |
|---|---|
boolean |
equals(Object other)
Determine if the supplied object is equal to this
WebMergedContextConfiguration
instance by comparing both object's locations,
annotated classes,
context initializer classes,
active profiles,
resource base path,
parents, and the fully qualified names of their
ContextLoaders. |
String |
getResourceBasePath()
Get the resource path to the root directory of the web application for the
test class, configured via
@WebAppConfiguration. |
int |
hashCode()
Generate a unique hash code for all properties of this
WebMergedContextConfiguration excluding the
test class. |
String |
toString()
Provide a String representation of the test class,
locations, annotated classes,
context initializer classes,
active profiles,
property source locations,
property source properties,
context customizers,
resource base path, the name of the
ContextLoader, and the
parent configuration. |
getActiveProfiles, getClasses, getContextCustomizers, getContextInitializerClasses, getContextLoader, getLocations, getParent, getParentApplicationContext, getPropertySourceLocations, getPropertySourceProperties, getTestClass, hasClasses, hasLocations, hasResources, nullSafeClassNamepublic WebMergedContextConfiguration(MergedContextConfiguration mergedConfig, String resourceBasePath)
WebMergedContextConfiguration instance by copying
all properties from the supplied MergedContextConfiguration.
If an empty value is supplied for the resourceBasePath
an empty string will be used.
resourceBasePath - the resource path to the root directory of the web applicationpublic WebMergedContextConfiguration(Class<?> testClass, @Nullable String[] locations, @Nullable Class<?>[] classes, @Nullable Set<Class<? extends ApplicationContextInitializer<?>>> contextInitializerClasses, @Nullable String[] activeProfiles, @Nullable String[] propertySourceLocations, @Nullable String[] propertySourceProperties, String resourceBasePath, ContextLoader contextLoader, CacheAwareContextLoaderDelegate cacheAwareContextLoaderDelegate, @Nullable MergedContextConfiguration parent)
WebMergedContextConfiguration instance for the
supplied parameters.
If a null value is supplied for locations,
classes, activeProfiles, propertySourceLocations,
or propertySourceProperties an empty array will be stored instead.
If a null value is supplied for the
contextInitializerClasses an empty set will be stored instead.
If an empty value is supplied for the resourceBasePath
an empty string will be used. Furthermore, active profiles will be sorted,
and duplicate profiles will be removed.
testClass - the test class for which the configuration was mergedlocations - the merged resource locationsclasses - the merged annotated classescontextInitializerClasses - the merged context initializer classesactiveProfiles - the merged active bean definition profilespropertySourceLocations - the merged PropertySource locationspropertySourceProperties - the merged PropertySource propertiesresourceBasePath - the resource path to the root directory of the web applicationcontextLoader - the resolved ContextLoadercacheAwareContextLoaderDelegate - a cache-aware context loader
delegate with which to retrieve the parent contextparent - the parent configuration or null if there is no parentpublic WebMergedContextConfiguration(Class<?> testClass, @Nullable String[] locations, @Nullable Class<?>[] classes, @Nullable Set<Class<? extends ApplicationContextInitializer<?>>> contextInitializerClasses, @Nullable String[] activeProfiles, @Nullable String[] propertySourceLocations, @Nullable String[] propertySourceProperties, @Nullable Set<ContextCustomizer> contextCustomizers, String resourceBasePath, ContextLoader contextLoader, CacheAwareContextLoaderDelegate cacheAwareContextLoaderDelegate, @Nullable MergedContextConfiguration parent)
WebMergedContextConfiguration instance for the
supplied parameters.
If a null value is supplied for locations,
classes, activeProfiles, propertySourceLocations,
or propertySourceProperties an empty array will be stored instead.
If a null value is supplied for contextInitializerClasses
or contextCustomizers, an empty set will be stored instead.
If an empty value is supplied for the resourceBasePath
an empty string will be used. Furthermore, active profiles will be sorted,
and duplicate profiles will be removed.
testClass - the test class for which the configuration was mergedlocations - the merged context resource locationsclasses - the merged annotated classescontextInitializerClasses - the merged context initializer classesactiveProfiles - the merged active bean definition profilespropertySourceLocations - the merged PropertySource locationspropertySourceProperties - the merged PropertySource propertiescontextCustomizers - the context customizersresourceBasePath - the resource path to the root directory of the web applicationcontextLoader - the resolved ContextLoadercacheAwareContextLoaderDelegate - a cache-aware context loader
delegate with which to retrieve the parent contextparent - the parent configuration or null if there is no parentpublic String getResourceBasePath()
@WebAppConfiguration.WebAppConfigurationpublic boolean equals(@Nullable Object other)
WebMergedContextConfiguration
instance by comparing both object's locations,
annotated classes,
context initializer classes,
active profiles,
resource base path,
parents, and the fully qualified names of their
ContextLoaders.equals in class MergedContextConfigurationpublic int hashCode()
WebMergedContextConfiguration excluding the
test class.hashCode in class MergedContextConfigurationpublic String toString()
ContextLoader, and the
parent configuration.toString in class MergedContextConfiguration