Feat: code coverage #800
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
on: [pull_request] | |
name: Basic | |
# Cancel in progress workflows on pull_requests. | |
# https://docs.github.com/en/actions/using-jobs/using-concurrency#example-using-a-fallback-value | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} | |
cancel-in-progress: true | |
jobs: | |
test: | |
name: Test Suite | |
runs-on: ubuntu-latest | |
steps: | |
- name: π₯ Checkout sources | |
uses: actions/checkout@v4 | |
- name: βοΈ Install stable | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
target: wasm32-unknown-unknown | |
- name: βοΈ Install Nextest | |
uses: taiki-e/install-action@nextest | |
- name: π Run cargo clippy | |
run: cargo clippy -- -D warnings | |
- name: π§ͺ Run unit tests | |
if: always() | |
run: cargo test-ci | |
env: | |
RUST_BACKTRACE: 1 | |
- name: π Generate Schema | |
if: always() | |
run: cargo schema --locked | |
- name: βοΈ Schema Changes | |
# fails if any changes not committed | |
run: git diff --exit-code schema | |
- name: π¦Ύ Compile WASM contract | |
run: cargo build -p seda-contract --release --lib --target wasm32-unknown-unknown --locked | |
- name: βοΈ Install cargo-llvm-cov | |
uses: taiki-e/install-action@cargo-llvm-cov | |
- name: π Test Coverage | |
run: cargo cov-ci | |
- name: π€ Upload coverage to Codecov | |
uses: codecov/codecov-action@v5 | |
with: | |
files: lcov.info | |
fail_ci_if_error: true | |
fmt: | |
name: fmt | |
runs-on: ubuntu-latest | |
steps: | |
- name: π₯ Checkout sources | |
uses: actions/checkout@v4 | |
- name: βοΈ Install Nightly | |
uses: dtolnay/rust-toolchain@nightly | |
with: | |
components: rustfmt | |
- name: π Format Check | |
run: cargo +nightly fmt -- --check |