diff options
-rw-r--r-- | .github/workflows/coverage.yml | 180 |
1 files changed, 91 insertions, 89 deletions
diff --git a/.github/workflows/coverage.yml b/.github/workflows/coverage.yml index e534640..77cef85 100644 --- a/.github/workflows/coverage.yml +++ b/.github/workflows/coverage.yml @@ -1,93 +1,95 @@ # It broke at some point, don't know how to fix it -# name: Coverage +name: Coverage -# on: -# push: -# branches: [ master ] -# # pull_request: -# # branches: [ master ] +on: + push: + branches: [ master ] + # pull_request: + # branches: [ master ] -# jobs: -# # cargo test normally -# grcov: -# name: Gather coverage data with grcov -# runs-on: ubuntu-latest -# steps: -# - name: Checkout branch -# uses: actions/checkout@master -# with: -# submodules: true -# - name: Setup Rust toolchain -# uses: actions-rs/toolchain@v1 -# with: -# toolchain: nightly -# override: true -# - name: Ensure workspace is clean -# uses: actions-rs/cargo@v1 -# with: -# command: clean -# - name: Run tests with -Zprofile -# uses: actions-rs/cargo@v1 -# with: -# command: test -# env: -# CI_GRCOV: '1' # Tell the test harness to increase stack size -# CARGO_INCREMENTAL: '0' -# RUSTFLAGS: '-Zprofile -Ccodegen-units=1 -Cinline-threshold=0 -Clink-dead-code -Coverflow-checks=off -Cpanic=abort -Zpanic_abort_tests' -# RUSTDOCFLAGS: '-Zprofile -Ccodegen-units=1 -Cinline-threshold=0 -Clink-dead-code -Coverflow-checks=off -Cpanic=abort -Zpanic_abort_tests' -# - name: Run grcov -# id: grcov -# uses: actions-rs/grcov@v0.1 -# - name: Upload coverage data to codecov.io -# uses: codecov/codecov-action@v1 -# with: -# token: ${{secrets.CODECOV_TOKEN}} -# file: ${{steps.grcov.outputs.report}} +jobs: + # cargo test normally + grcov: + if: false # it's broken, don't know how to fix + name: Gather coverage data with grcov + runs-on: ubuntu-latest + steps: + - name: Checkout branch + uses: actions/checkout@master + with: + submodules: true + - name: Setup Rust toolchain + uses: actions-rs/toolchain@v1 + with: + toolchain: nightly + override: true + - name: Ensure workspace is clean + uses: actions-rs/cargo@v1 + with: + command: clean + - name: Run tests with -Zprofile + uses: actions-rs/cargo@v1 + with: + command: test + env: + CI_GRCOV: '1' # Tell the test harness to increase stack size + CARGO_INCREMENTAL: '0' + RUSTFLAGS: '-Zprofile -Ccodegen-units=1 -Cinline-threshold=0 -Clink-dead-code -Coverflow-checks=off -Cpanic=abort -Zpanic_abort_tests' + RUSTDOCFLAGS: '-Zprofile -Ccodegen-units=1 -Cinline-threshold=0 -Clink-dead-code -Coverflow-checks=off -Cpanic=abort -Zpanic_abort_tests' + - name: Run grcov + id: grcov + uses: actions-rs/grcov@v0.1 + - name: Upload coverage data to codecov.io + uses: codecov/codecov-action@v1 + with: + token: ${{secrets.CODECOV_TOKEN}} + file: ${{steps.grcov.outputs.report}} -# # Collect each feature independently to help identify missing tests -# grcov-split: -# name: Gather coverage data with grcov -# runs-on: ubuntu-latest -# strategy: -# matrix: -# feature: -# - parser -# - printer -# - binary -# - import -# - beta_normalize -# - alpha_normalize -# - type_inference -# steps: -# - name: Checkout branch -# uses: actions/checkout@master -# with: -# submodules: true -# - name: Setup Rust toolchain -# uses: actions-rs/toolchain@v1 -# with: -# toolchain: nightly -# override: true -# - name: Ensure workspace is clean -# uses: actions-rs/cargo@v1 -# with: -# command: clean -# - name: Run tests with -Zprofile -# uses: actions-rs/cargo@v1 -# with: -# command: test -# args: tests::spec::${{matrix.feature}} -# env: -# CI_GRCOV: '1' # Tell the test harness to increase stack size -# CARGO_INCREMENTAL: '0' -# RUSTFLAGS: '-Zprofile -Ccodegen-units=1 -Cinline-threshold=0 -Clink-dead-code -Coverflow-checks=off -Cpanic=abort -Zpanic_abort_tests' -# RUSTDOCFLAGS: '-Zprofile -Ccodegen-units=1 -Cinline-threshold=0 -Clink-dead-code -Coverflow-checks=off -Cpanic=abort -Zpanic_abort_tests' -# - name: Run grcov -# id: grcov -# uses: actions-rs/grcov@v0.1 -# - name: Upload coverage data to codecov.io -# uses: codecov/codecov-action@v1 -# with: -# token: ${{secrets.CODECOV_TOKEN}} -# file: ${{steps.grcov.outputs.report}} -# flags: ${{matrix.feature}} + # Collect each feature independently to help identify missing tests + grcov-split: + if: false # it's broken, don't know how to fix + name: Gather coverage data with grcov + runs-on: ubuntu-latest + strategy: + matrix: + feature: + - parser + - printer + - binary + - import + - beta_normalize + - alpha_normalize + - type_inference + steps: + - name: Checkout branch + uses: actions/checkout@master + with: + submodules: true + - name: Setup Rust toolchain + uses: actions-rs/toolchain@v1 + with: + toolchain: nightly + override: true + - name: Ensure workspace is clean + uses: actions-rs/cargo@v1 + with: + command: clean + - name: Run tests with -Zprofile + uses: actions-rs/cargo@v1 + with: + command: test + args: tests::spec::${{matrix.feature}} + env: + CI_GRCOV: '1' # Tell the test harness to increase stack size + CARGO_INCREMENTAL: '0' + RUSTFLAGS: '-Zprofile -Ccodegen-units=1 -Cinline-threshold=0 -Clink-dead-code -Coverflow-checks=off -Cpanic=abort -Zpanic_abort_tests' + RUSTDOCFLAGS: '-Zprofile -Ccodegen-units=1 -Cinline-threshold=0 -Clink-dead-code -Coverflow-checks=off -Cpanic=abort -Zpanic_abort_tests' + - name: Run grcov + id: grcov + uses: actions-rs/grcov@v0.1 + - name: Upload coverage data to codecov.io + uses: codecov/codecov-action@v1 + with: + token: ${{secrets.CODECOV_TOKEN}} + file: ${{steps.grcov.outputs.report}} + flags: ${{matrix.feature}} |