name: run-tests

on:
    push:
        branches: [master]
    pull_request:
        branches: [master]

jobs:
    run-tests:
        runs-on: ubuntu-latest
        strategy:
            fail-fast: false
            matrix:
                php: [7.4, 8.0]
                laravel: [8.*, 7.*, 6.*]
                include:
                    - laravel: 8.*
                      testbench: 6.*
                    - laravel: 7.*
                      testbench: 5.*
                    - laravel: 6.*
                      testbench: 4.*

        name: PHP${{ matrix.php }} - Laravel${{ matrix.laravel }} - ${{ matrix.dependency-version }}

        steps:
            - name: Update apt
              run: sudo apt-get update --fix-missing

            - name: Checkout code
              uses: actions/checkout@v2

            - name: Setup PHP
              uses: shivammathur/setup-php@v2
              with:
                  php-version: ${{ matrix.php }}
                  extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, sqlite, pdo_sqlite, bcmath, soap, intl, gd, exif, iconv, imagick
                  coverage: none

            - name: Install dependencies
              run: |
                  composer require "illuminate/console:${{ matrix.laravel }}" "illuminate/database:${{ matrix.laravel }}" "illuminate/filesystem:${{ matrix.laravel }}" --no-interaction --no-update
                  composer require "orchestra/testbench:${{ matrix.testbench }}" --dev --no-interaction --no-update
                  composer update --prefer-dist --no-interaction --no-suggest

            - name: Execute tests
              run: vendor/bin/phpunit

Add test-matrix for versions supported
Add test-matrix for versions supported

Adding a test config for github actions