Type: New Feature
Affects Version/s: None
Fix Version/s: 7.0.0
see org.apache.tomee.embedded.SingleInstanceRunnerTest for a sample.
idea is to reuse some part of ApplicationComposer API to get a single container for all tests in embedded mode.
Base is to declare an @Application class which holds the model and some injections.
Note: this can be replaced setting tomee.application-composer.application property to the fully qualified name of the app.
Note: @Application classes are only searched in the same jar as the test.
- @Classes: only context value is used.
- @ContainerProperties: to configure the container
- @WebResource: first value can be used to set the docBase (other values are ignored)
- @TomEEEmbeddedSingleRunner.LifecycleTasks: allow to add some lifecycle tasks (like starting a ftp/sft/elasticsearch... server)
- @RandomPort: with the value http or https. Supported types are URL (context base) and int (the port).