Enforce PSR-12 and organise imports on Winter CMS core files #2900
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: | |
branches: | |
- '1.2' | |
- develop | |
pull_request: | |
concurrency: | |
group: phpunit-${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
frontendTests: | |
strategy: | |
max-parallel: 2 | |
matrix: | |
operatingSystem: [ubuntu-latest, windows-latest] | |
fail-fast: false | |
runs-on: ${{ matrix.operatingSystem }} | |
name: ${{ matrix.operatingSystem }} / JavaScript | |
env: | |
nodeVersion: 16 | |
phpVersion: '8.0' | |
extensions: curl, fileinfo, gd, mbstring, openssl, pdo, pdo_sqlite, sqlite3, xml, zip | |
key: winter-cms-cache-develop | |
steps: | |
- name: Cancel previous incomplete runs | |
uses: styfle/[email protected] | |
with: | |
access_token: ${{ github.token }} | |
- name: Checkout changes | |
uses: actions/checkout@v4 | |
- name: Install PHP | |
uses: shivammathur/setup-php@v2 | |
with: | |
php-version: ${{ env.phpVersion }} | |
extensions: ${{ env.extensions }} | |
- name: Install Node | |
uses: actions/setup-node@v3 | |
with: | |
node-version: ${{ env.nodeVersion }} | |
- name: Switch library dependency (develop) | |
if: github.ref == 'refs/heads/develop' || github.base_ref == 'develop' | |
run: php ./.github/workflows/utilities/library-switcher "dev-develop as 1.2" | |
- name: Switch library dependency (1.2) | |
if: github.head_ref == '1.2' || github.ref == 'refs/heads/1.2' || github.base_ref == '1.2' | |
run: php ./.github/workflows/utilities/library-switcher "1.2.x-dev as 1.2" | |
- name: Install Composer dependencies | |
run: composer install --no-interaction --no-progress --no-scripts | |
- name: Reset modules | |
run: | | |
git reset --hard | |
git clean -fd | |
- name: Run post-update Composer scripts | |
run: php artisan package:discover | |
- name: Run tests | |
run: | | |
php artisan mix:install | |
php artisan mix:run module-system test | |
phpUnitTests: | |
strategy: | |
max-parallel: 8 | |
matrix: | |
operatingSystem: [ubuntu-latest, windows-latest] | |
phpVersion: ['8.0', '8.1', '8.2', '8.3'] | |
fail-fast: false | |
runs-on: ${{ matrix.operatingSystem }} | |
name: ${{ matrix.operatingSystem }} / PHP ${{ matrix.phpVersion }} | |
env: | |
extensions: curl, fileinfo, gd, mbstring, openssl, pdo, pdo_sqlite, sqlite3, xml, zip | |
key: winter-cms-cache-develop | |
steps: | |
- name: Checkout changes | |
uses: actions/checkout@v4 | |
- name: Install PHP | |
uses: shivammathur/setup-php@v2 | |
with: | |
php-version: ${{ matrix.phpVersion }} | |
extensions: ${{ env.extensions }} | |
- name: Switch library dependency (develop) | |
if: github.ref == 'refs/heads/develop' || github.base_ref == 'develop' | |
run: php ./.github/workflows/utilities/library-switcher "dev-develop as 1.2" | |
- name: Switch library dependency (1.0) | |
if: github.head_ref == '1.0' || github.ref == 'refs/heads/1.0' || github.base_ref == '1.0' | |
run: php ./.github/workflows/utilities/library-switcher "1.0.x-dev as 1.0" | |
- name: Switch library dependency (1.1) | |
if: github.head_ref == '1.1' || github.ref == 'refs/heads/1.1' || github.base_ref == '1.1' | |
run: php ./.github/workflows/utilities/library-switcher "1.1.x-dev as 1.1" | |
- name: Switch library dependency (1.2) | |
if: github.head_ref == '1.2' || github.ref == 'refs/heads/1.2' || github.base_ref == '1.2' | |
run: php ./.github/workflows/utilities/library-switcher "1.2.x-dev as 1.2" | |
- name: Install Composer dependencies | |
run: composer install --no-interaction --no-progress --no-scripts | |
- name: Reset modules | |
run: | | |
git reset --hard | |
git clean -fd | |
- name: Run post-update Composer scripts | |
run: php artisan package:discover | |
- name: Setup problem matchers for PHPUnit | |
if: matrix.phpVersion == '8.1' | |
run: echo "::add-matcher::${{ runner.tool_cache }}/phpunit.json" | |
- name: Run Linting and Tests | |
run: | | |
composer lint | |
php artisan winter:test -m system -m backend -m cms |