unit tests #481
This file contains 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: "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 10 5 * *" | |
jobs: | |
tests: | |
runs-on: ubuntu-latest | |
continue-on-error: ${{ matrix.can-fail }} | |
strategy: | |
fail-fast: false | |
matrix: | |
php: ['8.1', '8.2', '8.3'] | |
symfony: ['5.4.*', '6.4.*', '7.0.*'] | |
doctrine-orm: ['^2.14', '^3.0'] | |
composer-flags: ['--prefer-stable'] | |
can-fail: [false] | |
include: | |
- php: "8.1" | |
symfony: "5.4.*" | |
doctrine-orm: "^2.14" | |
composer-flags: '--prefer-stable --prefer-lowest' | |
can-fail: false | |
exclude: | |
- php: "8.1" | |
symfony: "7.0.*" | |
name: "PHP ${{ matrix.php }} - Doctrine ${{ matrix.doctrine-orm }} - 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 PHP environment" | |
run: "dev/bin/docker-compose build --build-arg PHP_VERSION=${{ matrix.php }} --build-arg XDEBUG_VERSION='3.3.1' php" | |
- name: "require specific Doctrine ORM version" | |
run: "dev/bin/php composer require --ansi ${{ matrix.composer-flags }} --no-install doctrine/orm:${{ matrix.doctrine-orm }}" | |
- 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 |