Add ControllerServices
After creating a new Test Runner, we can add any Controller Services to the Test
Runner that our Processor will need in order to perform its job. We do this by calling the
addControllerService
method and supply both an identifier for the
Controller Service and an instance of the Controller Service.
If the Controller Service needs to be configured, its properties can be set by calling
the setProperty(ControllerService, PropertyDescriptor, String)
,
setProperty(ControllerService, String, String)
, or
setProperty(ControllerService, PropertyDescriptor, AllowableValue)
method. Each of these methods returns a ValidationResult
. This object
can then be inspected to ensure that the property is valid by calling
isValid
. Annotation data can be set by calling the
setAnnotationData(ControllerService, String)
method.
We can now ensure that the Controller Service is valid by calling
assertValid(ControllerService)
- or ensure that the configured values
are not valid, if testing the Controller Service itself, by calling
assertNotValid(ControllerService)
.
Once a Controller Service has been added to the Test Runner and configured, it can now
be enabled by calling the enableControllerService(ControllerService)
method. If the Controller Service is not valid, this method will throw an
IllegalStateException. Otherwise, the service is now ready to use.