---
name: Quality Assurance
on:
    push: ~
    pull_request: ~

jobs:
    phpunit:
        name: PHPUnit tests on ${{ matrix.php }} ${{ matrix.composer-flags }}
        runs-on: ubuntu-latest
        strategy:
            matrix:
                php: [ '7.1', '7.2', '7.3', '7.4' ]
                composer-flags: [ '' ]
                phpunit-flags: [ '--coverage-text' ]
                include:
                    - php: '8.0'
                      # Some of the test dependencies don't officially support PHP 8 yet (Diactoros, specifically),
                      # so we have to skip that check for now.
                      composer-flags: '--ignore-platform-req=php'
                      phpunit-flags: '--no-coverage'
        steps:
            - uses: actions/checkout@v2
            - uses: shivammathur/setup-php@v2
              with:
                  php-version: ${{ matrix.php }}
                  coverage: xdebug
                  tools: composer:v2
            - run: composer update --no-progress ${{ matrix.composer-flags }}
            - run: vendor/bin/phpunit ${{ matrix.phpunit-flags }}

---
name: Quality Assurance
on:
    push: ~
    pull_request: ~

jobs:
    phpunit:
        name: PHPUnit tests on ${{ matrix.php }} ${{ matrix.composer-flags }}
        runs-on: ubuntu-latest
        strategy:
            matrix:
                php: [ '7.1', '7.2', '7.3', '7.4', '8.0', '8.1' ]
                composer-flags: [ '' ]
                phpunit-flags: [ '--coverage-text' ]
        steps:
            - uses: actions/checkout@v2
            - uses: shivammathur/setup-php@v2
              with:
                  php-version: ${{ matrix.php }}
                  coverage: xdebug
                  tools: composer:v2
            - run: composer update --no-progress ${{ matrix.composer-flags }}
            - run: vendor/bin/phpunit ${{ matrix.phpunit-flags }}

Test on PHP 8 and 8.1
Test on PHP 8 and 8.1
