Change KarafTestContainer to rely directly on options and KarafPropertiesFile #18
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Please do not merge this pull request yet.
I've created it as entry point for discussion about Pax Exam options used by Karaf test container. In few places we have commas which are simply separators for properties like boot features, repositories and so on. Because of that in many places we need to keep these "," and have values prepended by it. This causes small, but additional effort in test code.
To avoid string glue for boot features and repositories I prepared additional options:
These options allows to extend bootFeatures and featureRepositories properties in org.apache.karaf.features.cfg file.
Additional option introduced by this commit is LogCategoryLevelOption which allows to specify log4j.logger. property inside org.ops4j.pax.logging.cfg.
During my work on these options I've found that lots of options are handled in manual way - ie. each config option has corresponding method in KarafTestContainer. Amount of code duplicated or very similar there is terrifying. If you don't mean, and if you like the approach of unifying option handling, I would like to refactor it a little bit and then merge this pull request.