# make sure the action works on a clean machine without building
name: prod

on:
  pull_request:
  push:

jobs:
  check:
    strategy:
      matrix:
        os: [ubuntu-latest, macos-latest, windows-latest]
        include:
          - os: windows-latest
            script-suffix: '.bat'
    runs-on: ${{ matrix.os }}
    steps:
    - name: Checkout sources
      uses: actions/checkout@v2
    - name: Test use Gradle wrapper
      uses: ./
      with:
        build-root-directory: __tests__/samples/basic
        arguments: test
    - name: Test use defined Gradle version
      uses: ./
      with:
        gradle-version: 6.9
        build-root-directory: __tests__/samples/no-wrapper
        arguments: help
    - name: Test use defined Gradle executable
      uses: ./
      with:
        gradle-executable: __tests__/samples/basic/gradlew${{ matrix.script-suffix }}
        build-root-directory: __tests__/samples/no-wrapper
        arguments: help

  failures: # These build invocations are informational only, and are expected to fail
    runs-on: ubuntu-latest
    steps:
    - name: Checkout sources
      uses: actions/checkout@v2
    - name: Test wrapper missing
      uses: ./
      continue-on-error: true
      with:
        build-root-directory: __tests__/samples/no-wrapper
        arguments: help