name: CI
on: [push, pull_request]
env:
CARGO_TERM_COLOR: always
jobs:
clippy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Clippy
run: cargo clippy -- -D warnings
format:
needs: clippy
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Check formatting
run: cargo fmt --all -- --check
test_linux:
needs: format
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Run tests
run: cargo test -- --nocapture
test_windows:
needs: format
runs-on: windows-latest
steps:
- uses: actions/checkout@v3
- name: Run tests
run: cargo test -- --nocapture
test_macos:
needs: format
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
- name: Run tests
run: cargo test -- --nocapture