name: Unit Testing Laravel on: [push, pull_request] jobs: laravel: name: Laravel (PHP ${{ matrix.php-versions }} on ${{ matrix.operating-system }}) runs-on: ${{ matrix.operating-system }} strategy: fail-fast: false max-parallel: 6 matrix: operating-system: [ubuntu-latest, windows-latest, macOS-latest] php-versions: ['7.2', '7.3'] steps: - name: Checkout uses: actions/checkout@v1 - name: Setup PHP, with composer and extensions uses: shivammathur/setup-php@master #https://github.com/shivammathur/setup-php with: php-version: ${{ matrix.php-versions }} extension-csv: mbstring, dom, fileinfo coverage: xdebug #optional - name: Install Composer dependencies run: composer install --no-progress --no-suggest --prefer-dist --optimize-autoloader - name: Prepare the application run: | php -r "file_exists('.env') || copy('.env.example', '.env');" php artisan key:generate - name: Clear Config run: php artisan config:clear - name: Test with phpunit in windows if: matrix.operating-system == 'windows-latest' run: .\vendor\bin\phpunit --coverage-text - name: Test with phpunit if: matrix.operating-system != 'windows-latest' run: vendor/bin/phpunit --coverage-text