Skip to content

Tests

Tests #240

Workflow file for this run

name: Tests
on:
push:
branches: [ "main" ]
pull_request:
workflow_dispatch:
schedule:
- cron: "10 4 * * 2" # Every Tuesday at 4:10 AM UTC
permissions:
contents: read
jobs:
tests:
name: PHPUnit with PHP ${{ matrix.php-version }} ${{ matrix.dependencies }}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
# Pimcore 11
- php-version: "8.1"
dependencies: "lowest" # Pimcore 11.5.0
- php-version: "8.1"
dependencies: "highest" # Pimcore 11.*
- php-version: "8.2"
dependencies: "lowest" # Pimcore 11.5.0
- php-version: "8.2"
dependencies: "highest" # Pimcore 11.*
- php-version: "8.3"
dependencies: "lowest" # Pimcore 11.5.0
- php-version: "8.3"
dependencies: "highest" # Pimcore 11.*
composer-options: "--with=pimcore/pimcore:^11.5"
# Pimcore 12
- php-version: "8.3"
dependencies: "lowest" # Pimcore 12.0.0
composer-options: "--with=pimcore/pimcore:12.0.0"
- php-version: "8.3"
dependencies: "highest" # Pimcore 12.*
- php-version: "8.4"
dependencies: "lowest" # Pimcore 12.0.0
- php-version: "8.4"
dependencies: "highest" # Pimcore 12.*
env:
MYSQL_HOST: 127.0.0.1
MYSQL_PORT: 3306
MYSQL_USER: pimcore
MYSQL_PASSWORD: pimcore
MYSQL_DATABASE: pimcore
MYSQL_SERVER_VERSION: "10.11.5-MariaDB"
services:
mariadb:
image: mariadb:10.11.5
ports:
- 3306:3306
env:
MYSQL_ALLOW_EMPTY_PASSWORD: yes
options: >-
--health-cmd="healthcheck.sh --connect --innodb_initialized"
--health-interval=10s
--health-timeout=5s
--health-retries=5
steps:
- name: Git Checkout
uses: actions/checkout@v4
- name: Set up PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-version }}
- name: Install dependencies
uses: ramsey/composer-install@v4
with:
dependency-versions: ${{ matrix.dependencies }}
composer-options: ${{ matrix.composer-options }}
- name: Execute tests
env:
PIMCORE_ENCRYPTION_SECRET: ${{ secrets.PIMCORE_ENCRYPTION_SECRET }}
PIMCORE_INSTANCE_IDENTIFIER: ${{ secrets.PIMCORE_INSTANCE_IDENTIFIER }}
PIMCORE_PRODUCT_KEY: ${{ secrets.PIMCORE_PRODUCT_KEY }}
run: |
phpunit_options="-- --disallow-test-output"
if [[ "${{ matrix.php-version }}" == "8.4" && "${{ matrix.dependencies }}" == "lowest" ]]; then
phpunit_options=""
fi
composer tests $phpunit_options