Merge pull request #248 from Flowpack/feature/bump-php-version #513
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: [ main ] | |
pull_request: | |
branches: [ main ] | |
jobs: | |
lint: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-node@v3 | |
with: | |
node-version-file: '.nvmrc' | |
cache: 'yarn' | |
- name: Install dependencies | |
run: yarn | |
- name: Run linting | |
run: yarn lint | |
codestyle: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Setup PHP | |
uses: shivammathur/setup-php@v2 | |
with: | |
php-version: 8.1 | |
- name: Cache dependencies | |
uses: actions/cache@v3 | |
with: | |
path: ~/.composer/cache | |
key: dependencies-composer-${{ hashFiles('composer.json') }} | |
- name: Install dependencies | |
uses: php-actions/composer@v6 | |
with: | |
php_version: 8.1 | |
version: 2 | |
- name: PHPStan | |
uses: php-actions/phpstan@v3 | |
with: | |
php_version: 8.1 | |
command: analyse | |
path: 'Classes/' | |
php-unit-tests: | |
env: | |
FLOW_CONTEXT: Testing | |
FLOW_FOLDER: ../flow-base-distribution | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
php-versions: ['8.1'] | |
flow-versions: ['7.3'] | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Setup PHP | |
uses: shivammathur/setup-php@v2 | |
with: | |
php-version: ${{ matrix.php-versions }} | |
extensions: mbstring, xml, json, zlib, iconv, intl, pdo_sqlite, mysql | |
coverage: xdebug #optional | |
ini-values: opcache.fast_shutdown=0 | |
- name: Cache dependencies | |
uses: actions/cache@v2 | |
with: | |
path: ~/.composer/cache | |
key: dependencies-composer-${{ hashFiles('composer.json') }} | |
- name: Prepare Flow distribution | |
run: | | |
git clone https://github.com/neos/flow-base-distribution.git -b ${{ matrix.flow-versions }} ${FLOW_FOLDER} | |
cd ${FLOW_FOLDER} | |
composer require --no-update --no-interaction flowpack/media-ui | |
- name: Install distribution | |
run: | | |
cd ${FLOW_FOLDER} | |
composer install --no-interaction --no-progress | |
rm -rf Packages/Application/Flowpack.Media.Ui | |
cp -r ../media-ui Packages/Application/Flowpack.Media.Ui | |
- name: Run Unit tests | |
run: | | |
cd ${FLOW_FOLDER} | |
bin/phpunit --colors -c Build/BuildEssentials/PhpUnit/UnitTests.xml Packages/Application/Flowpack.Media.Ui/Tests/Unit/ | |
- name: Run Functional tests | |
run: | | |
cd ${FLOW_FOLDER} | |
bin/phpunit --colors -c Build/BuildEssentials/PhpUnit/FunctionalTests.xml Packages/Application/Flowpack.Media.Ui/Tests/Functional/ | |
js-unit-tests: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-node@v3 | |
with: | |
node-version-file: '.nvmrc' | |
cache: 'yarn' | |
- name: Install dependencies | |
run: yarn | |
- name: Run mocha tests | |
run: yarn test:unit | |
e2e: | |
env: | |
# Solves error when parcel tries to count cpus via lscpu | |
PARCEL_WORKERS: 1 | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-node@v3 | |
with: | |
node-version-file: '.nvmrc' | |
cache: 'yarn' | |
- name: Install dependencies | |
run: yarn | |
- name: Build main module | |
run: yarn build:module | |
- name: Build plugin for Neos UI | |
run: yarn build:plugin | |
- name: Run TestCafe | |
run: yarn test:github-actions | |
- name: Archive failure screenshots | |
if: ${{ failure() }} | |
uses: actions/upload-artifact@v3 | |
with: | |
name: e2e-failure-screenshots | |
path: screenshots |