camel-kafka-connector
camel-kafka-connector copied to clipboard
Use the deliverable artifact in the plugin.path during testing
The plugin.path configured in the connect runtime uses either the path of the packaged jar or the compiled classes.
There is one circumstance where this is less than ideal: when the jar file is used to determine the path, the compiled class files will also be present. Therefore, the behavior is not entirely deterministic and could lead to subtle bugs during test execution (in case there are circumstances modifying how the connect runtime determines what to load).
Some possible solutions:
- remove the compiled classes prior to the
verifytarget - copy the jar file to a different/temporary location and use that in the plugin path
- extract the package to a temporary location prior to the test, and use its location in the plugin path (also adjusting the test dependencies to
providedscope).
c/c: @valdar
The risk we were discussing today.
@orpiske where do we stand in your opinion about this?
So, I think the only way we could do something like this is by testing it outside of the build (as in a by a separate test framework). Although the risk do exist, we haven't come across it in since the project beginning. Therefore, I think we can close this as 'won't fix'.