diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index fe0bd78..402ef60 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -13,7 +13,7 @@ env: CARGO_TERM_COLOR: always jobs: - rust_tests: + test-ubuntu: runs-on: ubuntu-latest steps: @@ -34,3 +34,47 @@ jobs: run: cargo test - name: release build run: cargo build --release + + test-macos: + runs-on: macos-latest + + steps: + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + - name: cache cargo + uses: actions/cache@6849a6489940f00c2f30c0fb92c6274307ccb58a # v4.1.2 + with: + path: | + ~/.cargo/bin/ + ~/.cargo/registry/index/ + ~/.cargo/registry/cache/ + ~/.cargo/git/db/ + key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} + + - name: lint + run: cargo clippy + - name: rust tests + run: cargo test + - name: release build + run: cargo build --release + + test-windows: + runs-on: windows-latest + + steps: + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + - name: cache cargo + uses: actions/cache@6849a6489940f00c2f30c0fb92c6274307ccb58a # v4.1.2 + with: + path: | + ~/.cargo/bin/ + ~/.cargo/registry/index/ + ~/.cargo/registry/cache/ + ~/.cargo/git/db/ + key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} + + - name: lint + run: cargo clippy + - name: rust tests + run: cargo test + - name: release build + run: cargo build --release