name: Test coverage on: push: branches: - master pull_request: env: CARGO_TERM_COLOR: always RUST_BACKTRACE: full jobs: coverage: name: Coverage runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v5 - name: Install Rust uses: actions-rs/toolchain@v1 with: toolchain: nightly profile: minimal default: true - name: Restore cache uses: Swatinem/rust-cache@v2 - name: Run cargo-tarpaulin uses: actions-rs/tarpaulin@v0.1 with: args: '--features weak,internal-test-strategies,experimental-strategies --run-types Doctests,Tests' timeout: 120 - name: Upload to codecov.io uses: codecov/codecov-action@18283e04ce6e62d37312384ff67231eb8fd56d24 with: token: ${{ secrets.CODECOV_TOKEN }} - name: Archive code coverage results uses: actions/upload-artifact@v4 with: name: code-coverage-report path: cobertura.xml retention-days: 30