Skip to content

unit tests

unit tests #377

Workflow file for this run

name: "unit tests"
on:
pull_request: ~
push: ~
schedule:
# Do not make it the first of the month and/or midnight since it is a very busy time
- cron: "* 10 5 * *"
jobs:
tests:
runs-on: ubuntu-latest
continue-on-error: ${{ matrix.can-fail }}
strategy:
fail-fast: false
matrix:
#Stable supported versions
php: ['8.1', '8.2']
symfony: ['5.4.*', '6.2.*']
composer-flags: ['--prefer-stable']
can-fail: [false]
exclude:
- php: '8.1'
symfony: '6.2.*'
include:
# Lowest supported versions
- php: '8.1'
symfony: '5.4.*'
composer-flags: '--prefer-stable --prefer-lowest'
can-fail: false
# Development versions
- php: '8.3'
symfony: '6.3.x-dev'
composer-flags: ''
can-fail: true
name: "PHP ${{ matrix.php }} - Symfony ${{ matrix.symfony }}${{ matrix.composer-flags != '' && format(' - Composer {0}', matrix.composer-flags) || '' }}"
env:
SYMFONY_REQUIRE: ${{ matrix.symfony }}
steps:
- name: "checkout"
uses: "actions/checkout@v4"
- name: "build the PHP8 environment"
run: "dev/bin/docker-compose build --build-arg PHP_VERSION=${{ matrix.php }} --build-arg XDEBUG_VERSION='3.2.0' php"
if: startsWith(matrix.php, '8')
- name: "install dependencies"
run: "dev/bin/php composer update --ansi ${{ matrix.composer-flags }}"
- name: "run unit tests"
run: "dev/bin/php-test vendor/bin/simple-phpunit --colors=always"
- name: clear docker volumes
if: ${{ always() }}
run: dev/bin/docker-compose down --volumes