Groovy DSL test hard to make work on Quarkus Platform
- Dominant language
- Java
- Stars
- 302
- Forks
- 232
- Avg merge
- 1d 20h
- Merged PRs (30d)
- 114
Description
The test can currently be characterized as follows:
1. The execution is moved to integration test phase
2. It relies on the existence of the runner artifact under target directory
3. The path to the runner is passed from pom.xml to the test via property
All of these are quite against how the tests in Quarkus Platform are set up:
1. Native tests are not executed and thus their CI is only reaching Maven test phase. This was discussed several times and the general agreement was that this should change, but it has not changed yet. Hence point 1. may get solved at some point by the Platform team.
2. Running `mvn package` in the generated test module directory `generated-platform-project/quarkus-camel/integration-tests/camel-quarkus-integration-test-groovy-dsl` does not produce any jars under target. Maybe quarkus-maven-plugin is not set up. It needs to be investigated.
3. Setting the `quarkus.runner` property (and moving surefire to integration-test) can be done by this piece of XSL added to `src/main/resources/xslt/camel/test-pom.xsl` in the Platform source tree:
```
default-test
test
integration-test
${project.build.directory}/quarkus-app/quarkus-run.jar
```
Instead on pushing on any of the above, I'll remove camel-quarkus-integration-test-groovy-dsl from the test list we publish for the platform for now.
@essobedo I wonder whether the classloading issue because of which we have this special setup cannot be fixed in Quarkus or elsewhere? If it can be fixed, we would not need to bother with any special measures to make the test work in the Platform.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with src/main/resources/xslt/camel/test-pom.xsl and the generated module at generated-platform-project/quarkus-camel/integration-tests/camel-quarkus-integration-test-groovy-dsl; run mvn package there to investigate why no runner artifact is produced. Trace the classloading issue and determine whether the test can work in the Platform without the special Surefire and runner configuration, then verify the Platform test list can include it.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- groovy, java
- Domain
- build-system, testing
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100