Skip to content

Merge pull request #2618 from rodrigoprimo/escape-output-namespaced-n… #362

Merge pull request #2618 from rodrigoprimo/escape-output-namespaced-n…

Merge pull request #2618 from rodrigoprimo/escape-output-namespaced-n… #362

Workflow file for this run

name: Quick Tests
on:
push:
branches-ignore:
- main
paths-ignore:
- '**.md'
# Allow manually triggering the workflow.
workflow_dispatch:
# Cancels all previous workflow runs for the same branch that have not yet completed.
concurrency:
# The concurrency group contains the workflow name and the branch name.
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
# Performs some quick tests.
# This is a much quicker test suite which only runs the unit tests and linting
# against the low/high supported PHP/PHPCS combinations.
quick-tests:
runs-on: ubuntu-latest
strategy:
matrix:
php: [ '7.2', 'latest' ]
dependencies: [ 'lowest', 'stable' ]
name: QTest - PHP ${{ matrix.php }} on PHPCS ${{ matrix.dependencies }}
steps:
- name: Checkout repository
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
with:
persist-credentials: false
- name: Set up PHP
uses: shivammathur/setup-php@44454db4f0199b8b9685a5d763dc37cbf79108e1 # 2.36.0
with:
php-version: ${{ matrix.php }}
# With stable PHPCS dependencies, allow for PHP deprecation notices.
# Unit tests don't need to fail on those for stable releases where those issues won't get fixed anymore.
ini-values: error_reporting=-1, display_errors=On, display_startup_errors=On
coverage: ${{ github.ref_name == 'develop' && 'xdebug' || 'none' }}
- name: Enable creation of `composer.lock` file
if: ${{ matrix.dependencies == 'lowest' }}
run: composer config --unset lock
- name: Install Composer dependencies
uses: ramsey/composer-install@3cf229dc2919194e9e36783941438d17239e8520 # 3.1.1
with:
# Bust the cache at least once a month - output format: YYYY-MM.
custom-cache-suffix: $(date -u "+%Y-%m")
- name: "Composer: downgrade PHPCS dependencies for tests (lowest)"
if: ${{ matrix.dependencies == 'lowest' }}
run: >
composer update --prefer-lowest --no-scripts --no-interaction
squizlabs/php_codesniffer
phpcsstandards/phpcsutils
phpcsstandards/phpcsextra
- name: Lint PHP files against parse errors
if: ${{ matrix.dependencies == 'stable' }}
run: composer lint
- name: Run the unit tests without code coverage
if: ${{ github.event.repository.fork == true || github.ref_name != 'develop' }}
run: composer run-tests
- name: Run the unit tests with code coverage
if: ${{ github.event.repository.fork == false && github.ref_name == 'develop' }}
run: composer coverage
- name: Send coverage report to Codecov
if: ${{ success() && github.event.repository.fork == false && github.ref_name == 'develop' }}
uses: codecov/codecov-action@671740ac38dd9b0130fbe1cec585b89eea48d3de # v5.5.2
with:
files: ./build/logs/clover.xml
fail_ci_if_error: true
verbose: true
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}