Interface TestFeature
- All Superinterfaces:
DefaultFeature
,io.micronaut.core.naming.Described
,Feature
,io.micronaut.core.naming.Named
,io.micronaut.core.order.Ordered
- All Known Subinterfaces:
PicocliTestFeature
- All Known Implementing Classes:
Junit
,KoTest
,PicocliJunit
,PicocliKoTest
,PicocliSpock
,Spock
-
Field Summary
Fields inherited from interface io.micronaut.core.order.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
-
Method Summary
Modifier and TypeMethodDescriptiondefault void
apply
(GeneratorContext generatorContext) If this method is called for a given feature that means the feature was explicitly selected, included by default as a result ofDefaultFeature.shouldApply(ApplicationType, io.micronaut.starter.options.Options, java.util.Set)
, or added explicitly by another feature throughFeatureContext.addFeature(Feature)
.void
doApply
(GeneratorContext generatorContext) default int
getOrder()
The order of a feature controls the order in which it applies.default boolean
isJunit()
default boolean
isKoTest()
default boolean
default boolean
isSpock()
default boolean
Some features should not be visible to the user because they are a common parent of other selectable features, or they should always be applied, or any other reason.default boolean
shouldApply
(ApplicationType applicationType, Options options, Set<Feature> selectedFeatures) Determines if the feature should be applied to the project.default boolean
supports
(ApplicationType applicationType) This method must be implemented to ensure it is only selectable for the desired application types.Methods inherited from interface io.micronaut.starter.feature.DefaultFeature
getTargetFramework
Methods inherited from interface io.micronaut.core.naming.Described
getDescription
Methods inherited from interface io.micronaut.starter.feature.Feature
getCategory, getDescription, getMicronautDocumentation, getName, getThirdPartyDocumentation, getTitle, isCommunity, isPreview, processSelectedFeatures
-
Method Details
-
isVisible
default boolean isVisible()Description copied from interface:Feature
Some features should not be visible to the user because they are a common parent of other selectable features, or they should always be applied, or any other reason. -
getOrder
default int getOrder()Description copied from interface:Feature
The order of a feature controls the order in which it applies. The order of a feature is important to ensure that any previous work done by other features that may be required is done. SeeFeaturePhase
for a list of phases to choose from. -
apply
Description copied from interface:Feature
If this method is called for a given feature that means the feature was explicitly selected, included by default as a result ofDefaultFeature.shouldApply(ApplicationType, io.micronaut.starter.options.Options, java.util.Set)
, or added explicitly by another feature throughFeatureContext.addFeature(Feature)
. At this point the feature list is set and cannot change. This method can be implemented to modify the generated project. The feature can add templates by executingGeneratorContext.addTemplate(String, io.micronaut.starter.template.Template)
, modify configuration by modifyingGeneratorContext.getConfiguration()
orGeneratorContext.getBootstrapConfiguration()
, or modify build properties throughGeneratorContext.getBuildProperties()
. -
doApply
-
getTestFramework
TestFramework getTestFramework() -
isJunit
default boolean isJunit() -
isSpock
default boolean isSpock() -
isKotlinTestFramework
default boolean isKotlinTestFramework() -
isKoTest
default boolean isKoTest() -
shouldApply
default boolean shouldApply(ApplicationType applicationType, Options options, Set<Feature> selectedFeatures) Description copied from interface:DefaultFeature
Determines if the feature should be applied to the project. Default features do not need to be concerned if the feature was already selected and therefore is already in the list of selected features. The addition to the set is based on the identity of the feature instance and all features are singletons.- Specified by:
shouldApply
in interfaceDefaultFeature
- Parameters:
applicationType
- The application typeoptions
- The optionsselectedFeatures
- The features manually selected by the user- Returns:
- True if the feature should apply
-
supports
Description copied from interface:Feature
This method must be implemented to ensure it is only selectable for the desired application types. This method is not used for determining if a default feature should be applied.
-