Skip to content

run-tests

run-tests #874

Workflow file for this run

name: run-tests
on:
push:
branches:
- main
pull_request:
branches:
- main
schedule:
- cron: '0 0 * * *'
jobs:
test:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
php:
- 8.4
- 8.3
- 8.2
laravel:
- 13.0
- 12.0
- 11.0
dependency-version:
- prefer-lowest
- prefer-stable
exclude:
- laravel: 13.0
php: 8.2
include:
- with_coverage: false
- with_coverage: true
php: 8.3
laravel: 11.0
dependency-version: prefer-stable
name: "PHP ${{ matrix.php }} - Laravel ${{ matrix.laravel }} - ${{ matrix.dependency-version }}"
steps:
- name: Checkout code
uses: actions/checkout@v6
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
extensions: curl, mbstring, zip, pcntl, pdo, sqlite, pdo_sqlite, iconv
coverage: xdebug
- name: Install dependencies
run: |
composer require "laravel/framework:^${{ matrix.laravel }}" --no-interaction --no-update
composer update --${{ matrix.dependency-version }} --prefer-dist --no-interaction --no-suggest
- name: Execute tests - without coverage
if: matrix.with_coverage == false
run: vendor/bin/pest
- name: Execute tests - with coverage
id: test
if: matrix.with_coverage == true
run: vendor/bin/pest --coverage
- name: Upload coverage reports to Codecov
if: matrix.with_coverage == true
uses: codecov/codecov-action@v5
with:
token: ${{ secrets.CODECOV_TOKEN }}
directory: build
verbose: true