Skip to content

Make the proof tree (or the KeY GUI in general) responsive during automatic proof search #3660

Make the proof tree (or the KeY GUI in general) responsive during automatic proof search

Make the proof tree (or the KeY GUI in general) responsive during automatic proof search #3660

Workflow file for this run

name: Tests
on:
workflow_dispatch:
push:
branches: [ "main" ]
pull_request:
branches:
- "main"
- "KeY-*"
merge_group:
permissions:
contents: write
issues: write
pull-requests: write
id-token: write
checks: write
jobs:
unit-tests:
strategy:
fail-fast: false
matrix:
os: [ ubuntu-latest, windows-latest ]
java: [ 21 ]
modules: [
keyext.exploration, keyext.slicing, key.ncore, key.ui, key.core, key.core.rifl,
key.core.testgen, keyext.isabelletranslation, keyext.ui.testgen, key.ncore.calculus,
key.util, key.core.example, keyext.caching,
keyext.proofmanagement, key.removegenerics ]
continue-on-error: true
runs-on: ${{ matrix.os }}
env:
GH_TOKEN: ${{ github.token }}
steps:
- uses: actions/checkout@v5
- name: Setup SMT solvers
uses: keyproject/setup-smt@v0
# with:
# z3Version: 4.13.0
- name: z3 version
run: z3 --version
- name: cvc5 version
run: cvc5 --version
- name: Set up JDK 21
uses: actions/setup-java@v5
with:
java-version: ${{ matrix.java }}
distribution: 'corretto'
cache: 'gradle'
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v5
- name: Test with Gradle
run: ./gradlew --continue -DjacocoEnabled=true :${{ matrix.modules }}:test
- name: Upload test results
uses: actions/upload-artifact@v4
if: success() || failure()
with:
name: test-results-${{ matrix.os }}-${{ matrix.modules }}
path: |
**/build/test-results/*/*.xml
**/build/reports/
!**/jacocoTestReport.xml
- name: Upload coverage reports to Codecov
uses: codecov/codecov-action@v5
integration-tests:
env:
GH_TOKEN: ${{ github.token }}
continue-on-error: true
strategy:
fail-fast: false
matrix:
test: [ testProveRules, testRunAllFunProofs, testRunAllInfProofs ]
os: [ ubuntu-latest ]
java: [ 21 ]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v5
- name: Set up JDK 21
uses: actions/setup-java@v5
with:
java-version: ${{ matrix.java }}
distribution: 'corretto'
cache: 'gradle'
- name: Setup SMT solvers
uses: keyproject/setup-smt@v0
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v5
- name: "Running tests: ${{ matrix.test }}"
run: ./gradlew --continue ${{ matrix.test }}
- name: Upload test results
uses: actions/upload-artifact@v4
if: success() || failure() # run this step even if previous step failed
with:
name: test-results-${{ matrix.test }}
path: |
**/build/test-results/*/*.xml
key.core/build/reports/runallproofs/*
**/build/reports/