Skip to content

Return a dummy PDF from the fake instead of rendering one #287

Return a dummy PDF from the fake instead of rendering one

Return a dummy PDF from the fake instead of rendering one #287

Workflow file for this run

name: run-tests
on:
push:
paths:
- '**.php'
- .github/workflows/run-tests.yml
- phpunit.xml.dist
- composer.json
- composer.lock
pull_request:
paths:
- '**.php'
- .github/workflows/run-tests.yml
- phpunit.xml.dist
- composer.json
- composer.lock
jobs:
test:
runs-on: ${{ matrix.os }}
timeout-minutes: 5
services:
gotenberg:
image: gotenberg/gotenberg:8
ports:
- 3000:3000
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest]
php: [8.5, 8.4, 8.3, 8.2]
laravel: ['11.*', '12.*', '13.*']
stability: [prefer-lowest, prefer-stable]
include:
- laravel: 11.*
testbench: ^9.6
- laravel: 12.*
testbench: 10.*
- laravel: 13.*
testbench: ^11.0
exclude:
- php: 8.5
laravel: 11.*
stability: prefer-stable
- laravel: 13.*
php: 8.2
- laravel: 13.*
php: 8.4
stability: prefer-lowest
- laravel: 13.*
php: 8.5
stability: prefer-lowest
name: P${{ matrix.php }} - L${{ matrix.laravel }} - ${{ matrix.stability }} - ${{ matrix.os }}
steps:
- name: Checkout code
uses: actions/checkout@v7
- name: Install poppler-utils
run: |
sudo apt-get update
sudo apt-get install -y poppler-utils
- 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
coverage: none
- name: Fix Imagick Policy
run: sudo sed -i 's/none/read|write/g' /etc/ImageMagick-6/policy.xml
- name: Disable AppArmor
run: echo 0 | sudo tee /proc/sys/kernel/apparmor_restrict_unprivileged_userns
- name: Install ghostscript
run: sudo apt-get -y install ghostscript
- uses: actions/setup-python@v7
with:
python-version: '3.13'
cache: pip
- name: Install Weasyprint
run: |
python -m pip install --upgrade pip
python -m pip install Pillow numpy filetype setuptools wheel twine
pip install -r requirements.txt
weasyprint --info
whereis weasyprint
- name: Setup Node
uses: actions/setup-node@v7
with:
node-version: '20'
- name: Setup problem matchers
run: |
echo "::add-matcher::${{ runner.tool_cache }}/php.json"
echo "::add-matcher::${{ runner.tool_cache }}/phpunit.json"
- name: Remove incompatible packages for Laravel 13
if: matrix.laravel == '13.*'
run: |
composer remove wnx/sidecar-browsershot nunomaduro/collision --dev --no-interaction --no-update
composer require spatie/browsershot --dev --no-interaction --no-update
- 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: Install Puppeteer
run: npm install puppeteer
- name: Execute tests
env:
GOTENBERG_URL: http://localhost:3000
run: |
npm install
vendor/bin/pest