Checkout Config
            filter:
    excluded_paths:
        - 'tests/*'
    dependency_paths:
        - 'vendor/'
checks:
    php: true
build:
    dependencies:
        before:
            - restore-from-cache repository "dependencies"
            - restore-from-cache repository "phpunit"
            - sudo mv /usr/bin/composer.phar /usr/bin/composer && sudo chmod +x /usr/bin/composer
        override:
            - composer install --no-interaction --optimize-autoloader
            - command: wget https://get.symfony.com/cli/installer -O - | bash
              only_if: '[ "$SCRUTINIZER_BRANCH" == "master" ] && [ -z "$SCRUTINIZER_PR_SOURCE_BRANCH" ]'
        after:
            - store-in-cache repository "dependencies" vendor/
    nodes:
        tests:
            tests:
                override:
                    - composer validate
                    - composer cs-validate
                    - command: 'composer test-with-coverage-clover'
                      coverage:
                          file: 'coverage-clover.xml'
                          format: 'clover'
                    - command: '~/.symfony/bin/symfony security:check --force-update'
                      only_if: '[ "$SCRUTINIZER_BRANCH" == "master" ] && [ -z "$SCRUTINIZER_PR_SOURCE_BRANCH" ]'
                    - php-scrutinizer-run
                after:
                    - store-in-cache repository "phpunit" vendor/bin/.phpunit/
    environment:
        php:
            version: '7.2'
            pecl_extensions:
                - pcov
                - zip
build_failure_conditions:
    - 'elements.rating(<= D).new.exists' # No new classes/methods with a rating of D or worse.
    - 'project.metric("scrutinizer.quality", < 8)' # Code Quality Rating drops below 8.
    - 'project.metric("scrutinizer.test_coverage", < 0.80)' # Code Coverage drops below 80%.