Skip to content

Fix phpdoc for test class #302

Fix phpdoc for test class

Fix phpdoc for test class #302

# https://help.github.com/en/categories/automating-your-workflow-with-github-actions
on:
pull_request:
push:
branches:
- "**"
tags:
- "**"
name: "Continuous Integration"
jobs:
webpack:
name: "Webpack build"
runs-on: ubuntu-latest
steps:
- name: "Checkout"
uses: actions/checkout@v2.3.4
- name: "Using Node"
uses: actions/setup-node@v2.1.4
- name: "Install dependencies"
run: |
yarn
- name: "Build"
run: yarn build
- name: "Check size"
run: |
yarn size
coding-standards:
name: "Coding Standards"
runs-on: ubuntu-latest
strategy:
matrix:
php-version:
- 7.4
steps:
- name: "Checkout"
uses: actions/checkout@v2.3.4
- name: "Install PHP with extensions"
uses: shivammathur/setup-php@2.9.0
with:
coverage: none
extensions: "mbstring, json"
php-version: ${{ matrix.php-version }}
- name: "Validate composer.json and composer.lock"
run: composer validate --strict
- name: "Cache dependencies installed with composer"
uses: actions/cache@v2
with:
path: ~/.composer/cache
key: php${{ matrix.php-version }}-composer-
restore-keys: |
php${{ matrix.php-version }}-composer-
- name: "Install locked dependencies with composer"
run: composer install --no-interaction --no-progress --no-suggest
- name: "Run localheinz/composer-normalize"
run: composer normalize --dry-run
- name: "Create cache directory for friendsofphp/php-cs-fixer"
run: mkdir -p .build/php-cs-fixer
- name: "Cache cache directory for friendsofphp/php-cs-fixer"
uses: actions/cache@v2
with:
path: .build/php-cs-fixer
key: php${{ matrix.php-version }}-php-cs-fixer-
restore-keys: |
php${{ matrix.php-version }}-php-cs-fixer-
- name: "Run friendsofphp/php-cs-fixer"
run: composer cs-diff
static-code-analysis:
name: "Static Code Analysis"
runs-on: ubuntu-latest
strategy:
matrix:
php-version:
- 7.4
steps:
- name: "Checkout"
uses: actions/checkout@v2.3.4
- name: "Install PHP with extensions"
uses: shivammathur/setup-php@2.9.0
with:
coverage: none
extensions: "mbstring, json"
php-version: ${{ matrix.php-version }}
- name: "Cache dependencies installed with composer"
uses: actions/cache@v2
with:
path: ~/.composer/cache
key: ${{ matrix.php-version }}-composer-
restore-keys: |
${{ matrix.php-version }}-composer-
- name: "Install locked dependencies with composer"
run: composer install --no-interaction --no-progress --no-suggest
- name: "Run phpstan/phpstan"
run: composer phpstan
- name: "Run psalm"
run: vendor/bin/psalm --config=psalm.xml --diff --shepherd --show-info=false --stats --threads=4
- name: "Run phpmd"
run: composer phpmd
tests:
name: "Test (PHP ${{ matrix.php-version }}, symfony ${{ matrix.symfony }}, ${{ matrix.dependencies }})"
runs-on: ubuntu-latest
strategy:
matrix:
php-version:
- 7.3
- 7.4
- 8.0
dependencies:
- lowest
- highest
symfony:
- 4.4
- 5.1
steps:
- name: "Checkout"
uses: actions/checkout@v2.3.4
- name: "Install PHP with extensions"
uses: shivammathur/setup-php@2.9.0
with:
coverage: none
extensions: "mbstring, json"
php-version: ${{ matrix.php-version }}
- name: 'Install Symfony Flex'
run: |
composer global require --prefer-dist --no-progress --no-suggest --ansi symfony/flex
- name: "Cache dependencies installed with composer"
uses: actions/cache@v2
with:
path: ~/.composer/cache
key: php${{ matrix.php-version }}-composer-
restore-keys: |
php${{ matrix.php-version }}-composer-${{ matrix.dependencies }}-
- name: "Lock symfony version"
run: composer config extra.symfony.require "${{ matrix.symfony }}.*"
- name: "Install lowest dependencies with composer"
if: matrix.dependencies == 'lowest'
run: composer update --no-interaction --no-progress --no-suggest --prefer-lowest
- name: "Install highest dependencies with composer"
if: matrix.dependencies == 'highest'
run: composer update --no-interaction --no-progress --no-suggest
- name: "Run tests with phpunit/phpunit"
run: composer test
code-coverage:
name: "Code Coverage"
runs-on: ubuntu-latest
strategy:
matrix:
php-version:
- 7.4
steps:
- name: "Checkout"
uses: actions/checkout@v2.3.4
- name: "Install PHP with extensions"
uses: shivammathur/setup-php@2.9.0
with:
coverage: pcov
extensions: "mbstring, json"
php-version: ${{ matrix.php-version }}
- name: "Cache dependencies installed with composer"
uses: actions/cache@v2
with:
path: ~/.composer/cache
key: php${{ matrix.php-version }}-composer-
restore-keys: |
php${{ matrix.php-version }}-composer-
- name: "Install locked dependencies with composer"
run: composer install --no-interaction --no-progress --no-suggest
- name: "Collect code coverage with pcov and phpunit/phpunit"
run: composer coverage
- name: "Send code coverage report to Codecov.io"
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
run: bash <(curl -s https://codecov.io/bash)
mutation-tests:
name: "Mutation Tests"
runs-on: ubuntu-latest
strategy:
matrix:
php-version:
- 7.4
steps:
- name: "Checkout"
uses: actions/checkout@v2.3.4
- name: "Install PHP with extensions"
uses: shivammathur/setup-php@2.9.0
with:
coverage: pcov
extensions: "mbstring"
php-version: ${{ matrix.php-version }}
- name: "Cache dependencies installed with composer"
uses: actions/cache@v2
with:
path: ~/.composer/cache
key: php${{ matrix.php-version }}-composer-
restore-keys: |
php${{ matrix.php-version }}-composer-
- name: "Install locked dependencies with composer"
run: composer install --no-interaction --no-progress --no-suggest
- name: "Download infection"
run: wget -O infection https://github.com/infection/infection/releases/download/0.19.0/infection.phar && chmod +x infection
- name: "Run mutation tests with pcov and infection/infection"
run: ./infection