-
-
Notifications
You must be signed in to change notification settings - Fork 74
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Gradle-based integration project for Android & setup new CI pipeline for the project #178
Conversation
19bd2db
to
529acfc
Compare
Wow! Cool stuff! But do you want to ruin my Sunday with an early Christmas present?! |
@mannodermaus thanks again for the great work! Thoughts: The test results in CircleCI are only containing the method name. Is it possible to have at least the class name as well? I suggest we make a sequence (via requires): maven, API 26, API 30. It does not make sense to run the Android test, if the normal tests fail already. The additional delay is okay. Is it possible to have a separate badge for the Android test? Or even one for API 26 and another for API 30? |
5decc54
to
4face04
Compare
Signed-off-by: Marcel Schnelle <marcelschnelle@aol.com>
- Introduce Android module using Gradle 7.3 to the project - Configure basic structure of JUnit 5-based Android module - Add a temporary instrumentation test to verify the integration - Execute cache2k test suite on Android - Add some build logic for connecting Maven to Gradle - Add a dummy to androidTest in order to trick Android into executing the entire test suite, including those pulled in from JAR files Signed-off-by: Marcel Schnelle <marcelschnelle@aol.com>
Run Maven tests in parallel with Android tests (API 26 & 30) Signed-off-by: Marcel Schnelle <marcelschnelle@aol.com>
Signed-off-by: Marcel Schnelle <marcelschnelle@aol.com>
Signed-off-by: Marcel Schnelle <marcelschnelle@aol.com>
Signed-off-by: Marcel Schnelle <marcelschnelle@aol.com>
Signed-off-by: Marcel Schnelle <marcelschnelle@aol.com>
4face04
to
c609b7c
Compare
Unfortunately, the test insights dashboard on Circle doesn't seem to care about the inclusion of class names in the XML report delivered to it. As it seems to be a beta feature, here's to hoping that they'll improve their integration with JUnit test reports eventually.
a51c943 updates it accordingly. Another run on my fork confirms the sequential execution.
Unfortunately, no. Circle badges operate on branches, so while it would be possible to have a badge dedicated to a specific branch, it's not possible to have it for individual steps of a workflow. That being said, I update to the shield-style design in a83b98e to make the Circle badge fit in with the others on the README: |
Add a new
test-android-gradle
project to the repository and weave in the existingcache2k-testsuite
for execution on Android devices and emulators. Replace the existing CI pipeline with a new connection to CircleCI. Note that I did not remove the existing.travis.yml
here, however we may want to consider doing that to complete the transition to Circle.An exemplary execution of the new CI pipeline can be found on my fork. I'm open to further clarifications regarding when these steps should be executed - at the moment, they run on any commit and PR.
This process was performed in several steps:
cache2k-testsuite
, revert the deactivation of JAR output from its parent module (test-parent
)androidTest
dependencies to consume JUnit 4 and 5 in tandem (courtesy of android-junit5)androidTest
source set. This is required in order for the Android test instrumentation to start its work; otherwise it would not even detect cache2k's tests in the transitive JARcache2k-testsuite
and its transitive dependenciesREADME.md
Resolves #143.