Fix/don't use equals & hashCode of foreign JsonNode implementations #602
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: tests | |
on: | |
pull_request: | |
push: | |
branches: [ master ] | |
jobs: | |
generic-tests: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Git checkout | |
uses: actions/checkout@v4 | |
- name: Setup java | |
uses: actions/setup-java@v4 | |
with: | |
# Not using variables to allow running from forks | |
distribution: temurin | |
java-version: 21 | |
- name: Setup Gradle | |
uses: gradle/actions/setup-gradle@v4 | |
with: | |
gradle-version: wrapper | |
- name: Run generic tests | |
run: ./gradlew test --no-daemon | |
- name: Upload test execution data | |
uses: actions/upload-artifact@v4 | |
with: | |
name: generic-tests-exec | |
path: build/jacoco | |
integration-tasks-list: | |
runs-on: ubuntu-latest | |
outputs: | |
integration-tasks: ${{ steps.integration-tasks.outputs.integration-tasks }} | |
steps: | |
- name: Git checkout | |
uses: actions/checkout@v4 | |
- name: Setup Gradle | |
uses: gradle/actions/setup-gradle@v4 | |
with: | |
gradle-version: wrapper | |
- name: Trigger Gradle download | |
run: ./gradlew help -q | |
- name: Get JSON integration tasks | |
id: integration-tasks | |
run: | | |
TASKS=$(./gradlew integrationTasksArray -q --console=plain) | |
echo "integration-tasks=$TASKS" >> "$GITHUB_OUTPUT" | |
integration-tasks-execution: | |
needs: integration-tasks-list | |
runs-on: ubuntu-latest | |
name: ${{ matrix.integration-task }} | |
strategy: | |
matrix: | |
integration-task: ${{ fromJSON(needs.integration-tasks-list.outputs.integration-tasks) }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup java | |
uses: actions/setup-java@v4 | |
with: | |
# Not using variables to allow running from forks | |
distribution: temurin | |
java-version: 21 | |
- name: Setup Gradle | |
uses: gradle/actions/setup-gradle@v4 | |
with: | |
gradle-version: wrapper | |
- name: Gradle integration tests | |
run: ./gradlew ${{ matrix.integration-task }} --no-daemon | |
- name: Upload test execution data | |
uses: actions/upload-artifact@v4 | |
with: | |
name: ${{ matrix.integration-task }}-tests-exec | |
path: build/jacoco | |
report: | |
needs: [generic-tests, integration-tasks-execution] | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup java | |
uses: actions/setup-java@v4 | |
with: | |
# Not using variables to allow running from forks | |
distribution: temurin | |
java-version: 21 | |
- name: Setup Gradle | |
uses: gradle/actions/setup-gradle@v4 | |
with: | |
gradle-version: wrapper | |
- name: Download test execution data | |
uses: actions/download-artifact@v4 | |
with: | |
path: build/jacoco | |
- name: Get exec data up one level | |
run: find build/jacoco -path 'build/jacoco/*/*' -execdir mv -t ../ {} + | |
- name: Gradle jacoco report | |
run: ./gradlew jacocoTestReport --no-daemon | |
- name: Upload report | |
uses: actions/upload-artifact@v4 | |
with: | |
name: report-output | |
path: | | |
build/classes | |
build/generated | |
build/jacoco | |
build/reports | |
build/test-results |