name: Build, Test and Check
on:
  pull_request:
    branches:
      - "*"
  push:
    branches:
      - "*"
jobs:
  build_and_test_linux:
    name: Build and Test (Linux)
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: dtolnay/rust-toolchain@stable
      - name: Check compilation
        run: cargo check  --all --verbose --all-features
      - name: Run tests
        run: cargo test --all --verbose --all-features
  build_and_test_windows:
    name: Build and Test (Windows)
    runs-on: windows-latest
    steps:
      - name: Prepare symlink configuration
        run: git config --global core.symlinks true
      - uses: actions/checkout@v4
      - uses: dtolnay/rust-toolchain@stable
      - name: Check compilation
        run: cargo check  --all --verbose --all-features
      - name: Run tests
        run: cargo test --all --verbose --all-features