Skip to content

Run test suite with GitHub Actions #7

Run test suite with GitHub Actions

Run test suite with GitHub Actions #7

Workflow file for this run

name: Run JUnit Tests
on:
push:
branches:
- master
- dev
pull_request:
branches:
- master
- dev
jobs:
ubuntu-test:
runs-on: ubuntu-latest
steps:
- name: Check Out Code
uses: actions/checkout@v2
- name: Set up JDK 11
uses: actions/setup-java@v1
with:
java-version: 11
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Build with Gradle
run: ./gradlew build -x test
- name: Debug Info
run: |
echo "Java version:"
java -version
echo "Gradle version:"
./gradlew --version
shell: bash
- name: Run JUnit Tests on Linux
run: |
./gradlew test
test_result=$?
if [ $test_result -ne 0 ]; then
echo "Tests failed with exit code $test_result"
exit $test_result
fi
shell: bash
- name: Run JUnit Tests
run: |
test_output=$(./gradlew test --quiet | grep -E "tests? passed|tests? failed")
echo "$test_output"
tests_run=$(echo "$test_output" | grep -Eo "[0-9]+" | head -n 1)
tests_passed=$(echo "$test_output" | grep -Eo "[0-9]+" | tail -n 1)
tests_failed=$((tests_run - tests_passed))
echo "Tests Run: $tests_run"
echo "Tests Passed: $tests_passed"
echo "Tests Failed: $tests_failed"
if [[ $tests_failed -gt 0 ]]; then
exit 1
fi
test-macos:
runs-on: macos-latest
steps:
- name: Check Out Code
uses: actions/checkout@v2
- name: Set up JDK 11
uses: actions/setup-java@v1
with:
java-version: 11
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Build with Gradle
run: ./gradlew build -x test
- name: Run JUnit Tests on macOS
run: |
test_output=$(./gradlew test --quiet | grep -E "tests? passed|tests? failed")
echo "$test_output"
tests_run=$(echo "$test_output" | grep -Eo "[0-9]+" | head -n 1)
tests_passed=$(echo "$test_output" | grep -Eo "[0-9]+" | tail -n 1)
tests_failed=$((tests_run - tests_passed))
echo "Tests Run: $tests_run"
echo "Tests Passed: $tests_passed"
echo "Tests Failed: $tests_failed"
if [[ $tests_failed -gt 0 ]]; then
exit 1
fi
test-windows:
runs-on: windows-latest
steps:
- name: Check Out Code
uses: actions/checkout@v2
- name: Set up JDK and Gradle on Windows
uses: actions/setup-java@v2
with:
java-version: 11
distribution: 'adopt'
- name: Run JUnit Tests on Windows
run: |
test_output=$(./gradlew.bat test --quiet | grep -E "tests? passed|tests? failed")
echo "$test_output"
tests_run=$(echo "$test_output" | grep -Eo "[0-9]+" | head -n 1)
tests_passed=$(echo "$test_output" | grep -Eo "[0-9]+" | tail -n 1)
tests_failed=$((tests_run - tests_passed))
echo "Tests Run: $tests_run"
echo "Tests Passed: $tests_passed"
echo "Tests Failed: $tests_failed"
if %tests_failed% gtr 0 (
exit 1
)