ParameterResolver
defines the API for Extensions
that wish to dynamically resolve arguments for parameters
at runtime.
If a constructor for a test class or a
@Test
,
@BeforeEach
,
@AfterEach
,
@BeforeAll
, or
@AfterAll
method declares a parameter,
an argument for the parameter must be resolved at runtime by a
ParameterResolver
.
Consult the documentation in Extension
for details on
constructor requirements.
supportsParameter(ParameterContext, ExtensionContext)
, resolveParameter(ParameterContext, ExtensionContext)
, ParameterContext
, TestInstanceFactory
, TestInstancePostProcessor
, TestInstancePreDestroyCallback
Modifier and Type | Method and Description |
---|---|
public Object | Returns: the resolved argument for the parameter; may only benull if the
parameter type is not a primitivethe context for the parameter for which an argument should
be resolved; never parameterContext, ExtensionContext null the extension context for the extensionContext)Executable
about to be invoked; never null Resolve an argument for the |
public boolean | Returns: true if this resolver can resolve an argument for the parameterthe context for the parameter for which an argument should
be resolved; never parameterContext, ExtensionContext null the extension context for the extensionContext)Executable
about to be invoked; never null Determine if this resolver supports resolution of an argument for the
|
resolveParameter | back to summary |
---|---|
public Object resolveParameter(ParameterContext parameterContext, ExtensionContext extensionContext) throws ParameterResolutionException Resolve an argument for the This method is only called by the framework if The
|
supportsParameter | back to summary |
---|---|
public boolean supportsParameter(ParameterContext parameterContext, ExtensionContext extensionContext) throws ParameterResolutionException Determine if this resolver supports resolution of an argument for the
The
|