name: test

on:
  push:
    branches: [ main ]
  pull_request:
    branches: [ main ]

env:
  CARGO_TERM_COLOR: always

jobs:
  test:
    runs-on: ubuntu-latest
    strategy:
      matrix:
        rust:
          - version: stable
        build-args:
          [
            -p cashu,
            -p cashu-sdk,
          ]
    steps:
    - name: Checkout Crate
      uses: actions/checkout@v3
    - name: Cache
      uses: actions/cache@v3
      with:
        path: |
          ~/.cargo/registry
          ~/.cargo/git
          target
        key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.toml','**/Cargo.lock') }}
    - name: Set default toolchain
      run: rustup default ${{ matrix.rust.version }}
    - name: Test
      run: cargo test ${{ matrix.build-args }}