[FEATURE] Added code coverage with Coveralls by introducing php-cover… #32
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: Tests | |
on: [push, pull_request] | |
jobs: | |
tests: | |
name: Tests | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
php: ['8.2', '8.3'] | |
typo3: ['11', '12', '13'] | |
composerInstall: ['composerInstallLowest', 'composerInstallHighest'] | |
include: | |
- typo3: '11' | |
php: '8.1' | |
composerInstall: 'composerInstallLowest' | |
- typo3: '11' | |
php: '8.1' | |
composerInstall: 'composerInstallHighest' | |
- typo3: '12' | |
php: '8.1' | |
composerInstall: 'composerInstallLowest' | |
- typo3: '12' | |
php: '8.1' | |
composerInstall: 'composerInstallHighest' | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Composer validate | |
run: Build/Scripts/runTests.sh -t ${{ matrix.typo3 }} -p ${{ matrix.php }} -s composerValidate | |
- name: Install dependencies | |
run: Build/Scripts/runTests.sh -t ${{ matrix.typo3 }} -p ${{ matrix.php }} -s ${{ matrix.composerInstall }} | |
- name: Composer normalize | |
run: Build/Scripts/runTests.sh -t ${{ matrix.typo3 }} -p ${{ matrix.php }} -s composerNormalize -n | |
- name: Lint PHP | |
run: Build/Scripts/runTests.sh -t ${{ matrix.typo3 }} -p ${{ matrix.php }} -s lint | |
- name: CGL | |
run: Build/Scripts/runTests.sh -n -t ${{ matrix.typo3 }} -p ${{ matrix.php }} -s cgl -n | |
- name: PHPStan | |
run: Build/Scripts/runTests.sh -t ${{ matrix.typo3 }} -p ${{ matrix.php }} -s phpstan -e "--error-format=github" | |
- name: Functional tests | |
run: Build/Scripts/runTests.sh -t ${{ matrix.typo3 }} -p ${{ matrix.php }} -s functional | |
- name: Unit tests | |
run: Build/Scripts/runTests.sh -t ${{ matrix.typo3 }} -p ${{ matrix.php }} -s unit | |
- name: Functional tests coverage | |
if: matrix.php == '8.2' && matrix.typo3 == '13' && matrix.composerInstall == 'composerInstallHighest' | |
run: Build/Scripts/runTests.sh -t ${{ matrix.typo3 }} -p ${{ matrix.php }} -s unit -x -e "--coverage-php=.Build/coverage/functional.cov" | |
- name: Unit tests coverage | |
if: matrix.php == '8.2' && matrix.typo3 == '13' && matrix.composerInstall == 'composerInstallHighest' | |
run: Build/Scripts/runTests.sh -t ${{ matrix.typo3 }} -p ${{ matrix.php }} -s unit -x -e "--coverage-php=.Build/coverage/unit.cov" | |
- name: Composer require phpcov for coverage | |
if: matrix.php == '8.2' && matrix.typo3 == '13' && matrix.composerInstall == 'composerInstallHighest' | |
run: Build/Scripts/runTests.sh -t ${{ matrix.typo3 }} -p ${{ matrix.php }} -s composer require --dev phpunit/phpcov | |
- name: Merge coverage | |
if: matrix.php == '8.2' && matrix.typo3 == '13' && matrix.composerInstall == 'composerInstallHighest' | |
run: ./.Build/bin/phpcov merge --clover=build/logs/clover.xml .Build/coverage | |
- name: Upload coverage | |
if: matrix.php == '8.2' && matrix.typo3 == '13' && matrix.composerInstall == 'composerInstallHighest' | |
run: ./.Build/bin/php-coveralls --coverage_clover=build/logs/clover.xml -v |