name: run-tests on: push: pull_request: jobs: tests: runs-on: ubuntu-latest strategy: fail-fast: true matrix: php: [8.0, 8.1, 8.2, 8.3] laravel: [8.*, 9.*, 10.*, 11.*] include: - laravel: 11.* testbench: 9.*-dev - laravel: 10.* testbench: 8.* - laravel: 9.* testbench: 7.* - laravel: 8.* testbench: 6.* exclude: - laravel: 11.* php: 8.0 - laravel: 11.* php: 8.1 - laravel: 10.* php: 8.0 - laravel: 8.* php: 8.1 - laravel: 8.* php: 8.2 - laravel: 9.* php: 8.2 - laravel: 8.* php: 8.3 - laravel: 9.* php: 8.3 name: PHP ${{ matrix.php }} - Laravel ${{ matrix.laravel }} steps: - name: Checkout code uses: actions/checkout@v1 - name: Install SQLite 3 run: | sudo apt-get update sudo apt-get install sqlite3 - name: Cache dependencies uses: actions/cache@v1 with: path: ~/.composer/cache/files key: dependencies-pw-v2-${{ matrix.laravel }}-php-${{ matrix.php }}-composer-${{ hashFiles('composer.json') }} - name: Setup PHP uses: shivammathur/setup-php@v2 with: php-version: ${{ matrix.php }} extensions: curl, mbstring, zip, pcntl, pdo, sqlite, pdo_sqlite, iconv coverage: none tools: composer:v2 - name: Install dependencies run: | composer --version composer require "laravel/framework:${{ matrix.laravel }}" --no-interaction --no-update composer require "orchestra/testbench:${{ matrix.testbench }}" --no-interaction --no-update --dev composer update --prefer-dist --no-interaction --no-suggest --dev composer dump - name: Execute tests run: vendor/bin/phpunit