name: Test
on: [push, pull_request]
jobs:
  all:
    runs-on: ${{ matrix.os }}
    env:
      RUSTFLAGS: --deny warnings
      ICED_TEST_BACKEND: tiny-skia
    strategy:
      matrix:
        os: [ubuntu-latest, windows-latest, macOS-latest]
        rust: [stable, beta, "1.92"]
    steps:
    - uses: hecrj/setup-rust-action@v2
      with:
        rust-version: ${{ matrix.rust }}
    - uses: actions/checkout@master
    - name: Install dependencies
      if: matrix.os == 'ubuntu-latest'
      run: |
        export DEBIAN_FRONTED=noninteractive
        sudo apt-get -qq update
        sudo apt-get install -y libxkbcommon-dev libgtk-3-dev
    - name: Run tests
      run: |
        cargo test --verbose --workspace
        cargo test --verbose --workspace -- --ignored
        cargo test --verbose --workspace --all-features
