name: Tests on: push: branches: ["main"] pull_request: branches: ["main"] env: CARGO_TERM_COLOR: always jobs: acceptance_tests: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Rust Cache uses: Swatinem/rust-cache@v2 with: save-if: ${{ github.ref == 'refs/heads/main' }} key: ${{ runner.os }}-cache-acceptance-v${{ inputs.cache-version }} - name: Run examples run: | cargo run -r -- check examples/hello_world cargo run -r -- check examples/gift_card cargo run -r -- check examples/benchmarks - name: Run acceptance tests working-directory: examples/acceptance_tests run: | cargo install cbor-diag-cli bash ci shell: bash unit_tests: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Rust Cache uses: Swatinem/rust-cache@v2 with: save-if: ${{ github.ref == 'refs/heads/main' }} key: ${{ runner.os }}-cache-unit-v${{ inputs.cache-version }} - name: Run unit tests run: cargo test --verbose --workspace checks: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Rust Cache uses: Swatinem/rust-cache@v2 with: save-if: ${{ github.ref == 'refs/heads/main' }} key: ${{ runner.os }}-cache-unit-v${{ inputs.cache-version }} - name: Format run: cargo fmt --all -- --check - name: Clippy run: cargo clippy --all-targets --all-features -- -D warnings