Repository navigation
Bump dependabot/fetch-metadata from 2.4.0 to 3.1.0 #30
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: PHP Tests | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| jobs: | |
| test: | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| # One unusable matrix leg should not cancel the other nine. | |
| fail-fast: false | |
| matrix: | |
| os: [ubuntu-latest] | |
| php: ['8.3', '8.4', '8.5'] | |
| laravel: [12.*, 13.*] | |
| stability: [prefer-lowest, prefer-stable] | |
| include: | |
| - laravel: 12.* | |
| testbench: 10.* | |
| - laravel: 13.* | |
| testbench: 11.* | |
| name: P${{ matrix.php }} - L${{ matrix.laravel }} - ${{ matrix.stability }} - ${{ matrix.os }} | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - 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, fileinfo, swoole, openssl | |
| coverage: pcov | |
| - name: Setup problem matchers | |
| run: | | |
| echo "::add-matcher::${{ runner.tool_cache }}/php.json" | |
| echo "::add-matcher::${{ runner.tool_cache }}/phpunit.json" | |
| # Carbon is not pinned here: the package only reaches it through | |
| # Laravel's helpers, so whatever the framework resolves is the version | |
| # worth testing against. | |
| - name: Install dependencies | |
| run: | | |
| composer require "laravel/framework:${{ matrix.laravel }}" "orchestra/testbench:${{ matrix.testbench }}" --no-interaction --no-update | |
| composer update --${{ matrix.stability }} --prefer-dist --no-interaction | |
| - name: List Installed Dependencies | |
| run: composer show -D | |
| - name: Execute tests | |
| run: vendor/bin/pest --ci --compact --memory --coverage --min=100 | |
| performance: | |
| name: performance guards | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 10 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Setup PHP | |
| uses: shivammathur/setup-php@v2 | |
| with: | |
| php-version: '8.4' | |
| extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, sqlite, pdo_sqlite, bcmath, intl, fileinfo | |
| # Explicitly no coverage: instrumentation dominates the clock and | |
| # flattens the difference between a fast and a slow implementation, | |
| # so these assertions skip themselves when a driver is active. | |
| coverage: none | |
| - name: Install composer dependencies | |
| uses: ramsey/composer-install@v3 | |
| - name: Run performance guards | |
| run: vendor/bin/pest --testsuite=Performance --ci |