Bring Project and CI Up-to-date #57
Workflow file for this run
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: "Linting and Unit Tests" | |
on: | |
pull_request: | |
branches: | |
- 'develop' | |
push: | |
branches: | |
- 'develop' | |
- 'master' | |
jobs: | |
syntax-linting: | |
runs-on: 'ubuntu-20.04' | |
strategy: | |
matrix: | |
php: | |
- '5.6' | |
- '7.0' | |
- '7.1' | |
- '7.2' | |
- '7.3' | |
- '7.4' | |
- '8.0' | |
- '8.1' | |
- '8.2' | |
- '8.3' | |
steps: | |
- uses: 'actions/checkout@v2' | |
- uses: 'shivammathur/setup-php@v2' | |
with: | |
php-version: '${{ matrix.php }}' | |
- run: 'find src/ -type f -name "*.php" -print0 | xargs -0 -n1 -P4 php -l -n | (! grep -v "No syntax errors detected" )' | |
unit-testing: | |
runs-on: 'ubuntu-20.04' | |
strategy: | |
matrix: | |
php: | |
- '5.6' | |
- '7.0' | |
- '7.1' | |
- '7.2' | |
- '7.3' | |
- '7.4' | |
- '8.0' | |
- '8.1' | |
- '8.2' | |
- '8.3' | |
steps: | |
- uses: 'actions/checkout@v2' | |
- uses: 'shivammathur/setup-php@v2' | |
with: | |
php-version: '${{ matrix.php }}' | |
- uses: 'ramsey/composer-install@v2' | |
with: | |
dependency-versions: 'highest' | |
# Require PHPUnit via command-line instead of adding to Composer's | |
# "require-dev"; we can't specify a version range that would satisfy all | |
# the PHP versions we want to test on because certain versions of PHPUnit | |
# conflict with the static analysis tools we use. | |
- run: 'composer require --dev phpstan/phpstan phpstan/phpstan-deprecation-rules' | |
- run: './vendor/bin/phpunit --bootstrap="tests/bootstrap.php" --test-suffix="Test.php" tests' |