name: Rust

on:
  push:
    branches: [ master ]
    paths-ignore:
      - '**.md'
  pull_request:
    branches: [ master ]
    paths-ignore:
      - '**.md'

env:
  CARGO_TERM_COLOR: always

jobs:
  windows_stable:
    runs-on: windows-latest
    steps:
    - name: Ninja Install
      uses: crazy-max/ghaction-chocolatey@v2
      with:
        args: install ninja
    - name: Python3 Install
      uses: crazy-max/ghaction-chocolatey@v2
      with:
        args: install python3 --params "/InstallAllUsers"
    - uses: actions/checkout@v3
    - name: Build
      run: cargo build --verbose
    - name: Run tests
      run: cargo test --verbose
  linux_stable:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v3
    - name: Build
      run: cargo build --verbose
    - name: Run tests
      run: cargo test --verbose
  macos_stable:
    runs-on: macos-latest
    steps:
    - uses: actions/checkout@v3
    - name: Build
      run: cargo build --verbose
    - name: Run tests
      run: cargo test --verbose
