diff --git a/.dockerignore b/.dockerignore index 09a3828..2795482 100644 --- a/.dockerignore +++ b/.dockerignore @@ -1,14 +1,13 @@ # -# JBZoo Toolbox - CI-Report-Converter +# JBZoo Toolbox - CI-Report-Converter. # # This file is part of the JBZoo Toolbox project. # For the full copyright and license information, please view the LICENSE # file that was distributed with this source code. # -# @package CI-Report-Converter # @license MIT # @copyright Copyright (C) JBZoo.com, All rights reserved. -# @link https://github.com/JBZoo/CI-Report-Converter +# @see https://github.com/JBZoo/CI-Report-Converter # .git diff --git a/.editorconfig b/.editorconfig index 15a6bf0..1203e69 100644 --- a/.editorconfig +++ b/.editorconfig @@ -1,14 +1,13 @@ # -# JBZoo Toolbox - CI-Report-Converter +# JBZoo Toolbox - CI-Report-Converter. # # This file is part of the JBZoo Toolbox project. # For the full copyright and license information, please view the LICENSE # file that was distributed with this source code. # -# @package CI-Report-Converter # @license MIT # @copyright Copyright (C) JBZoo.com, All rights reserved. -# @link https://github.com/JBZoo/CI-Report-Converter +# @see https://github.com/JBZoo/CI-Report-Converter # # EditorConfig is awesome: http://EditorConfig.org diff --git a/.gitattributes b/.gitattributes index c34f676..8b8e2ea 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,14 +1,13 @@ # -# JBZoo Toolbox - CI-Report-Converter +# JBZoo Toolbox - CI-Report-Converter. # # This file is part of the JBZoo Toolbox project. # For the full copyright and license information, please view the LICENSE # file that was distributed with this source code. # -# @package CI-Report-Converter # @license MIT # @copyright Copyright (C) JBZoo.com, All rights reserved. -# @link https://github.com/JBZoo/CI-Report-Converter +# @see https://github.com/JBZoo/CI-Report-Converter # /.github export-ignore diff --git a/.github/release-drafter.yml b/.github/release-drafter.yml index 45d338a..341a2a9 100644 --- a/.github/release-drafter.yml +++ b/.github/release-drafter.yml @@ -1,14 +1,13 @@ # -# JBZoo Toolbox - CI-Report-Converter +# JBZoo Toolbox - CI-Report-Converter. # # This file is part of the JBZoo Toolbox project. # For the full copyright and license information, please view the LICENSE # file that was distributed with this source code. # -# @package CI-Report-Converter # @license MIT # @copyright Copyright (C) JBZoo.com, All rights reserved. -# @link https://github.com/JBZoo/CI-Report-Converter +# @see https://github.com/JBZoo/CI-Report-Converter # name-template: '$RESOLVED_VERSION' diff --git a/.github/workflows/gh-action.yml b/.github/workflows/gh-action.yml index f8bc3cc..28111a1 100644 --- a/.github/workflows/gh-action.yml +++ b/.github/workflows/gh-action.yml @@ -1,14 +1,13 @@ # -# JBZoo Toolbox - CI-Report-Converter +# JBZoo Toolbox - CI-Report-Converter. # # This file is part of the JBZoo Toolbox project. # For the full copyright and license information, please view the LICENSE # file that was distributed with this source code. # -# @package CI-Report-Converter # @license MIT # @copyright Copyright (C) JBZoo.com, All rights reserved. -# @link https://github.com/JBZoo/CI-Report-Converter +# @see https://github.com/JBZoo/CI-Report-Converter # name: GitHub Action diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index af4faf8..0d96d9e 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,14 +1,13 @@ # -# JBZoo Toolbox - CI-Report-Converter +# JBZoo Toolbox - CI-Report-Converter. # # This file is part of the JBZoo Toolbox project. # For the full copyright and license information, please view the LICENSE # file that was distributed with this source code. # -# @package CI-Report-Converter # @license MIT # @copyright Copyright (C) JBZoo.com, All rights reserved. -# @link https://github.com/JBZoo/CI-Report-Converter +# @see https://github.com/JBZoo/CI-Report-Converter # name: CI @@ -19,9 +18,7 @@ on: - "*" push: branches: - - master - tags: - - '*' + - 'master' schedule: - cron: '30 */8 * * *' @@ -31,47 +28,48 @@ env: jobs: phpunit: - name: PHPUnit Tests + name: PHPUnit runs-on: ubuntu-latest env: JBZOO_COMPOSER_UPDATE_FLAGS: ${{ matrix.composer_flags }} strategy: matrix: - php-version: [ 7.4, 8.0, 8.1 ] - build-way: [ "update" ] + php-version: [ 8.1, 8.2 ] + coverage: [ xdebug, none ] composer_flags: [ "--prefer-lowest", "" ] steps: - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v3 with: fetch-depth: 0 - - name: Setup PHP and composer + - name: Setup PHP uses: shivammathur/setup-php@v2 with: php-version: ${{ matrix.php-version }} - coverage: xdebug + coverage: ${{ matrix.coverage }} tools: composer + extensions: ast - name: Build the Project - run: make build ${{ matrix.build-way }} --no-print-directory + run: make update --no-print-directory - name: ๐Ÿงช PHPUnit Tests run: make test --no-print-directory - name: Uploading coverage to coveralls + if: ${{ matrix.coverage == 'xdebug' }} + continue-on-error: true env: COVERALLS_REPO_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: make report-coveralls --no-print-directory || true - - name: Codecov Report - uses: codecov/codecov-action@v1 + - name: Upload Artifacts + uses: actions/upload-artifact@v3 continue-on-error: true with: - token: ${{ secrets.CODECOV_TOKEN }} - files: '*.xml' - directory: ./build/coverage_xml/ - fail_ci_if_error: true + name: PHPUnit - ${{ matrix.php-version }} - ${{ matrix.coverage }} + path: build/ linters: @@ -79,17 +77,18 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - php-version: [ 7.4, 8.0, 8.1 ] + php-version: [ 8.1, 8.2 ] steps: - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v3 with: fetch-depth: 0 - - name: Setup PHP and composer + - name: Setup PHP uses: shivammathur/setup-php@v2 with: php-version: ${{ matrix.php-version }} + coverage: none tools: composer extensions: ast @@ -99,46 +98,93 @@ jobs: - name: ๐Ÿ‘ Code Quality run: make codestyle --no-print-directory + - name: Upload Artifacts + uses: actions/upload-artifact@v3 + continue-on-error: true + with: + name: Linters - ${{ matrix.php-version }} + path: build/ + + + report: + name: Reports + runs-on: ubuntu-latest + strategy: + matrix: + php-version: [ 8.1, 8.2 ] + steps: + - name: Checkout code + uses: actions/checkout@v3 + with: + fetch-depth: 0 + + - name: Setup PHP + uses: shivammathur/setup-php@v2 + with: + php-version: ${{ matrix.php-version }} + coverage: xdebug + tools: composer + extensions: ast + + - name: Build the Project + run: make update --no-print-directory + + - name: ๐Ÿ“ Build Reports + run: make report-all --no-print-directory + + - name: Upload Artifacts + uses: actions/upload-artifact@v3 + continue-on-error: true + with: + name: Reports - ${{ matrix.php-version }} + path: build/ + phar: name: Phar runs-on: ubuntu-latest + needs: [ phpunit, linters, report ] strategy: matrix: - php-version: [ 7.4, 8.0, 8.1 ] - experimental: [ false ] - build-way: [ "build", "update build" ] - include: - - php-version: 8.0 - experimental: true - build-way: update + php-version: [ 8.1, 8.2 ] steps: - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v3 with: fetch-depth: 0 - - name: Setup PHP and composer + - name: Setup PHP uses: shivammathur/setup-php@v2 with: php-version: ${{ matrix.php-version }} + coverage: xdebug tools: composer + extensions: ast + + - name: Build the project + run: make build --no-print-directory - name: Building Phar binary file - continue-on-error: ${{ matrix.experimental }} - run: make ${{ matrix.build-way }} --no-print-directory + run: make build-phar --no-print-directory - name: Trying to use the phar file - continue-on-error: ${{ matrix.experimental }} run: ./build/ci-report-converter.phar convert --help + - name: Upload Artifacts + uses: actions/upload-artifact@v3 + continue-on-error: true + with: + name: Reports - ${{ matrix.php-version }} + path: build/ + docker: name: Docker runs-on: ubuntu-latest + needs: [ phar ] steps: - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v3 with: fetch-depth: 0 diff --git a/.github/workflows/release-docker.yml b/.github/workflows/release-docker.yml index b13fb67..82b4eaf 100644 --- a/.github/workflows/release-docker.yml +++ b/.github/workflows/release-docker.yml @@ -1,14 +1,13 @@ # -# JBZoo Toolbox - CI-Report-Converter +# JBZoo Toolbox - CI-Report-Converter. # # This file is part of the JBZoo Toolbox project. # For the full copyright and license information, please view the LICENSE # file that was distributed with this source code. # -# @package CI-Report-Converter # @license MIT # @copyright Copyright (C) JBZoo.com, All rights reserved. -# @link https://github.com/JBZoo/CI-Report-Converter +# @see https://github.com/JBZoo/CI-Report-Converter # name: Publish Docker Image diff --git a/.github/workflows/release-draft.yml b/.github/workflows/release-draft.yml index f515f15..3429fd4 100644 --- a/.github/workflows/release-draft.yml +++ b/.github/workflows/release-draft.yml @@ -1,14 +1,13 @@ # -# JBZoo Toolbox - CI-Report-Converter +# JBZoo Toolbox - CI-Report-Converter. # # This file is part of the JBZoo Toolbox project. # For the full copyright and license information, please view the LICENSE # file that was distributed with this source code. # -# @package CI-Report-Converter # @license MIT # @copyright Copyright (C) JBZoo.com, All rights reserved. -# @link https://github.com/JBZoo/CI-Report-Converter +# @see https://github.com/JBZoo/CI-Report-Converter # name: Draft Release diff --git a/.gitignore b/.gitignore index a5b87cc..b6fcc40 100644 --- a/.gitignore +++ b/.gitignore @@ -1,14 +1,13 @@ # -# JBZoo Toolbox - CI-Report-Converter +# JBZoo Toolbox - CI-Report-Converter. # # This file is part of the JBZoo Toolbox project. # For the full copyright and license information, please view the LICENSE # file that was distributed with this source code. # -# @package CI-Report-Converter # @license MIT # @copyright Copyright (C) JBZoo.com, All rights reserved. -# @link https://github.com/JBZoo/CI-Report-Converter +# @see https://github.com/JBZoo/CI-Report-Converter # .idea diff --git a/.phan.php b/.phan.php index 9b8ef79..8c68a15 100644 --- a/.phan.php +++ b/.phan.php @@ -1,30 +1,31 @@ [ 'src', + 'vendor/jbzoo/cli/src', 'vendor/jbzoo/data/src', 'vendor/jbzoo/utils/src', - 'vendor/jbzoo/cli/src', - 'vendor/jbzoo/markdown/src', + 'vendor/symfony/console', - ] + + 'vendor/jbzoo/markdown/src', + ], ]); diff --git a/Dockerfile b/Dockerfile index cb2a76d..876055c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,17 +1,16 @@ # -# JBZoo Toolbox - Mock-Server +# JBZoo Toolbox - CI-Report-Converter. # # This file is part of the JBZoo Toolbox project. # For the full copyright and license information, please view the LICENSE # file that was distributed with this source code. # -# @package Mock-Server # @license MIT # @copyright Copyright (C) JBZoo.com, All rights reserved. -# @link https://github.com/JBZoo/Mock-Server +# @see https://github.com/JBZoo/CI-Report-Converter # -FROM php:7.4-cli-alpine +FROM php:8.1-cli-alpine RUN mv "$PHP_INI_DIR/php.ini-production" "$PHP_INI_DIR/php.ini" ADD https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions /usr/local/bin/ @@ -19,6 +18,7 @@ RUN chmod +x /usr/local/bin/install-php-extensions \ && sync \ && install-php-extensions \ opcache \ + gd \ zip \ @composer diff --git a/Makefile b/Makefile index 171fc1e..f6bdb7d 100644 --- a/Makefile +++ b/Makefile @@ -1,14 +1,13 @@ # -# JBZoo Toolbox - CI-Report-Converter +# JBZoo Toolbox - CI-Report-Converter. # # This file is part of the JBZoo Toolbox project. # For the full copyright and license information, please view the LICENSE # file that was distributed with this source code. # -# @package CI-Report-Converter # @license MIT # @copyright Copyright (C) JBZoo.com, All rights reserved. -# @link https://github.com/JBZoo/CI-Report-Converter +# @see https://github.com/JBZoo/CI-Report-Converter # .PHONY: build @@ -17,11 +16,9 @@ ifneq (, $(wildcard ./vendor/jbzoo/codestyle/src/init.Makefile)) include ./vendor/jbzoo/codestyle/src/init.Makefile endif -BOX_PHAR = https://github.com/box-project/box/releases/download/3.16.0/box.phar - build: ##@Project Install all 3rd party dependencies $(call title,"Install/Update all 3rd party dependencies") - @composer install --optimize-autoloader --no-progress + @composer install @make build-phar @make create-symlink @@ -33,9 +30,7 @@ build-docker: update: ##@Project Install/Update all 3rd party dependencies @echo "Composer flags: $(JBZOO_COMPOSER_UPDATE_FLAGS)" - @composer update --with-all-dependencies --optimize-autoloader --no-progress $(JBZOO_COMPOSER_UPDATE_FLAGS) - @$(PHP_BIN) `pwd`/vendor/bin/composer-diff - @make create-symlink + @composer update $(JBZOO_COMPOSER_UPDATE_FLAGS) test-all: ##@Project Run all project tests at once @@ -44,10 +39,6 @@ test-all: ##@Project Run all project tests at once @make codestyle -update-titles: - @doctoc --notitle --update-only --github README.md - - create-symlink: ##@Project Create Symlink (alias for testing) @ln -sfv `pwd`/ci-report-converter `pwd`/vendor/bin/ci-report-converter diff --git a/README.md b/README.md index 898ceeb..c28c695 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # JBZoo / CI-Report-Converter -[![CI](https://github.com/JBZoo/CI-Report-Converter/actions/workflows/main.yml/badge.svg?branch=master)](https://github.com/JBZoo/CI-Report-Converter/actions/workflows/main.yml?query=branch%3Amaster) [![Docker Cloud Build Status](https://img.shields.io/docker/cloud/build/jbzoo/ci-report-converter.svg)](https://hub.docker.com/r/jbzoo/ci-report-converter) [![codecov](https://codecov.io/gh/JBZoo/CI-Report-Converter/branch/master/graph/badge.svg)](https://codecov.io/gh/JBZoo/CI-Report-Converter) [![Psalm Coverage](https://shepherd.dev/github/JBZoo/CI-Report-Converter/coverage.svg)](https://shepherd.dev/github/JBZoo/CI-Report-Converter) [![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/jbzoo/ci-report-converter/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/jbzoo/ci-report-converter/?branch=master) -[![PHP Version](https://img.shields.io/packagist/php-v/jbzoo/ci-report-converter)](https://github.com/JBZoo/CI-Report-Converter/blob/master/composer.json) [![PHP Strict Types](https://img.shields.io/badge/strict__types-%3D1-brightgreen)](https://www.php.net/manual/en/language.types.declarations.php#language.types.declarations.strict) [![Stable Version](https://poser.pugx.org/jbzoo/ci-report-converter/version)](https://packagist.org/packages/jbzoo/ci-report-converter) [![Total Downloads](https://poser.pugx.org/jbzoo/ci-report-converter/downloads)](https://packagist.org/packages/jbzoo/ci-report-converter/stats) [![Docker Pulls](https://img.shields.io/docker/pulls/jbzoo/ci-report-converter.svg)](https://hub.docker.com/r/jbzoo/ci-report-converter) [![GitHub Issues](https://img.shields.io/github/issues/jbzoo/ci-report-converter)](https://github.com/JBZoo/CI-Report-Converter/issues) [![GitHub License](https://img.shields.io/github/license/jbzoo/ci-report-converter)](https://github.com/JBZoo/CI-Report-Converter/blob/master/LICENSE) +[![CI](https://github.com/JBZoo/CI-Report-Converter/actions/workflows/main.yml/badge.svg?branch=master)](https://github.com/JBZoo/CI-Report-Converter/actions/workflows/main.yml?query=branch%3Amaster) [![Coverage Status](https://coveralls.io/repos/github/JBZoo/CI-Report-Converter/badge.svg?branch=master)](https://coveralls.io/github/JBZoo/CI-Report-Converter?branch=master) [![Psalm Coverage](https://shepherd.dev/github/JBZoo/CI-Report-Converter/coverage.svg)](https://shepherd.dev/github/JBZoo/CI-Report-Converter) [![Psalm Level](https://shepherd.dev/github/JBZoo/CI-Report-Converter/level.svg)](https://shepherd.dev/github/JBZoo/CI-Report-Converter) [![CodeFactor](https://www.codefactor.io/repository/github/jbzoo/ci-report-converter/badge)](https://www.codefactor.io/repository/github/jbzoo/ci-report-converter/issues) +[![Stable Version](https://poser.pugx.org/jbzoo/ci-report-converter/version)](https://packagist.org/packages/jbzoo/ci-report-converter/) [![Total Downloads](https://poser.pugx.org/jbzoo/ci-report-converter/downloads)](https://packagist.org/packages/jbzoo/ci-report-converter/stats) [![Dependents](https://poser.pugx.org/jbzoo/ci-report-converter/dependents)](https://packagist.org/packages/jbzoo/ci-report-converter/dependents?order_by=downloads) [![Visitors](https://visitor-badge.glitch.me/badge?page_id=jbzoo.ci-report-converter)]() [![GitHub License](https://img.shields.io/github/license/jbzoo/ci-report-converter)](https://github.com/JBZoo/CI-Report-Converter/blob/master/LICENSE) @@ -220,6 +220,7 @@ Options: --non-zero-on-error None-zero exit code on any StdErr message --timestamp Show timestamp at the beginning of each message --profile Display timing and memory usage information + --cron Shortcut for crontab. It's basically focused on logs output. It's combination of --timestamp --profile --stdout-only --no-progress -vv -h, --help Display help for the given command. When no command is given display help for the list command -q, --quiet Do not output any message -V, --version Display this application version @@ -256,6 +257,7 @@ Options: --non-zero-on-error None-zero exit code on any StdErr message --timestamp Show timestamp at the beginning of each message --profile Display timing and memory usage information + --cron Shortcut for crontab. It's basically focused on logs output. It's combination of --timestamp --profile --stdout-only --no-progress -vv -h, --help Display help for the given command. When no command is given display help for the list command -q, --quiet Do not output any message -V, --version Display this application version @@ -546,9 +548,9 @@ PS: More examples are coming soon. #### JUnit.xml (API) ```php -use JBZoo\CiReportConverter\Converters\JUnitConverter; -use JBZoo\CiReportConverter\Formats\Source\SourceCaseOutput; -use JBZoo\CiReportConverter\Formats\Source\SourceSuite; +use JBZoo\CIReportConverter\Converters\JUnitConverter; +use JBZoo\CIReportConverter\Formats\Source\SourceCaseOutput; +use JBZoo\CIReportConverter\Formats\Source\SourceSuite; $class = \JBZoo\PHPUnit\ExampleTest::class; $className = str_replace('\\', '.', $class); @@ -594,7 +596,7 @@ Some err output #### GitHub Actions (API) ```php -use JBZoo\CiReportConverter\Formats\GithubActions\GithubActions; +use JBZoo\CIReportConverter\Formats\GithubActions\GithubActions; $ghActions = new GithubActions(); $case0 = $ghActions->addCase('src/Root.php'); diff --git a/action.yml b/action.yml index 88bcf89..fb397a4 100644 --- a/action.yml +++ b/action.yml @@ -1,14 +1,13 @@ # -# JBZoo Toolbox - CI-Report-Converter +# JBZoo Toolbox - CI-Report-Converter. # # This file is part of the JBZoo Toolbox project. # For the full copyright and license information, please view the LICENSE # file that was distributed with this source code. # -# @package CI-Report-Converter # @license MIT # @copyright Copyright (C) JBZoo.com, All rights reserved. -# @link https://github.com/JBZoo/CI-Report-Converter +# @see https://github.com/JBZoo/CI-Report-Converter # name: 'Any Report to GitHub Annotations' diff --git a/build/.gitkeep b/build/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/ci-report-converter b/ci-report-converter index 414ea08..4274b18 100755 --- a/ci-report-converter +++ b/ci-report-converter @@ -2,16 +2,15 @@ =7.4", + "minimum-stability" : "dev", + "prefer-stable" : true, + + "require" : { + "php" : "^8.1", "ext-dom" : "*", "ext-simplexml" : "*", "ext-hash" : "*", - "jbzoo/data" : "^5.0|dev-master|7.x-dev", - "jbzoo/utils" : "^5.0|dev-master|7.x-dev", - "jbzoo/cli" : "^2.0|dev-master|7.x-dev", - "jbzoo/markdown" : "^1.2|dev-master|7.x-dev", + "jbzoo/data" : "7.x-dev", + "jbzoo/utils" : "7.x-dev", + "jbzoo/cli" : "7.x-dev", + "jbzoo/markdown" : "7.x-dev", "symfony/console" : ">=4.4" }, - "require-dev" : { - "jbzoo/toolbox-dev" : "^4.1.0", + "require-dev" : { + "jbzoo/toolbox-dev" : "7.x-dev", + "jbzoo/mermaid-php" : "7.x-dev", "roave/security-advisories" : "dev-master" }, - "replace" : { - "jbzoo/toolbox-ci" : "*" - }, + "bin" : ["ci-report-converter"], - "autoload" : { - "psr-4" : { - "JBZoo\\CiReportConverter\\" : "src" - } + "autoload" : { + "psr-4" : {"JBZoo\\CIReportConverter\\" : "src"} }, - "autoload-dev" : { - "classmap" : [ - "tests" - ] + "autoload-dev" : { + "psr-4" : {"JBZoo\\PHPUnit\\" : "tests"} }, - "bin" : [ - "ci-report-converter" - ], - - "config" : { + "config" : { "optimize-autoloader" : true, - "allow-plugins" : { - "composer/package-versions-deprecated" : true - } + "allow-plugins" : {"composer/package-versions-deprecated" : true} }, - "extra" : { + "extra" : { "branch-alias" : { "dev-master" : "7.x-dev" } diff --git a/composer.lock b/composer.lock index df38f96..bf5414d 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "f9d7998881c0959a07e5b33d663bbb38", + "content-hash": "1c53feaf6135b4ccfd4d635993853f20", "packages": [ { "name": "bluepsyduck/symfony-process-manager", @@ -65,34 +65,35 @@ }, { "name": "jbzoo/cli", - "version": "2.1.0", + "version": "dev-master", "source": { "type": "git", "url": "https://github.com/JBZoo/Cli.git", - "reference": "b8a8f7b709521b1f14d51fdee5ec036794f60ae1" + "reference": "252b88b2c7afc1a8f5acea6b0957aca99a22ebbb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/JBZoo/Cli/zipball/b8a8f7b709521b1f14d51fdee5ec036794f60ae1", - "reference": "b8a8f7b709521b1f14d51fdee5ec036794f60ae1", + "url": "https://api.github.com/repos/JBZoo/Cli/zipball/252b88b2c7afc1a8f5acea6b0957aca99a22ebbb", + "reference": "252b88b2c7afc1a8f5acea6b0957aca99a22ebbb", "shasum": "" }, "require": { "bluepsyduck/symfony-process-manager": ">=1.3.3", - "jbzoo/event": "^3.2|^4.0", - "jbzoo/utils": "^4.4|^5.0", - "php": ">=7.4", - "symfony/console": "^4.4|^5.4|^6.0", - "symfony/lock": "^4.4|^5.4|^6.0", - "symfony/process": "^4.4|^5.4|^6.0" + "jbzoo/event": "7.x-dev", + "jbzoo/utils": "7.x-dev", + "php": "^8.1", + "symfony/console": ">=5.4", + "symfony/lock": ">=5.4", + "symfony/process": ">=5.4" }, "require-dev": { - "jbzoo/toolbox-dev": "^4.0.1" + "jbzoo/toolbox-dev": "7.x-dev" }, + "default-branch": true, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.x-dev" + "dev-master": "7.x-dev" } }, "autoload": { @@ -129,46 +130,47 @@ ], "support": { "issues": "https://github.com/JBZoo/Cli/issues", - "source": "https://github.com/JBZoo/Cli/tree/2.1.0" + "source": "https://github.com/JBZoo/Cli/tree/master" }, - "time": "2022-08-03T21:29:18+00:00" + "time": "2023-03-12T23:16:17+00:00" }, { "name": "jbzoo/data", - "version": "5.0.0", + "version": "dev-master", "source": { "type": "git", "url": "https://github.com/JBZoo/Data.git", - "reference": "d2336938d43d699178294a3e1c9e058dbac98830" + "reference": "c21704f61c30448d2dadf6317beb9b6f3cdf6e4f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/JBZoo/Data/zipball/d2336938d43d699178294a3e1c9e058dbac98830", - "reference": "d2336938d43d699178294a3e1c9e058dbac98830", + "url": "https://api.github.com/repos/JBZoo/Data/zipball/c21704f61c30448d2dadf6317beb9b6f3cdf6e4f", + "reference": "c21704f61c30448d2dadf6317beb9b6f3cdf6e4f", "shasum": "" }, "require": { "ext-json": "*", - "php": ">=7.4" + "php": "^8.1" }, "require-dev": { - "jbzoo/toolbox-dev": ">=4.0.1", - "jbzoo/utils": ">=4.4.0", - "symfony/polyfill-ctype": ">=1.26.0", - "symfony/polyfill-mbstring": ">=1.26.0", - "symfony/polyfill-php73": ">=1.26.0", - "symfony/polyfill-php80": ">=1.26.0", - "symfony/polyfill-php81": ">=1.26.0", + "jbzoo/toolbox-dev": "7.x-dev", + "jbzoo/utils": "7.x-dev", + "symfony/polyfill-ctype": ">=1.27.0", + "symfony/polyfill-mbstring": ">=1.27.0", + "symfony/polyfill-php73": ">=1.27.0", + "symfony/polyfill-php80": ">=1.27.0", + "symfony/polyfill-php81": ">=1.27.0", "symfony/yaml": ">=4.4" }, "suggest": { - "jbzoo/utils": ">=4.2.2", + "jbzoo/utils": ">=7.0", "symfony/yaml": ">=4.4" }, + "default-branch": true, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.x-dev" + "dev-master": "7.x-dev" } }, "autoload": { @@ -203,35 +205,36 @@ ], "support": { "issues": "https://github.com/JBZoo/Data/issues", - "source": "https://github.com/JBZoo/Data/tree/5.0.0" + "source": "https://github.com/JBZoo/Data/tree/master" }, - "time": "2022-06-05T15:19:17+00:00" + "time": "2023-03-17T23:23:46+00:00" }, { "name": "jbzoo/event", - "version": "4.0.1", + "version": "dev-master", "source": { "type": "git", "url": "https://github.com/JBZoo/Event.git", - "reference": "637888b6c4f25d2173668a17ffcabfbc88b8ca17" + "reference": "569da2562733f81ccebda527a563c66bf49f03af" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/JBZoo/Event/zipball/637888b6c4f25d2173668a17ffcabfbc88b8ca17", - "reference": "637888b6c4f25d2173668a17ffcabfbc88b8ca17", + "url": "https://api.github.com/repos/JBZoo/Event/zipball/569da2562733f81ccebda527a563c66bf49f03af", + "reference": "569da2562733f81ccebda527a563c66bf49f03af", "shasum": "" }, "require": { - "php": ">=7.4" + "php": "^8.1" }, "require-dev": { - "jbzoo/toolbox-dev": "^4.0.1", - "jbzoo/utils": ">=4.5.5" + "jbzoo/data": "7.x-dev", + "jbzoo/toolbox-dev": "7.x-dev" }, + "default-branch": true, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.x-dev" + "dev-master": "7.x-dev" } }, "autoload": { @@ -270,35 +273,36 @@ ], "support": { "issues": "https://github.com/JBZoo/Event/issues", - "source": "https://github.com/JBZoo/Event/tree/4.0.1" + "source": "https://github.com/JBZoo/Event/tree/master" }, - "time": "2022-06-10T20:13:46+00:00" + "time": "2023-03-09T09:43:17+00:00" }, { "name": "jbzoo/markdown", - "version": "1.2.0", + "version": "dev-master", "source": { "type": "git", "url": "https://github.com/JBZoo/Markdown.git", - "reference": "7c2ffb80a031d002c6765fa30a54f23a8f47c76d" + "reference": "c16ae3a10328758a7f8f32fce25c6c2d34c376e9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/JBZoo/Markdown/zipball/7c2ffb80a031d002c6765fa30a54f23a8f47c76d", - "reference": "7c2ffb80a031d002c6765fa30a54f23a8f47c76d", + "url": "https://api.github.com/repos/JBZoo/Markdown/zipball/c16ae3a10328758a7f8f32fce25c6c2d34c376e9", + "reference": "c16ae3a10328758a7f8f32fce25c6c2d34c376e9", "shasum": "" }, "require": { - "jbzoo/utils": "^4.5|^5.0", - "php": ">=7.4" + "jbzoo/utils": "7.x-dev", + "php": "^8.1" }, "require-dev": { - "jbzoo/toolbox-dev": "^4.0.1" + "jbzoo/toolbox-dev": "7.x-dev" }, + "default-branch": true, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.x-dev" + "dev-master": "7.x-dev" } }, "autoload": { @@ -327,46 +331,48 @@ ], "support": { "issues": "https://github.com/JBZoo/Markdown/issues", - "source": "https://github.com/JBZoo/Markdown/tree/1.2.0" + "source": "https://github.com/JBZoo/Markdown/tree/master" }, - "time": "2022-06-05T22:28:32+00:00" + "time": "2023-03-12T23:58:55+00:00" }, { "name": "jbzoo/utils", - "version": "5.0.0", + "version": "dev-master", "source": { "type": "git", "url": "https://github.com/JBZoo/Utils.git", - "reference": "8959733cad5fa20681ff0e58a4581d34fb12aae8" + "reference": "a4001fcdd0943a88922e729c2739d653952f1175" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/JBZoo/Utils/zipball/8959733cad5fa20681ff0e58a4581d34fb12aae8", - "reference": "8959733cad5fa20681ff0e58a4581d34fb12aae8", + "url": "https://api.github.com/repos/JBZoo/Utils/zipball/a4001fcdd0943a88922e729c2739d653952f1175", + "reference": "a4001fcdd0943a88922e729c2739d653952f1175", "shasum": "" }, "require": { "ext-dom": "*", "ext-filter": "*", + "ext-gd": "*", "ext-posix": "*", - "php": ">=7.4" + "php": "^8.1" }, "require-dev": { - "jbzoo/toolbox-dev": "^4.0.1", - "symfony/process": ">=4.4,<6.0" + "jbzoo/data": "7.x-dev", + "jbzoo/toolbox-dev": "7.x-dev", + "symfony/process": ">=4.4" }, "suggest": { - "ext-gd": "To use Image helper", "ext-intl": "*", "ext-mbstring": "Provides multibyte specific string functions", "jbzoo/data": ">=4.0", "symfony/polyfill-mbstring": "For UTF-8 if ext-mbstring disabled", "symfony/process": "For Cli::exec() method only" }, + "default-branch": true, "type": "library", "extra": { "branch-alias": { - "dev-master": "4.x-dev" + "dev-master": "7.x-dev" } }, "autoload": { @@ -425,9 +431,9 @@ ], "support": { "issues": "https://github.com/JBZoo/Utils/issues", - "source": "https://github.com/JBZoo/Utils/tree/5.0.0" + "source": "https://github.com/JBZoo/Utils/tree/master" }, - "time": "2022-06-05T17:11:24+00:00" + "time": "2023-03-18T21:44:41+00:00" }, { "name": "psr/container", @@ -534,46 +540,43 @@ }, { "name": "symfony/console", - "version": "v5.4.19", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "dccb8d251a9017d5994c988b034d3e18aaabf740" + "reference": "cbad09eb8925b6ad4fb721c7a179344dc4a19d45" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/dccb8d251a9017d5994c988b034d3e18aaabf740", - "reference": "dccb8d251a9017d5994c988b034d3e18aaabf740", + "url": "https://api.github.com/repos/symfony/console/zipball/cbad09eb8925b6ad4fb721c7a179344dc4a19d45", + "reference": "cbad09eb8925b6ad4fb721c7a179344dc4a19d45", "shasum": "" }, "require": { - "php": ">=7.2.5", + "php": ">=8.1", "symfony/deprecation-contracts": "^2.1|^3", "symfony/polyfill-mbstring": "~1.0", - "symfony/polyfill-php73": "^1.9", - "symfony/polyfill-php80": "^1.16", "symfony/service-contracts": "^1.1|^2|^3", - "symfony/string": "^5.1|^6.0" + "symfony/string": "^5.4|^6.0" }, "conflict": { - "psr/log": ">=3", - "symfony/dependency-injection": "<4.4", - "symfony/dotenv": "<5.1", - "symfony/event-dispatcher": "<4.4", - "symfony/lock": "<4.4", - "symfony/process": "<4.4" + "symfony/dependency-injection": "<5.4", + "symfony/dotenv": "<5.4", + "symfony/event-dispatcher": "<5.4", + "symfony/lock": "<5.4", + "symfony/process": "<5.4" }, "provide": { - "psr/log-implementation": "1.0|2.0" + "psr/log-implementation": "1.0|2.0|3.0" }, "require-dev": { - "psr/log": "^1|^2", - "symfony/config": "^4.4|^5.0|^6.0", - "symfony/dependency-injection": "^4.4|^5.0|^6.0", - "symfony/event-dispatcher": "^4.4|^5.0|^6.0", - "symfony/lock": "^4.4|^5.0|^6.0", - "symfony/process": "^4.4|^5.0|^6.0", - "symfony/var-dumper": "^4.4|^5.0|^6.0" + "psr/log": "^1|^2|^3", + "symfony/config": "^5.4|^6.0", + "symfony/dependency-injection": "^5.4|^6.0", + "symfony/event-dispatcher": "^5.4|^6.0", + "symfony/lock": "^5.4|^6.0", + "symfony/process": "^5.4|^6.0", + "symfony/var-dumper": "^5.4|^6.0" }, "suggest": { "psr/log": "For using the console logger", @@ -613,7 +616,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v5.4.19" + "source": "https://github.com/symfony/console/tree/v6.2.7" }, "funding": [ { @@ -629,20 +632,20 @@ "type": "tidelift" } ], - "time": "2023-01-01T08:32:19+00:00" + "time": "2023-02-25T17:00:03+00:00" }, { "name": "symfony/deprecation-contracts", - "version": "v3.2.0", + "version": "v3.2.1", "source": { "type": "git", "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "1ee04c65529dea5d8744774d474e7cbd2f1206d3" + "reference": "e2d1534420bd723d0ef5aec58a22c5fe60ce6f5e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/1ee04c65529dea5d8744774d474e7cbd2f1206d3", - "reference": "1ee04c65529dea5d8744774d474e7cbd2f1206d3", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/e2d1534420bd723d0ef5aec58a22c5fe60ce6f5e", + "reference": "e2d1534420bd723d0ef5aec58a22c5fe60ce6f5e", "shasum": "" }, "require": { @@ -680,7 +683,7 @@ "description": "A generic function and convention to trigger deprecation notices", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/deprecation-contracts/tree/v3.2.0" + "source": "https://github.com/symfony/deprecation-contracts/tree/v3.2.1" }, "funding": [ { @@ -696,20 +699,20 @@ "type": "tidelift" } ], - "time": "2022-11-25T10:21:52+00:00" + "time": "2023-03-01T10:25:55+00:00" }, { "name": "symfony/lock", - "version": "v6.2.5", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/symfony/lock.git", - "reference": "39ccc73e575f20d4d10b24ad366aa1a7a6d7447d" + "reference": "febdeed9473e568ff34bf4350c04760f5357dfe2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/lock/zipball/39ccc73e575f20d4d10b24ad366aa1a7a6d7447d", - "reference": "39ccc73e575f20d4d10b24ad366aa1a7a6d7447d", + "url": "https://api.github.com/repos/symfony/lock/zipball/febdeed9473e568ff34bf4350c04760f5357dfe2", + "reference": "febdeed9473e568ff34bf4350c04760f5357dfe2", "shasum": "" }, "require": { @@ -758,7 +761,7 @@ "semaphore" ], "support": { - "source": "https://github.com/symfony/lock/tree/v6.2.5" + "source": "https://github.com/symfony/lock/tree/v6.2.7" }, "funding": [ { @@ -774,7 +777,7 @@ "type": "tidelift" } ], - "time": "2023-01-01T08:38:09+00:00" + "time": "2023-02-24T10:42:00+00:00" }, { "name": "symfony/polyfill-ctype", @@ -1106,185 +1109,22 @@ ], "time": "2022-11-03T14:55:06+00:00" }, - { - "name": "symfony/polyfill-php73", - "version": "v1.27.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php73.git", - "reference": "9e8ecb5f92152187c4799efd3c96b78ccab18ff9" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/9e8ecb5f92152187c4799efd3c96b78ccab18ff9", - "reference": "9e8ecb5f92152187c4799efd3c96b78ccab18ff9", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.27-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Php73\\": "" - }, - "classmap": [ - "Resources/stubs" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill backporting some PHP 7.3+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-php73/tree/v1.27.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-11-03T14:55:06+00:00" - }, - { - "name": "symfony/polyfill-php80", - "version": "v1.27.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php80.git", - "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", - "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.27-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Php80\\": "" - }, - "classmap": [ - "Resources/stubs" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Ion Bazan", - "email": "ion.bazan@gmail.com" - }, - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-php80/tree/v1.27.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-11-03T14:55:06+00:00" - }, { "name": "symfony/process", - "version": "v5.4.19", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "c5ba874c9b636dbccf761e22ce750e88ec3f55e1" + "reference": "680e8a2ea6b3f87aecc07a6a65a203ae573d1902" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/c5ba874c9b636dbccf761e22ce750e88ec3f55e1", - "reference": "c5ba874c9b636dbccf761e22ce750e88ec3f55e1", + "url": "https://api.github.com/repos/symfony/process/zipball/680e8a2ea6b3f87aecc07a6a65a203ae573d1902", + "reference": "680e8a2ea6b3f87aecc07a6a65a203ae573d1902", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/polyfill-php80": "^1.16" + "php": ">=8.1" }, "type": "library", "autoload": { @@ -1312,7 +1152,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v5.4.19" + "source": "https://github.com/symfony/process/tree/v6.2.7" }, "funding": [ { @@ -1328,20 +1168,20 @@ "type": "tidelift" } ], - "time": "2023-01-01T08:32:19+00:00" + "time": "2023-02-24T10:42:00+00:00" }, { "name": "symfony/service-contracts", - "version": "v3.2.0", + "version": "v3.2.1", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "aac98028c69df04ee77eb69b96b86ee51fbf4b75" + "reference": "a8c9cedf55f314f3a186041d19537303766df09a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/aac98028c69df04ee77eb69b96b86ee51fbf4b75", - "reference": "aac98028c69df04ee77eb69b96b86ee51fbf4b75", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/a8c9cedf55f314f3a186041d19537303766df09a", + "reference": "a8c9cedf55f314f3a186041d19537303766df09a", "shasum": "" }, "require": { @@ -1397,7 +1237,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/service-contracts/tree/v3.2.0" + "source": "https://github.com/symfony/service-contracts/tree/v3.2.1" }, "funding": [ { @@ -1413,20 +1253,20 @@ "type": "tidelift" } ], - "time": "2022-11-25T10:21:52+00:00" + "time": "2023-03-01T10:32:47+00:00" }, { "name": "symfony/string", - "version": "v6.2.5", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "b2dac0fa27b1ac0f9c0c0b23b43977f12308d0b0" + "reference": "67b8c1eec78296b85dc1c7d9743830160218993d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/b2dac0fa27b1ac0f9c0c0b23b43977f12308d0b0", - "reference": "b2dac0fa27b1ac0f9c0c0b23b43977f12308d0b0", + "url": "https://api.github.com/repos/symfony/string/zipball/67b8c1eec78296b85dc1c7d9743830160218993d", + "reference": "67b8c1eec78296b85dc1c7d9743830160218993d", "shasum": "" }, "require": { @@ -1483,7 +1323,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v6.2.5" + "source": "https://github.com/symfony/string/tree/v6.2.7" }, "funding": [ { @@ -1499,59 +1339,10 @@ "type": "tidelift" } ], - "time": "2023-01-01T08:38:09+00:00" + "time": "2023-02-24T10:42:00+00:00" } ], "packages-dev": [ - { - "name": "2bj/phanybar", - "version": "v1.0.0", - "source": { - "type": "git", - "url": "https://github.com/2bj/Phanybar.git", - "reference": "88ff671e18f30c2047a34f8cf2465a7ff93c819b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/2bj/Phanybar/zipball/88ff671e18f30c2047a34f8cf2465a7ff93c819b", - "reference": "88ff671e18f30c2047a34f8cf2465a7ff93c819b", - "shasum": "" - }, - "require": { - "php": ">=5.3.0" - }, - "bin": [ - "bin/phanybar" - ], - "type": "library", - "autoload": { - "psr-4": { - "Bakyt\\": [ - "src/" - ] - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Bakyt Turgumbaev", - "email": "dev2bj@gmail.com" - } - ], - "description": "Control AnyBar from your php", - "keywords": [ - "anybar", - "phanybar" - ], - "support": { - "issues": "https://github.com/2bj/Phanybar/issues", - "source": "https://github.com/2bj/Phanybar/tree/master" - }, - "time": "2015-03-06T12:14:28+00:00" - }, { "name": "amphp/amp", "version": "v2.6.2", @@ -1719,26 +1510,36 @@ "time": "2021-03-30T17:13:30+00:00" }, { - "name": "codedungeon/php-cli-colors", - "version": "1.12.2", + "name": "composer/pcre", + "version": "3.1.0", "source": { "type": "git", - "url": "https://github.com/mikeerickson/php-cli-colors.git", - "reference": "e346156f75717140a3dd622124d2ec686aa7ff8e" + "url": "https://github.com/composer/pcre.git", + "reference": "4bff79ddd77851fe3cdd11616ed3f92841ba5bd2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/mikeerickson/php-cli-colors/zipball/e346156f75717140a3dd622124d2ec686aa7ff8e", - "reference": "e346156f75717140a3dd622124d2ec686aa7ff8e", + "url": "https://api.github.com/repos/composer/pcre/zipball/4bff79ddd77851fe3cdd11616ed3f92841ba5bd2", + "reference": "4bff79ddd77851fe3cdd11616ed3f92841ba5bd2", "shasum": "" }, + "require": { + "php": "^7.4 || ^8.0" + }, "require-dev": { - "phpunit/phpunit": ">=5.2" + "phpstan/phpstan": "^1.3", + "phpstan/phpstan-strict-rules": "^1.1", + "symfony/phpunit-bridge": "^5" }, "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.x-dev" + } + }, "autoload": { "psr-4": { - "Codedungeon\\PHPCliColors\\": "src/" + "Composer\\Pcre\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -1747,242 +1548,45 @@ ], "authors": [ { - "name": "Mike Erickson", - "email": "codedungeon@gmail.com" + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be", + "homepage": "http://seld.be" } ], - "description": "Liven up you PHP Console Apps with standard colors", - "homepage": "https://github.com/mikeerickson/php-cli-colors", + "description": "PCRE wrapping library that offers type-safe preg_* replacements.", "keywords": [ - "color", - "colors", - "composer", - "package", - "php" + "PCRE", + "preg", + "regex", + "regular expression" ], "support": { - "issues": "https://github.com/mikeerickson/php-cli-colors/issues", - "source": "https://github.com/mikeerickson/php-cli-colors/tree/1.12.2" + "issues": "https://github.com/composer/pcre/issues", + "source": "https://github.com/composer/pcre/tree/3.1.0" }, - "time": "2021-01-05T04:48:27+00:00" + "funding": [ + { + "url": "https://packagist.com", + "type": "custom" + }, + { + "url": "https://github.com/composer", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/composer/composer", + "type": "tidelift" + } + ], + "time": "2022-11-17T09:50:14+00:00" }, { - "name": "codedungeon/phpunit-result-printer", - "version": "0.32.0", + "name": "composer/semver", + "version": "3.3.2", "source": { "type": "git", - "url": "https://github.com/mikeerickson/phpunit-pretty-result-printer.git", - "reference": "102d1c145d1b3ac80a797ad9495937a332fb820c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/mikeerickson/phpunit-pretty-result-printer/zipball/102d1c145d1b3ac80a797ad9495937a332fb820c", - "reference": "102d1c145d1b3ac80a797ad9495937a332fb820c", - "shasum": "" - }, - "require": { - "2bj/phanybar": "^1.0", - "codedungeon/php-cli-colors": "^1.10.2", - "hassankhan/config": "^0.11.2|^1.0|^2.0|^3.0", - "php": "^7.1 | ^8.0", - "symfony/yaml": "^2.7|^3.0|^4.0|^5.0" - }, - "require-dev": { - "spatie/phpunit-watcher": "^1.6" - }, - "type": "library", - "autoload": { - "psr-4": { - "Codedungeon\\PHPUnitPrettyResultPrinter\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Mike Erickson", - "email": "codedungeon@gmail.com" - } - ], - "description": "PHPUnit Pretty Result Printer", - "keywords": [ - "TDD", - "composer", - "package", - "phpunit", - "printer", - "result-printer", - "testing" - ], - "support": { - "issues": "https://github.com/mikeerickson/phpunit-pretty-result-printer/issues", - "source": "https://github.com/mikeerickson/phpunit-pretty-result-printer/tree/0.32.0" - }, - "funding": [ - { - "url": "https://github.com/feross", - "type": "github" - }, - { - "url": "https://github.com/standard", - "type": "github" - } - ], - "time": "2022-02-25T16:52:26+00:00" - }, - { - "name": "composer/package-versions-deprecated", - "version": "1.11.99.5", - "source": { - "type": "git", - "url": "https://github.com/composer/package-versions-deprecated.git", - "reference": "b4f54f74ef3453349c24a845d22392cd31e65f1d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/composer/package-versions-deprecated/zipball/b4f54f74ef3453349c24a845d22392cd31e65f1d", - "reference": "b4f54f74ef3453349c24a845d22392cd31e65f1d", - "shasum": "" - }, - "require": { - "composer-plugin-api": "^1.1.0 || ^2.0", - "php": "^7 || ^8" - }, - "replace": { - "ocramius/package-versions": "1.11.99" - }, - "require-dev": { - "composer/composer": "^1.9.3 || ^2.0@dev", - "ext-zip": "^1.13", - "phpunit/phpunit": "^6.5 || ^7" - }, - "type": "composer-plugin", - "extra": { - "class": "PackageVersions\\Installer", - "branch-alias": { - "dev-master": "1.x-dev" - } - }, - "autoload": { - "psr-4": { - "PackageVersions\\": "src/PackageVersions" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Marco Pivetta", - "email": "ocramius@gmail.com" - }, - { - "name": "Jordi Boggiano", - "email": "j.boggiano@seld.be" - } - ], - "description": "Composer plugin that provides efficient querying for installed package versions (no runtime IO)", - "support": { - "issues": "https://github.com/composer/package-versions-deprecated/issues", - "source": "https://github.com/composer/package-versions-deprecated/tree/1.11.99.5" - }, - "funding": [ - { - "url": "https://packagist.com", - "type": "custom" - }, - { - "url": "https://github.com/composer", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/composer/composer", - "type": "tidelift" - } - ], - "time": "2022-01-17T14:14:24+00:00" - }, - { - "name": "composer/pcre", - "version": "3.1.0", - "source": { - "type": "git", - "url": "https://github.com/composer/pcre.git", - "reference": "4bff79ddd77851fe3cdd11616ed3f92841ba5bd2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/composer/pcre/zipball/4bff79ddd77851fe3cdd11616ed3f92841ba5bd2", - "reference": "4bff79ddd77851fe3cdd11616ed3f92841ba5bd2", - "shasum": "" - }, - "require": { - "php": "^7.4 || ^8.0" - }, - "require-dev": { - "phpstan/phpstan": "^1.3", - "phpstan/phpstan-strict-rules": "^1.1", - "symfony/phpunit-bridge": "^5" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "3.x-dev" - } - }, - "autoload": { - "psr-4": { - "Composer\\Pcre\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jordi Boggiano", - "email": "j.boggiano@seld.be", - "homepage": "http://seld.be" - } - ], - "description": "PCRE wrapping library that offers type-safe preg_* replacements.", - "keywords": [ - "PCRE", - "preg", - "regex", - "regular expression" - ], - "support": { - "issues": "https://github.com/composer/pcre/issues", - "source": "https://github.com/composer/pcre/tree/3.1.0" - }, - "funding": [ - { - "url": "https://packagist.com", - "type": "custom" - }, - { - "url": "https://github.com/composer", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/composer/composer", - "type": "tidelift" - } - ], - "time": "2022-11-17T09:50:14+00:00" - }, - { - "name": "composer/semver", - "version": "3.3.2", - "source": { - "type": "git", - "url": "https://github.com/composer/semver.git", - "reference": "3953f23262f2bff1919fc82183ad9acb13ff62c9" + "url": "https://github.com/composer/semver.git", + "reference": "3953f23262f2bff1919fc82183ad9acb13ff62c9" }, "dist": { "type": "zip", @@ -2160,6 +1764,125 @@ }, "time": "2019-12-04T15:06:13+00:00" }, + { + "name": "doctrine/annotations", + "version": "2.0.1", + "source": { + "type": "git", + "url": "https://github.com/doctrine/annotations.git", + "reference": "e157ef3f3124bbf6fe7ce0ffd109e8a8ef284e7f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/annotations/zipball/e157ef3f3124bbf6fe7ce0ffd109e8a8ef284e7f", + "reference": "e157ef3f3124bbf6fe7ce0ffd109e8a8ef284e7f", + "shasum": "" + }, + "require": { + "doctrine/lexer": "^2 || ^3", + "ext-tokenizer": "*", + "php": "^7.2 || ^8.0", + "psr/cache": "^1 || ^2 || ^3" + }, + "require-dev": { + "doctrine/cache": "^2.0", + "doctrine/coding-standard": "^10", + "phpstan/phpstan": "^1.8.0", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", + "symfony/cache": "^5.4 || ^6", + "vimeo/psalm": "^4.10" + }, + "suggest": { + "php": "PHP 8.0 or higher comes with attributes, a native replacement for annotations" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Common\\Annotations\\": "lib/Doctrine/Common/Annotations" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "Docblock Annotations Parser", + "homepage": "https://www.doctrine-project.org/projects/annotations.html", + "keywords": [ + "annotations", + "docblock", + "parser" + ], + "support": { + "issues": "https://github.com/doctrine/annotations/issues", + "source": "https://github.com/doctrine/annotations/tree/2.0.1" + }, + "time": "2023-02-02T22:02:53+00:00" + }, + { + "name": "doctrine/deprecations", + "version": "v1.0.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/deprecations.git", + "reference": "0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/deprecations/zipball/0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de", + "reference": "0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de", + "shasum": "" + }, + "require": { + "php": "^7.1|^8.0" + }, + "require-dev": { + "doctrine/coding-standard": "^9", + "phpunit/phpunit": "^7.5|^8.5|^9.5", + "psr/log": "^1|^2|^3" + }, + "suggest": { + "psr/log": "Allows logging deprecations via PSR-3 logger implementation" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Deprecations\\": "lib/Doctrine/Deprecations" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "A small layer on top of trigger_error(E_USER_DEPRECATED) or PSR-3 logging with options to disable all deprecations or selectively for packages.", + "homepage": "https://www.doctrine-project.org/", + "support": { + "issues": "https://github.com/doctrine/deprecations/issues", + "source": "https://github.com/doctrine/deprecations/tree/v1.0.0" + }, + "time": "2022-05-02T15:47:09+00:00" + }, { "name": "doctrine/instantiator", "version": "2.0.0", @@ -2231,33 +1954,110 @@ "time": "2022-12-30T00:23:10+00:00" }, { - "name": "fakerphp/faker", - "version": "v1.21.0", + "name": "doctrine/lexer", + "version": "3.0.0", "source": { "type": "git", - "url": "https://github.com/FakerPHP/Faker.git", - "reference": "92efad6a967f0b79c499705c69b662f738cc9e4d" + "url": "https://github.com/doctrine/lexer.git", + "reference": "84a527db05647743d50373e0ec53a152f2cde568" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/FakerPHP/Faker/zipball/92efad6a967f0b79c499705c69b662f738cc9e4d", - "reference": "92efad6a967f0b79c499705c69b662f738cc9e4d", + "url": "https://api.github.com/repos/doctrine/lexer/zipball/84a527db05647743d50373e0ec53a152f2cde568", + "reference": "84a527db05647743d50373e0ec53a152f2cde568", "shasum": "" }, "require": { - "php": "^7.4 || ^8.0", - "psr/container": "^1.0 || ^2.0", - "symfony/deprecation-contracts": "^2.2 || ^3.0" - }, - "conflict": { - "fzaninotto/faker": "*" + "php": "^8.1" }, "require-dev": { - "bamarni/composer-bin-plugin": "^1.4.1", - "doctrine/persistence": "^1.3 || ^2.0", - "ext-intl": "*", - "phpunit/phpunit": "^9.5.26", - "symfony/phpunit-bridge": "^5.4.16" + "doctrine/coding-standard": "^10", + "phpstan/phpstan": "^1.9", + "phpunit/phpunit": "^9.5", + "psalm/plugin-phpunit": "^0.18.3", + "vimeo/psalm": "^5.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Common\\Lexer\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "PHP Doctrine Lexer parser library that can be used in Top-Down, Recursive Descent Parsers.", + "homepage": "https://www.doctrine-project.org/projects/lexer.html", + "keywords": [ + "annotations", + "docblock", + "lexer", + "parser", + "php" + ], + "support": { + "issues": "https://github.com/doctrine/lexer/issues", + "source": "https://github.com/doctrine/lexer/tree/3.0.0" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Flexer", + "type": "tidelift" + } + ], + "time": "2022-12-15T16:57:16+00:00" + }, + { + "name": "fakerphp/faker", + "version": "v1.21.0", + "source": { + "type": "git", + "url": "https://github.com/FakerPHP/Faker.git", + "reference": "92efad6a967f0b79c499705c69b662f738cc9e4d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/FakerPHP/Faker/zipball/92efad6a967f0b79c499705c69b662f738cc9e4d", + "reference": "92efad6a967f0b79c499705c69b662f738cc9e4d", + "shasum": "" + }, + "require": { + "php": "^7.4 || ^8.0", + "psr/container": "^1.0 || ^2.0", + "symfony/deprecation-contracts": "^2.2 || ^3.0" + }, + "conflict": { + "fzaninotto/faker": "*" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.4.1", + "doctrine/persistence": "^1.3 || ^2.0", + "ext-intl": "*", + "phpunit/phpunit": "^9.5.26", + "symfony/phpunit-bridge": "^5.4.16" }, "suggest": { "doctrine/orm": "Required to use Faker\\ORM\\Doctrine", @@ -2401,16 +2201,16 @@ }, { "name": "fidry/cpu-core-counter", - "version": "0.4.1", + "version": "0.5.1", "source": { "type": "git", "url": "https://github.com/theofidry/cpu-core-counter.git", - "reference": "79261cc280aded96d098e1b0e0ba0c4881b432c2" + "reference": "b58e5a3933e541dc286cc91fc4f3898bbc6f1623" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/theofidry/cpu-core-counter/zipball/79261cc280aded96d098e1b0e0ba0c4881b432c2", - "reference": "79261cc280aded96d098e1b0e0ba0c4881b432c2", + "url": "https://api.github.com/repos/theofidry/cpu-core-counter/zipball/b58e5a3933e541dc286cc91fc4f3898bbc6f1623", + "reference": "b58e5a3933e541dc286cc91fc4f3898bbc6f1623", "shasum": "" }, "require": { @@ -2450,7 +2250,7 @@ ], "support": { "issues": "https://github.com/theofidry/cpu-core-counter/issues", - "source": "https://github.com/theofidry/cpu-core-counter/tree/0.4.1" + "source": "https://github.com/theofidry/cpu-core-counter/tree/0.5.1" }, "funding": [ { @@ -2458,7 +2258,103 @@ "type": "github" } ], - "time": "2022-12-16T22:01:02+00:00" + "time": "2022-12-24T12:35:10+00:00" + }, + { + "name": "friendsofphp/php-cs-fixer", + "version": "v3.15.1", + "source": { + "type": "git", + "url": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer.git", + "reference": "d48755372a113bddb99f749e34805d83f3acfe04" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/d48755372a113bddb99f749e34805d83f3acfe04", + "reference": "d48755372a113bddb99f749e34805d83f3acfe04", + "shasum": "" + }, + "require": { + "composer/semver": "^3.3", + "composer/xdebug-handler": "^3.0.3", + "doctrine/annotations": "^2", + "doctrine/lexer": "^2 || ^3", + "ext-json": "*", + "ext-tokenizer": "*", + "php": "^7.4 || ^8.0", + "sebastian/diff": "^4.0 || ^5.0", + "symfony/console": "^5.4 || ^6.0", + "symfony/event-dispatcher": "^5.4 || ^6.0", + "symfony/filesystem": "^5.4 || ^6.0", + "symfony/finder": "^5.4 || ^6.0", + "symfony/options-resolver": "^5.4 || ^6.0", + "symfony/polyfill-mbstring": "^1.27", + "symfony/polyfill-php80": "^1.27", + "symfony/polyfill-php81": "^1.27", + "symfony/process": "^5.4 || ^6.0", + "symfony/stopwatch": "^5.4 || ^6.0" + }, + "require-dev": { + "justinrainbow/json-schema": "^5.2", + "keradus/cli-executor": "^2.0", + "mikey179/vfsstream": "^1.6.11", + "php-coveralls/php-coveralls": "^2.5.3", + "php-cs-fixer/accessible-object": "^1.1", + "php-cs-fixer/phpunit-constraint-isidenticalstring": "^1.2", + "php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "^1.2.1", + "phpspec/prophecy": "^1.16", + "phpspec/prophecy-phpunit": "^2.0", + "phpunit/phpunit": "^9.5", + "phpunitgoodpractices/polyfill": "^1.6", + "phpunitgoodpractices/traits": "^1.9.2", + "symfony/phpunit-bridge": "^6.2.3", + "symfony/yaml": "^5.4 || ^6.0" + }, + "suggest": { + "ext-dom": "For handling output formats in XML", + "ext-mbstring": "For handling non-UTF8 characters." + }, + "bin": [ + "php-cs-fixer" + ], + "type": "application", + "autoload": { + "psr-4": { + "PhpCsFixer\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Dariusz Rumiล„ski", + "email": "dariusz.ruminski@gmail.com" + } + ], + "description": "A tool to automatically fix PHP code style", + "keywords": [ + "Static code analysis", + "fixer", + "standards", + "static analysis" + ], + "support": { + "issues": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues", + "source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.15.1" + }, + "funding": [ + { + "url": "https://github.com/keradus", + "type": "github" + } + ], + "time": "2023-03-13T23:26:30+00:00" }, { "name": "guzzlehttp/guzzle", @@ -2674,16 +2570,16 @@ }, { "name": "guzzlehttp/psr7", - "version": "2.4.3", + "version": "2.4.4", "source": { "type": "git", "url": "https://github.com/guzzle/psr7.git", - "reference": "67c26b443f348a51926030c83481b85718457d3d" + "reference": "3cf1b6d4f0c820a2cf8bcaec39fc698f3443b5cf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/67c26b443f348a51926030c83481b85718457d3d", - "reference": "67c26b443f348a51926030c83481b85718457d3d", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/3cf1b6d4f0c820a2cf8bcaec39fc698f3443b5cf", + "reference": "3cf1b6d4f0c820a2cf8bcaec39fc698f3443b5cf", "shasum": "" }, "require": { @@ -2773,7 +2669,7 @@ ], "support": { "issues": "https://github.com/guzzle/psr7/issues", - "source": "https://github.com/guzzle/psr7/tree/2.4.3" + "source": "https://github.com/guzzle/psr7/tree/2.4.4" }, "funding": [ { @@ -2789,165 +2685,202 @@ "type": "tidelift" } ], - "time": "2022-10-26T14:07:24+00:00" + "time": "2023-03-09T13:19:02+00:00" }, { - "name": "hanneskod/classtools", - "version": "1.2.1", + "name": "jbzoo/codestyle", + "version": "dev-master", "source": { "type": "git", - "url": "https://github.com/hanneskod/classtools.git", - "reference": "d365ddac0e602027c0471ea292f4ba2afcb49394" + "url": "https://github.com/JBZoo/Codestyle.git", + "reference": "4c9d0f3e96c3a0eca8fd5505470f0dfcbd2bab3c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/hanneskod/classtools/zipball/d365ddac0e602027c0471ea292f4ba2afcb49394", - "reference": "d365ddac0e602027c0471ea292f4ba2afcb49394", + "url": "https://api.github.com/repos/JBZoo/Codestyle/zipball/4c9d0f3e96c3a0eca8fd5505470f0dfcbd2bab3c", + "reference": "4c9d0f3e96c3a0eca8fd5505470f0dfcbd2bab3c", "shasum": "" }, "require": { - "nikic/php-parser": "^4", - "php": ">=7.1", - "symfony/finder": "^4|^5" + "friendsofphp/php-cs-fixer": ">=3.15.1", + "jbzoo/data": "7.x-dev", + "kubawerlos/php-cs-fixer-custom-fixers": ">=3.13.0", + "nikic/php-parser": ">=4.15.3", + "pdepend/pdepend": ">=2.13.0", + "phan/phan": ">=5.4.2", + "php": "^8.1", + "phpmd/phpmd": ">=2.13.0", + "phpmetrics/phpmetrics": ">=2.8.2", + "phpstan/phpstan": ">=1.10.6", + "phpstan/phpstan-strict-rules": ">=1.5.0", + "povils/phpmnd": ">=3.0.1", + "squizlabs/php_codesniffer": ">=3.7.2", + "symfony/console": ">=4.4.16", + "symfony/finder": ">=4.4.16", + "symfony/yaml": ">=4.4.16", + "vimeo/psalm": ">=5.8.0" + }, + "require-dev": { + "jbzoo/phpunit": "7.x-dev", + "jbzoo/utils": "7.x-dev", + "symfony/var-dumper": ">=4.4.16" }, + "default-branch": true, "type": "library", + "extra": { + "branch-alias": { + "dev-master": "7.x-dev" + } + }, "autoload": { + "files": [ + "src/compatibility.php" + ], "psr-4": { - "hanneskod\\classtools\\": "src/" + "JBZoo\\Codestyle\\": "src" } }, "notification-url": "https://packagist.org/downloads/", "license": [ - "WTFPL" + "MIT" ], "authors": [ { - "name": "Hannes Forsgรฅrd", - "email": "hannes.forsgard@fripost.org" + "name": "Denis Smetannikov", + "email": "admin@jbzoo.com", + "role": "lead" } ], - "description": "Find, extract and process classes from file system", - "homepage": "https://github.com/hanneskod/classtools", + "description": "Collection of QA tools and JBZoo code standards", "keywords": [ - "class finder", - "code generator", - "metaprogramming", - "minimizer" + "Codestyle", + "PHPStan", + "coding-standard", + "jbzoo", + "phan", + "php", + "php-cs-fixer", + "phpcompatibility", + "phpcs", + "phpmd", + "phpmetrics", + "phpunit", + "psalm", + "qa", + "tests" ], "support": { - "issues": "https://github.com/hanneskod/classtools/issues", - "source": "https://github.com/hanneskod/classtools/tree/1.0" + "issues": "https://github.com/JBZoo/Codestyle/issues", + "source": "https://github.com/JBZoo/Codestyle/tree/master" }, - "time": "2020-03-05T20:41:28+00:00" + "time": "2023-03-25T22:12:04+00:00" }, { - "name": "hassankhan/config", - "version": "3.1.0", + "name": "jbzoo/jbdump", + "version": "1.5.6", "source": { "type": "git", - "url": "https://github.com/hassankhan/config.git", - "reference": "8e1c07f4fdc2b986b8a781f0dcba155af2a579b6" + "url": "https://github.com/JBZoo/JBDump.git", + "reference": "044e1f9f648d2467d9161732f1195a44d452ca50" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/hassankhan/config/zipball/8e1c07f4fdc2b986b8a781f0dcba155af2a579b6", - "reference": "8e1c07f4fdc2b986b8a781f0dcba155af2a579b6", + "url": "https://api.github.com/repos/JBZoo/JBDump/zipball/044e1f9f648d2467d9161732f1195a44d452ca50", + "reference": "044e1f9f648d2467d9161732f1195a44d452ca50", "shasum": "" }, "require": { - "php": ">=7.4" - }, - "require-dev": { - "phpunit/phpunit": "^9.5", - "scrutinizer/ocular": "^1.9", - "squizlabs/php_codesniffer": "^3.6", - "symfony/yaml": "^5.4" + "php": ">=5.3.10" }, - "suggest": { - "symfony/yaml": "^5.4" + "replace": { + "smetdenis/jbdump": "*" }, "type": "library", - "autoload": { - "psr-4": { - "Noodlehaus\\": "src" + "extra": { + "branch-alias": { + "dev-master": "1.x-dev" } }, + "autoload": { + "files": [ + "autoload.php" + ] + }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], "authors": [ { - "name": "Hassan Khan", - "homepage": "http://hassankhan.me/", - "role": "Developer" + "name": "SmetDenis", + "email": "admin@jbzoo.com" + }, + { + "name": "Kaloyan K. Tsvetkov", + "email": "kaloyan@kaloyan.info" + }, + { + "name": "Jeremy Dorn", + "email": "jeremy@jeremydorn.com" + }, + { + "name": "Florin Patan", + "email": "florinpatan@gmail.com" } ], - "description": "Lightweight configuration file loader that supports PHP, INI, XML, JSON, and YAML files", - "homepage": "http://hassankhan.me/config/", + "description": "Script for debug and dump PHP variables and other stuff. This tool is a nice replacement for print_r() and var_dump() functions.", "keywords": [ - "config", - "configuration", - "ini", - "json", - "microphp", - "unframework", - "xml", - "yaml", - "yml" + "debug", + "debugging", + "dump", + "dumper", + "jbdump", + "krumo", + "php", + "pretty", + "print", + "print_r", + "var_dump", + "vars" ], "support": { - "issues": "https://github.com/hassankhan/config/issues", - "source": "https://github.com/hassankhan/config/tree/3.1.0" + "issues": "https://github.com/JBZoo/JBDump/issues", + "source": "https://github.com/JBZoo/JBDump/tree/1.5.6" }, - "time": "2022-12-20T19:48:37+00:00" + "time": "2021-03-31T09:21:47+00:00" }, { - "name": "jbzoo/codestyle", - "version": "4.1.0", + "name": "jbzoo/mermaid-php", + "version": "dev-master", "source": { "type": "git", - "url": "https://github.com/JBZoo/Codestyle.git", - "reference": "3d16aa1b96252a55c984f2a0e9230d1b06b9009b" + "url": "https://github.com/JBZoo/Mermaid-PHP.git", + "reference": "0b34a9ce6effbf304d1277a9864628bb2a00c624" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/JBZoo/Codestyle/zipball/3d16aa1b96252a55c984f2a0e9230d1b06b9009b", - "reference": "3d16aa1b96252a55c984f2a0e9230d1b06b9009b", + "url": "https://api.github.com/repos/JBZoo/Mermaid-PHP/zipball/0b34a9ce6effbf304d1277a9864628bb2a00c624", + "reference": "0b34a9ce6effbf304d1277a9864628bb2a00c624", "shasum": "" }, "require": { - "jbzoo/ci-report-converter": ">=2.8.1", - "jbzoo/composer-diff": ">=1.7.0", - "jbzoo/composer-graph": ">=1.5.0", - "mheap/phpunit-github-actions-printer": ">=1.5.1", - "nikic/php-parser": ">=4.14.0", - "php": ">=7.4", - "phpcompatibility/php-compatibility": ">=9.3.5", - "phpmd/phpmd": ">=2.12.0", - "phpmetrics/phpmetrics": ">=2.8.1", - "phpstan/phpstan": ">=1.7.10", - "phpstan/phpstan-strict-rules": ">=1.2.3", - "povils/phpmnd": ">=2.5.0", - "squizlabs/php_codesniffer": ">=3.6.2", - "symfony/console": ">=4.4.16", - "symfony/yaml": ">=4.4.16", - "vimeo/psalm": ">=4.23.0" + "ext-json": "*", + "php": "^8.1" }, "require-dev": { - "jbzoo/phpunit": ">=4.13.1", - "jbzoo/utils": ">=4.5.5" + "jbzoo/toolbox-dev": "7.x-dev" }, + "default-branch": true, "type": "library", "extra": { "branch-alias": { - "dev-master": "3.x-dev" + "dev-master": "7.x-dev" } }, "autoload": { - "files": [ - "src/php/compatibility.php" - ] + "psr-4": { + "JBZoo\\MermaidPHP\\": "src" + } }, "notification-url": "https://packagist.org/downloads/", "license": [ @@ -2960,135 +2893,68 @@ "role": "lead" } ], - "description": "Collection of QA tools and JBZoo code standards", + "description": "Generate diagrams and flowcharts with the help of the mermaid script language", "keywords": [ - "Codestyle", - "coding-standard", - "jbzoo", - "php", - "qa", - "tests" + "diagrams", + "flowcharts", + "mermaid", + "mermaid-js" ], "support": { - "issues": "https://github.com/JBZoo/Codestyle/issues", - "source": "https://github.com/JBZoo/Codestyle/tree/4.1.0" + "issues": "https://github.com/JBZoo/Mermaid-PHP/issues", + "source": "https://github.com/JBZoo/Mermaid-PHP/tree/master" }, - "time": "2023-02-12T14:48:39+00:00" + "time": "2023-03-12T23:49:05+00:00" }, { - "name": "jbzoo/composer-diff", - "version": "1.8.1", + "name": "jbzoo/phpunit", + "version": "dev-master", "source": { "type": "git", - "url": "https://github.com/JBZoo/Composer-Diff.git", - "reference": "45e2d09e3cebd7110de62c9e82a2f699be23da59" + "url": "https://github.com/JBZoo/PHPUnit.git", + "reference": "947fc1f9c23f998ff437002a016b0fe2e8c0be02" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/JBZoo/Composer-Diff/zipball/45e2d09e3cebd7110de62c9e82a2f699be23da59", - "reference": "45e2d09e3cebd7110de62c9e82a2f699be23da59", + "url": "https://api.github.com/repos/JBZoo/PHPUnit/zipball/947fc1f9c23f998ff437002a016b0fe2e8c0be02", + "reference": "947fc1f9c23f998ff437002a016b0fe2e8c0be02", "shasum": "" }, "require": { - "composer/semver": ">=1.0", "ext-filter": "*", - "ext-json": "*", - "jbzoo/cli": "^1.0|^2.0", - "jbzoo/data": "^4.3|^5.0", - "jbzoo/markdown": "^1.1.0", - "php": ">=7.4", - "symfony/console": ">=4.4", - "symfony/process": "^4.4|^5.0" + "ext-mbstring": "*", + "jbzoo/markdown": "7.x-dev", + "php": "^8.1", + "phpunit/phpunit": ">=9.5.20", + "ulrichsg/getopt-php": ">=4.0.2" }, "require-dev": { - "composer/composer": "^1.1|^2.0|^3.0", - "jbzoo/toolbox-dev": "^4.1.1", - "roave/security-advisories": "dev-master" + "guzzlehttp/guzzle": ">=7.4.3", + "jbzoo/codestyle": "7.x-dev", + "jbzoo/data": "7.x-dev", + "jbzoo/http-client": "7.x-dev", + "jbzoo/toolbox-dev": "7.x-dev", + "jbzoo/utils": "7.x-dev", + "symfony/process": ">=5.4.8" }, - "bin": [ - "composer-diff" - ], + "suggest": { + "jbzoo/utils": "^4.2.3" + }, + "default-branch": true, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.x-dev" + "dev-master": "7.x-dev" } }, "autoload": { + "files": [ + "src/functions/defines.php", + "src/functions/aliases.php", + "src/functions/tools.php" + ], "psr-4": { - "JBZoo\\ComposerDiff\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Denis Smetannikov", - "email": "admin@jbzoo.com", - "role": "lead" - }, - { - "name": "David Jonas", - "homepage": "https://github.com/davidrjonas", - "role": "Original Idea" - } - ], - "description": "See what has changed after a composer update.", - "keywords": [ - "composer", - "composer diff", - "composer-diff", - "composer.json", - "composer.lock", - "diff", - "php" - ], - "support": { - "issues": "https://github.com/JBZoo/Composer-Diff/issues", - "source": "https://github.com/JBZoo/Composer-Diff/tree/1.8.1" - }, - "time": "2022-07-30T20:29:31+00:00" - }, - { - "name": "jbzoo/composer-graph", - "version": "1.6.1", - "source": { - "type": "git", - "url": "https://github.com/JBZoo/Composer-Graph.git", - "reference": "9425515f96a09366aa69cf60a11af3a70cebe5fd" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/JBZoo/Composer-Graph/zipball/9425515f96a09366aa69cf60a11af3a70cebe5fd", - "reference": "9425515f96a09366aa69cf60a11af3a70cebe5fd", - "shasum": "" - }, - "require": { - "jbzoo/cli": "^1.0|^2.0", - "jbzoo/data": "^4.3|^5.0", - "jbzoo/mermaid-php": "^2.3|^3.0", - "jbzoo/utils": "^4.5|^5.0", - "php": ">=7.4", - "symfony/console": "^4.4|^5.4" - }, - "require-dev": { - "jbzoo/toolbox-dev": "^4.1.1", - "symfony/process": ">=4.4" - }, - "bin": [ - "composer-graph" - ], - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.x-dev" - } - }, - "autoload": { - "psr-4": { - "JBZoo\\ComposerGraph\\": "src" + "JBZoo\\PHPUnit\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -3102,128 +2968,60 @@ "role": "lead" } ], - "description": "Render composer.json + composer.lock dependencies graph", + "description": "PHPUnit toolbox with short assert aliases and useful functions around testing", "keywords": [ - "composer", - "composer-dependency", - "composer-graph", - "composer-packages", - "dependencies", - "diagram", - "graph", + "aliases", + "assert", + "assertion", + "debug", "jbzoo", - "mermaidjs" + "phpunit", + "short-syntax", + "testing" ], "support": { - "issues": "https://github.com/JBZoo/Composer-Graph/issues", - "source": "https://github.com/JBZoo/Composer-Graph/tree/1.6.1" + "issues": "https://github.com/JBZoo/PHPUnit/issues", + "source": "https://github.com/JBZoo/PHPUnit/tree/master" }, - "time": "2022-07-30T20:41:13+00:00" + "time": "2023-03-09T08:57:31+00:00" }, { - "name": "jbzoo/jbdump", - "version": "1.5.6", + "name": "jbzoo/toolbox-dev", + "version": "dev-master", "source": { "type": "git", - "url": "https://github.com/JBZoo/JBDump.git", - "reference": "044e1f9f648d2467d9161732f1195a44d452ca50" + "url": "https://github.com/JBZoo/Toolbox-Dev.git", + "reference": "c494ec7675f6ef0da1bfb760d0385f823118f834" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/JBZoo/JBDump/zipball/044e1f9f648d2467d9161732f1195a44d452ca50", - "reference": "044e1f9f648d2467d9161732f1195a44d452ca50", + "url": "https://api.github.com/repos/JBZoo/Toolbox-Dev/zipball/c494ec7675f6ef0da1bfb760d0385f823118f834", + "reference": "c494ec7675f6ef0da1bfb760d0385f823118f834", "shasum": "" }, "require": { - "php": ">=5.3.10" - }, - "replace": { - "smetdenis/jbdump": "*" + "fakerphp/faker": ">=1.21.0", + "jbzoo/codestyle": "7.x-dev", + "jbzoo/jbdump": ">=1.5.6|7.x-dev", + "jbzoo/markdown": "7.x-dev", + "jbzoo/phpunit": "7.x-dev", + "php": "^8.1", + "php-coveralls/php-coveralls": ">=2.5.3", + "symfony/var-dumper": ">=4.4" }, + "default-branch": true, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.x-dev" + "dev-master": "7.x-dev" } }, "autoload": { "files": [ - "autoload.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "SmetDenis", - "email": "admin@jbzoo.com" - }, - { - "name": "Kaloyan K. Tsvetkov", - "email": "kaloyan@kaloyan.info" - }, - { - "name": "Jeremy Dorn", - "email": "jeremy@jeremydorn.com" - }, - { - "name": "Florin Patan", - "email": "florinpatan@gmail.com" - } - ], - "description": "Script for debug and dump PHP variables and other stuff. This tool is a nice replacement for print_r() and var_dump() functions.", - "keywords": [ - "debug", - "debugging", - "dump", - "dumper", - "jbdump", - "krumo", - "php", - "pretty", - "print", - "print_r", - "var_dump", - "vars" - ], - "support": { - "issues": "https://github.com/JBZoo/JBDump/issues", - "source": "https://github.com/JBZoo/JBDump/tree/1.5.6" - }, - "time": "2021-03-31T09:21:47+00:00" - }, - { - "name": "jbzoo/mermaid-php", - "version": "3.0.0", - "source": { - "type": "git", - "url": "https://github.com/JBZoo/Mermaid-PHP.git", - "reference": "ee698a79b8a924ec082ae52d4ba89802c4b53631" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/JBZoo/Mermaid-PHP/zipball/ee698a79b8a924ec082ae52d4ba89802c4b53631", - "reference": "ee698a79b8a924ec082ae52d4ba89802c4b53631", - "shasum": "" - }, - "require": { - "ext-json": "*", - "php": ">=7.4" - }, - "require-dev": { - "jbzoo/toolbox-dev": "^4.0.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.x-dev" - } - }, - "autoload": { + "src/var-dumper.php" + ], "psr-4": { - "JBZoo\\MermaidPHP\\": "src" + "JBZoo\\ToolboxDev\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -3237,71 +3035,49 @@ "role": "lead" } ], - "description": "Generate diagrams and flowcharts with the help of the mermaid script language", + "description": "Developer toolbox only for JBZoo libs on github+travis", "keywords": [ - "diagrams", - "flowcharts", - "mermaid", - "mermaid-js" + "Toolbox", + "debug", + "dev", + "dev-kit", + "developer", + "devkit", + "jbzoo" ], "support": { - "issues": "https://github.com/JBZoo/Mermaid-PHP/issues", - "source": "https://github.com/JBZoo/Mermaid-PHP/tree/3.0.0" + "issues": "https://github.com/JBZoo/Toolbox-Dev/issues", + "source": "https://github.com/JBZoo/Toolbox-Dev/tree/master" }, - "time": "2022-06-06T16:29:10+00:00" + "time": "2023-03-09T08:52:14+00:00" }, { - "name": "jbzoo/phpunit", - "version": "5.0.0", + "name": "kubawerlos/php-cs-fixer-custom-fixers", + "version": "v3.13.0", "source": { "type": "git", - "url": "https://github.com/JBZoo/PHPUnit.git", - "reference": "70f238eaebd4c91e18f9f477b527b13cad2ebadd" + "url": "https://github.com/kubawerlos/php-cs-fixer-custom-fixers.git", + "reference": "fb53d8bbe2224383a84c71f451d76eb7bc6c8e33" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/JBZoo/PHPUnit/zipball/70f238eaebd4c91e18f9f477b527b13cad2ebadd", - "reference": "70f238eaebd4c91e18f9f477b527b13cad2ebadd", + "url": "https://api.github.com/repos/kubawerlos/php-cs-fixer-custom-fixers/zipball/fb53d8bbe2224383a84c71f451d76eb7bc6c8e33", + "reference": "fb53d8bbe2224383a84c71f451d76eb7bc6c8e33", "shasum": "" }, "require": { - "codedungeon/phpunit-result-printer": ">=0.32.0", "ext-filter": "*", - "ext-mbstring": "*", - "hanneskod/classtools": ">=1.2.1", - "jbzoo/markdown": ">=1.1.1", - "mheap/phpunit-github-actions-printer": ">=1.5.1", - "php": ">=7.4", - "phpunit/phpunit": ">=9.5.20", - "ulrichsg/getopt-php": ">=4.0.2" + "ext-tokenizer": "*", + "friendsofphp/php-cs-fixer": "^3.6.0", + "php": "^7.4 || ^8.0" }, "require-dev": { - "guzzlehttp/guzzle": ">=7.4.3", - "jbzoo/codestyle": ">=4.0.1", - "jbzoo/data": ">=4.4.0", - "jbzoo/http-client": ">=3.6.2", - "jbzoo/toolbox-dev": ">=4.0.0", - "jbzoo/utils": ">=4.5.5", - "phpunit/php-token-stream": ">=4.0.4", - "symfony/process": ">=5.4.8" - }, - "suggest": { - "jbzoo/utils": "^4.2.3" + "phpunit/phpunit": "^9.5.20" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.x-dev" - } - }, "autoload": { - "files": [ - "src/functions/defines.php", - "src/functions/aliases.php", - "src/functions/tools.php" - ], "psr-4": { - "JBZoo\\PHPUnit\\": "src" + "PhpCsFixerCustomFixers\\": "src" } }, "notification-url": "https://packagist.org/downloads/", @@ -3310,109 +3086,43 @@ ], "authors": [ { - "name": "Denis Smetannikov", - "email": "admin@jbzoo.com", - "role": "lead" + "name": "Kuba Werล‚os", + "email": "werlos@gmail.com" } ], - "description": "PHPUnit toolbox with short assert aliases and useful functions around testing", - "keywords": [ - "aliases", - "assert", - "assertion", - "debug", - "jbzoo", - "phpunit", - "short-syntax", - "testing" - ], + "description": "A set of custom fixers for PHP CS Fixer", "support": { - "issues": "https://github.com/JBZoo/PHPUnit/issues", - "source": "https://github.com/JBZoo/PHPUnit/tree/5.0.0" + "issues": "https://github.com/kubawerlos/php-cs-fixer-custom-fixers/issues", + "source": "https://github.com/kubawerlos/php-cs-fixer-custom-fixers/tree/v3.13.0" }, - "time": "2022-06-05T14:39:16+00:00" + "time": "2023-02-15T18:51:16+00:00" }, { - "name": "jbzoo/toolbox-dev", - "version": "4.1.1", + "name": "microsoft/tolerant-php-parser", + "version": "v0.1.2", "source": { "type": "git", - "url": "https://github.com/JBZoo/Toolbox-Dev.git", - "reference": "3b742adad32ac817887121bf41fef1a20938b5ea" + "url": "https://github.com/microsoft/tolerant-php-parser.git", + "reference": "3eccfd273323aaf69513e2f1c888393f5947804b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/JBZoo/Toolbox-Dev/zipball/3b742adad32ac817887121bf41fef1a20938b5ea", - "reference": "3b742adad32ac817887121bf41fef1a20938b5ea", + "url": "https://api.github.com/repos/microsoft/tolerant-php-parser/zipball/3eccfd273323aaf69513e2f1c888393f5947804b", + "reference": "3eccfd273323aaf69513e2f1c888393f5947804b", "shasum": "" }, "require": { - "fakerphp/faker": ">=1.19.0", - "jbzoo/codestyle": "^4.0.2", - "jbzoo/jbdump": ">=1.5.6", - "jbzoo/markdown": "^1.1.1", - "jbzoo/phpunit": "^5.0.0", - "php": ">=7.4", - "php-coveralls/php-coveralls": ">=2.5.2", - "symfony/var-dumper": ">=4.4" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.x-dev" - } - }, - "autoload": { - "files": [ - "src/var-dumper.php" - ], - "psr-4": { - "JBZoo\\ToolboxDev\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Denis Smetannikov", - "email": "admin@jbzoo.com", - "role": "lead" - } - ], - "description": "Developer toolbox only for JBZoo libs on github+travis", - "support": { - "issues": "https://github.com/JBZoo/Toolbox-Dev/issues", - "source": "https://github.com/JBZoo/Toolbox-Dev/tree/4.1.1" - }, - "time": "2022-07-30T00:18:10+00:00" - }, - { - "name": "mheap/phpunit-github-actions-printer", - "version": "v1.5.1", - "source": { - "type": "git", - "url": "https://github.com/mheap/phpunit-github-actions-printer.git", - "reference": "877ab6e5f9d552f83101ffa19bbd2a50f2feed44" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/mheap/phpunit-github-actions-printer/zipball/877ab6e5f9d552f83101ffa19bbd2a50f2feed44", - "reference": "877ab6e5f9d552f83101ffa19bbd2a50f2feed44", - "shasum": "" + "php": ">=7.2" }, "require-dev": { - "phpunit/phpunit": "^9", - "squizlabs/php_codesniffer": "3.*" + "phpunit/phpunit": "^8.5.15" }, "type": "library", "autoload": { - "files": [ - "src/Functions/helpers.php" - ], "psr-4": { - "mheap\\GithubActionsReporter\\": "src" + "Microsoft\\PhpParser\\": [ + "src/" + ] } }, "notification-url": "https://packagist.org/downloads/", @@ -3421,29 +3131,29 @@ ], "authors": [ { - "name": "Michael Heap", - "email": "m@michaelheap.com" + "name": "Rob Lourens", + "email": "roblou@microsoft.com" } ], - "description": "PHPUnit Printer for adding test failures as annotations on GitHub Actions", + "description": "Tolerant PHP-to-AST parser designed for IDE usage scenarios", "support": { - "issues": "https://github.com/mheap/phpunit-github-actions-printer/issues", - "source": "https://github.com/mheap/phpunit-github-actions-printer/tree/v1.5.1" + "issues": "https://github.com/microsoft/tolerant-php-parser/issues", + "source": "https://github.com/microsoft/tolerant-php-parser/tree/v0.1.2" }, - "time": "2021-01-09T18:11:16+00:00" + "time": "2022-10-05T17:30:19+00:00" }, { "name": "myclabs/deep-copy", - "version": "1.11.0", + "version": "1.11.1", "source": { "type": "git", "url": "https://github.com/myclabs/DeepCopy.git", - "reference": "14daed4296fae74d9e3201d2c4925d1acb7aa614" + "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/14daed4296fae74d9e3201d2c4925d1acb7aa614", - "reference": "14daed4296fae74d9e3201d2c4925d1acb7aa614", + "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/7284c22080590fb39f2ffa3e9057f10a4ddd0e0c", + "reference": "7284c22080590fb39f2ffa3e9057f10a4ddd0e0c", "shasum": "" }, "require": { @@ -3481,7 +3191,7 @@ ], "support": { "issues": "https://github.com/myclabs/DeepCopy/issues", - "source": "https://github.com/myclabs/DeepCopy/tree/1.11.0" + "source": "https://github.com/myclabs/DeepCopy/tree/1.11.1" }, "funding": [ { @@ -3489,7 +3199,7 @@ "type": "tidelift" } ], - "time": "2022-03-03T13:19:32+00:00" + "time": "2023-03-08T13:26:56+00:00" }, { "name": "netresearch/jsonmapper", @@ -3544,16 +3254,16 @@ }, { "name": "nikic/php-parser", - "version": "v4.15.3", + "version": "v4.15.4", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "570e980a201d8ed0236b0a62ddf2c9cbb2034039" + "reference": "6bb5176bc4af8bcb7d926f88718db9b96a2d4290" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/570e980a201d8ed0236b0a62ddf2c9cbb2034039", - "reference": "570e980a201d8ed0236b0a62ddf2c9cbb2034039", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/6bb5176bc4af8bcb7d926f88718db9b96a2d4290", + "reference": "6bb5176bc4af8bcb7d926f88718db9b96a2d4290", "shasum": "" }, "require": { @@ -3594,22 +3304,22 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.3" + "source": "https://github.com/nikic/PHP-Parser/tree/v4.15.4" }, - "time": "2023-01-16T22:05:37+00:00" + "time": "2023-03-05T19:49:14+00:00" }, { "name": "pdepend/pdepend", - "version": "2.12.1", + "version": "2.13.0", "source": { "type": "git", "url": "https://github.com/pdepend/pdepend.git", - "reference": "7a892d56ceafd804b4a2ecc85184640937ce9e84" + "reference": "31be7cd4f305f3f7b52af99c1cb13fc938d1cfad" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/pdepend/pdepend/zipball/7a892d56ceafd804b4a2ecc85184640937ce9e84", - "reference": "7a892d56ceafd804b4a2ecc85184640937ce9e84", + "url": "https://api.github.com/repos/pdepend/pdepend/zipball/31be7cd4f305f3f7b52af99c1cb13fc938d1cfad", + "reference": "31be7cd4f305f3f7b52af99c1cb13fc938d1cfad", "shasum": "" }, "require": { @@ -3645,7 +3355,7 @@ "description": "Official version of pdepend to be handled with Composer", "support": { "issues": "https://github.com/pdepend/pdepend/issues", - "source": "https://github.com/pdepend/pdepend/tree/2.12.1" + "source": "https://github.com/pdepend/pdepend/tree/2.13.0" }, "funding": [ { @@ -3653,34 +3363,113 @@ "type": "tidelift" } ], - "time": "2022-09-08T19:30:37+00:00" + "time": "2023-02-28T20:56:15+00:00" }, { - "name": "phar-io/manifest", - "version": "2.0.3", + "name": "phan/phan", + "version": "5.4.2", "source": { "type": "git", - "url": "https://github.com/phar-io/manifest.git", - "reference": "97803eca37d319dfa7826cc2437fc020857acb53" + "url": "https://github.com/phan/phan.git", + "reference": "4f2870ed6fea320f62f3c3c63f3274d357a7980e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phar-io/manifest/zipball/97803eca37d319dfa7826cc2437fc020857acb53", - "reference": "97803eca37d319dfa7826cc2437fc020857acb53", + "url": "https://api.github.com/repos/phan/phan/zipball/4f2870ed6fea320f62f3c3c63f3274d357a7980e", + "reference": "4f2870ed6fea320f62f3c3c63f3274d357a7980e", "shasum": "" }, "require": { - "ext-dom": "*", - "ext-phar": "*", - "ext-xmlwriter": "*", - "phar-io/version": "^3.0.1", - "php": "^7.2 || ^8.0" + "composer/semver": "^1.4|^2.0|^3.0", + "composer/xdebug-handler": "^2.0|^3.0", + "ext-filter": "*", + "ext-json": "*", + "ext-tokenizer": "*", + "felixfbecker/advanced-json-rpc": "^3.0.4", + "microsoft/tolerant-php-parser": "0.1.2", + "netresearch/jsonmapper": "^1.6.0|^2.0|^3.0|^4.0", + "php": "^7.2.0|^8.0.0", + "sabre/event": "^5.1.3", + "symfony/console": "^3.2|^4.0|^5.0|^6.0", + "symfony/polyfill-mbstring": "^1.11.0", + "symfony/polyfill-php80": "^1.20.0", + "tysonandre/var_representation_polyfill": "^0.0.2|^0.1.0" }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } + "require-dev": { + "phpunit/phpunit": "^8.5.0" + }, + "suggest": { + "ext-ast": "Needed for parsing ASTs (unless --use-fallback-parser is used). 1.0.1+ is needed, 1.0.16+ is recommended.", + "ext-iconv": "Either iconv or mbstring is needed to ensure issue messages are valid utf-8", + "ext-igbinary": "Improves performance of polyfill when ext-ast is unavailable", + "ext-mbstring": "Either iconv or mbstring is needed to ensure issue messages are valid utf-8", + "ext-tokenizer": "Needed for fallback/polyfill parser support and file/line-based suppressions.", + "ext-var_representation": "Suggested for converting values to strings in issue messages" + }, + "bin": [ + "phan", + "phan_client", + "tocheckstyle" + ], + "type": "project", + "autoload": { + "psr-4": { + "Phan\\": "src/Phan" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Tyson Andre" + }, + { + "name": "Rasmus Lerdorf" + }, + { + "name": "Andrew S. Morrison" + } + ], + "description": "A static analyzer for PHP", + "keywords": [ + "analyzer", + "php", + "static" + ], + "support": { + "issues": "https://github.com/phan/phan/issues", + "source": "https://github.com/phan/phan/tree/5.4.2" + }, + "time": "2023-03-03T17:20:24+00:00" + }, + { + "name": "phar-io/manifest", + "version": "2.0.3", + "source": { + "type": "git", + "url": "https://github.com/phar-io/manifest.git", + "reference": "97803eca37d319dfa7826cc2437fc020857acb53" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phar-io/manifest/zipball/97803eca37d319dfa7826cc2437fc020857acb53", + "reference": "97803eca37d319dfa7826cc2437fc020857acb53", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-phar": "*", + "ext-xmlwriter": "*", + "phar-io/version": "^3.0.1", + "php": "^7.2 || ^8.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } }, "autoload": { "classmap": [ @@ -3950,68 +3739,6 @@ }, "time": "2022-02-18T08:23:19+00:00" }, - { - "name": "phpcompatibility/php-compatibility", - "version": "9.3.5", - "source": { - "type": "git", - "url": "https://github.com/PHPCompatibility/PHPCompatibility.git", - "reference": "9fb324479acf6f39452e0655d2429cc0d3914243" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/PHPCompatibility/PHPCompatibility/zipball/9fb324479acf6f39452e0655d2429cc0d3914243", - "reference": "9fb324479acf6f39452e0655d2429cc0d3914243", - "shasum": "" - }, - "require": { - "php": ">=5.3", - "squizlabs/php_codesniffer": "^2.3 || ^3.0.2" - }, - "conflict": { - "squizlabs/php_codesniffer": "2.6.2" - }, - "require-dev": { - "phpunit/phpunit": "~4.5 || ^5.0 || ^6.0 || ^7.0" - }, - "suggest": { - "dealerdirect/phpcodesniffer-composer-installer": "^0.5 || This Composer plugin will sort out the PHPCS 'installed_paths' automatically.", - "roave/security-advisories": "dev-master || Helps prevent installing dependencies with known security issues." - }, - "type": "phpcodesniffer-standard", - "notification-url": "https://packagist.org/downloads/", - "license": [ - "LGPL-3.0-or-later" - ], - "authors": [ - { - "name": "Wim Godden", - "homepage": "https://github.com/wimg", - "role": "lead" - }, - { - "name": "Juliette Reinders Folmer", - "homepage": "https://github.com/jrfnl", - "role": "lead" - }, - { - "name": "Contributors", - "homepage": "https://github.com/PHPCompatibility/PHPCompatibility/graphs/contributors" - } - ], - "description": "A set of sniffs for PHP_CodeSniffer that checks for PHP cross-version compatibility.", - "homepage": "http://techblog.wimgodden.be/tag/codesniffer/", - "keywords": [ - "compatibility", - "phpcs", - "standards" - ], - "support": { - "issues": "https://github.com/PHPCompatibility/PHPCompatibility/issues", - "source": "https://github.com/PHPCompatibility/PHPCompatibility" - }, - "time": "2019-12-27T09:44:58+00:00" - }, { "name": "phpdocumentor/reflection-common", "version": "2.2.0", @@ -4124,24 +3851,27 @@ }, { "name": "phpdocumentor/type-resolver", - "version": "1.6.2", + "version": "1.7.0", "source": { "type": "git", "url": "https://github.com/phpDocumentor/TypeResolver.git", - "reference": "48f445a408c131e38cab1c235aa6d2bb7a0bb20d" + "reference": "1534aea9bde19a5c85c5d1e1f834ab63f4c5dcf5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/48f445a408c131e38cab1c235aa6d2bb7a0bb20d", - "reference": "48f445a408c131e38cab1c235aa6d2bb7a0bb20d", + "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/1534aea9bde19a5c85c5d1e1f834ab63f4c5dcf5", + "reference": "1534aea9bde19a5c85c5d1e1f834ab63f4c5dcf5", "shasum": "" }, "require": { + "doctrine/deprecations": "^1.0", "php": "^7.4 || ^8.0", - "phpdocumentor/reflection-common": "^2.0" + "phpdocumentor/reflection-common": "^2.0", + "phpstan/phpdoc-parser": "^1.13" }, "require-dev": { "ext-tokenizer": "*", + "phpbench/phpbench": "^1.2", "phpstan/extension-installer": "^1.1", "phpstan/phpstan": "^1.8", "phpstan/phpstan-phpunit": "^1.1", @@ -4173,9 +3903,9 @@ "description": "A PSR-5 based resolver of Class names, Types and Structural Element Names", "support": { "issues": "https://github.com/phpDocumentor/TypeResolver/issues", - "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.6.2" + "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.7.0" }, - "time": "2022-10-14T12:47:21+00:00" + "time": "2023-03-12T10:13:29+00:00" }, { "name": "phpmd/phpmd", @@ -4262,16 +3992,16 @@ }, { "name": "phpmetrics/phpmetrics", - "version": "v2.8.1", + "version": "v2.8.2", "source": { "type": "git", "url": "https://github.com/phpmetrics/PhpMetrics.git", - "reference": "e279f7317390f642339941b693359e9a181817a7" + "reference": "4b77140a11452e63c7a9b98e0648320bf6710090" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpmetrics/PhpMetrics/zipball/e279f7317390f642339941b693359e9a181817a7", - "reference": "e279f7317390f642339941b693359e9a181817a7", + "url": "https://api.github.com/repos/phpmetrics/PhpMetrics/zipball/4b77140a11452e63c7a9b98e0648320bf6710090", + "reference": "4b77140a11452e63c7a9b98e0648320bf6710090", "shasum": "" }, "require": { @@ -4324,22 +4054,67 @@ ], "support": { "issues": "https://github.com/PhpMetrics/PhpMetrics/issues", - "source": "https://github.com/phpmetrics/PhpMetrics/tree/v2.8.1" + "source": "https://github.com/phpmetrics/PhpMetrics/tree/v2.8.2" + }, + "time": "2023-03-08T15:03:36+00:00" + }, + { + "name": "phpstan/phpdoc-parser", + "version": "1.16.1", + "source": { + "type": "git", + "url": "https://github.com/phpstan/phpdoc-parser.git", + "reference": "e27e92d939e2e3636f0a1f0afaba59692c0bf571" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/e27e92d939e2e3636f0a1f0afaba59692c0bf571", + "reference": "e27e92d939e2e3636f0a1f0afaba59692c0bf571", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "php-parallel-lint/php-parallel-lint": "^1.2", + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "^1.5", + "phpstan/phpstan-phpunit": "^1.1", + "phpstan/phpstan-strict-rules": "^1.0", + "phpunit/phpunit": "^9.5", + "symfony/process": "^5.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "PHPStan\\PhpDocParser\\": [ + "src/" + ] + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "PHPDoc parser with support for nullable, intersection and generic types", + "support": { + "issues": "https://github.com/phpstan/phpdoc-parser/issues", + "source": "https://github.com/phpstan/phpdoc-parser/tree/1.16.1" }, - "time": "2022-03-24T10:19:51+00:00" + "time": "2023-02-07T18:11:17+00:00" }, { "name": "phpstan/phpstan", - "version": "1.9.18", + "version": "1.10.8", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan.git", - "reference": "f2d5cf71be91172a57c649770b73c20ebcffb0bf" + "reference": "0166aef76e066f0dd2adc2799bdadfa1635711e9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan/zipball/f2d5cf71be91172a57c649770b73c20ebcffb0bf", - "reference": "f2d5cf71be91172a57c649770b73c20ebcffb0bf", + "url": "https://api.github.com/repos/phpstan/phpstan/zipball/0166aef76e066f0dd2adc2799bdadfa1635711e9", + "reference": "0166aef76e066f0dd2adc2799bdadfa1635711e9", "shasum": "" }, "require": { @@ -4368,8 +4143,11 @@ "static analysis" ], "support": { + "docs": "https://phpstan.org/user-guide/getting-started", + "forum": "https://github.com/phpstan/phpstan/discussions", "issues": "https://github.com/phpstan/phpstan/issues", - "source": "https://github.com/phpstan/phpstan/tree/1.9.18" + "security": "https://github.com/phpstan/phpstan/security/policy", + "source": "https://github.com/phpstan/phpstan-src" }, "funding": [ { @@ -4385,29 +4163,30 @@ "type": "tidelift" } ], - "time": "2023-02-17T15:01:27+00:00" + "time": "2023-03-24T10:28:16+00:00" }, { "name": "phpstan/phpstan-strict-rules", - "version": "1.4.5", + "version": "1.5.0", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan-strict-rules.git", - "reference": "361f75b06066f3fdaba87c1f57bdb1ffc28d6f1d" + "reference": "b7dd96a5503919a43b3cd06a2dced9d4252492f2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan-strict-rules/zipball/361f75b06066f3fdaba87c1f57bdb1ffc28d6f1d", - "reference": "361f75b06066f3fdaba87c1f57bdb1ffc28d6f1d", + "url": "https://api.github.com/repos/phpstan/phpstan-strict-rules/zipball/b7dd96a5503919a43b3cd06a2dced9d4252492f2", + "reference": "b7dd96a5503919a43b3cd06a2dced9d4252492f2", "shasum": "" }, "require": { "php": "^7.2 || ^8.0", - "phpstan/phpstan": "^1.9.7" + "phpstan/phpstan": "^1.10" }, "require-dev": { "nikic/php-parser": "^4.13.0", "php-parallel-lint/php-parallel-lint": "^1.2", + "phpstan/phpstan-deprecation-rules": "^1.1", "phpstan/phpstan-phpunit": "^1.0", "phpunit/phpunit": "^9.5" }, @@ -4431,29 +4210,29 @@ "description": "Extra strict and opinionated rules for PHPStan", "support": { "issues": "https://github.com/phpstan/phpstan-strict-rules/issues", - "source": "https://github.com/phpstan/phpstan-strict-rules/tree/1.4.5" + "source": "https://github.com/phpstan/phpstan-strict-rules/tree/1.5.0" }, - "time": "2023-01-11T14:16:29+00:00" + "time": "2023-02-21T10:17:10+00:00" }, { "name": "phpunit/php-code-coverage", - "version": "9.2.24", + "version": "9.2.26", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "2cf940ebc6355a9d430462811b5aaa308b174bed" + "reference": "443bc6912c9bd5b409254a40f4b0f4ced7c80ea1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/2cf940ebc6355a9d430462811b5aaa308b174bed", - "reference": "2cf940ebc6355a9d430462811b5aaa308b174bed", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/443bc6912c9bd5b409254a40f4b0f4ced7c80ea1", + "reference": "443bc6912c9bd5b409254a40f4b0f4ced7c80ea1", "shasum": "" }, "require": { "ext-dom": "*", "ext-libxml": "*", "ext-xmlwriter": "*", - "nikic/php-parser": "^4.14", + "nikic/php-parser": "^4.15", "php": ">=7.3", "phpunit/php-file-iterator": "^3.0.3", "phpunit/php-text-template": "^2.0.2", @@ -4468,8 +4247,8 @@ "phpunit/phpunit": "^9.3" }, "suggest": { - "ext-pcov": "*", - "ext-xdebug": "*" + "ext-pcov": "PHP extension that provides line coverage", + "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage" }, "type": "library", "extra": { @@ -4502,7 +4281,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.24" + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.26" }, "funding": [ { @@ -4510,7 +4289,7 @@ "type": "github" } ], - "time": "2023-01-26T08:26:55+00:00" + "time": "2023-03-06T12:58:08+00:00" }, { "name": "phpunit/php-file-iterator", @@ -4755,16 +4534,16 @@ }, { "name": "phpunit/phpunit", - "version": "9.6.3", + "version": "9.6.5", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "e7b1615e3e887d6c719121c6d4a44b0ab9645555" + "reference": "86e761949019ae83f49240b2f2123fb5ab3b2fc5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/e7b1615e3e887d6c719121c6d4a44b0ab9645555", - "reference": "e7b1615e3e887d6c719121c6d4a44b0ab9645555", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/86e761949019ae83f49240b2f2123fb5ab3b2fc5", + "reference": "86e761949019ae83f49240b2f2123fb5ab3b2fc5", "shasum": "" }, "require": { @@ -4797,8 +4576,8 @@ "sebastian/version": "^3.0.2" }, "suggest": { - "ext-soap": "*", - "ext-xdebug": "*" + "ext-soap": "To be able to generate mocks based on WSDL files", + "ext-xdebug": "PHP extension that provides line coverage as well as branch and path coverage" }, "bin": [ "phpunit" @@ -4837,7 +4616,7 @@ ], "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.3" + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.5" }, "funding": [ { @@ -4853,7 +4632,7 @@ "type": "tidelift" } ], - "time": "2023-02-04T13:37:15+00:00" + "time": "2023-03-09T06:34:10+00:00" }, { "name": "povils/phpmnd", @@ -4907,6 +4686,105 @@ }, "time": "2022-08-18T21:29:13+00:00" }, + { + "name": "psr/cache", + "version": "3.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/cache.git", + "reference": "aa5030cfa5405eccfdcb1083ce040c2cb8d253bf" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/cache/zipball/aa5030cfa5405eccfdcb1083ce040c2cb8d253bf", + "reference": "aa5030cfa5405eccfdcb1083ce040c2cb8d253bf", + "shasum": "" + }, + "require": { + "php": ">=8.0.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Cache\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for caching libraries", + "keywords": [ + "cache", + "psr", + "psr-6" + ], + "support": { + "source": "https://github.com/php-fig/cache/tree/3.0.0" + }, + "time": "2021-02-03T23:26:27+00:00" + }, + { + "name": "psr/event-dispatcher", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/event-dispatcher.git", + "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/event-dispatcher/zipball/dbefd12671e8a14ec7f180cab83036ed26714bb0", + "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0", + "shasum": "" + }, + "require": { + "php": ">=7.2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\EventDispatcher\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Standard interfaces for event handling.", + "keywords": [ + "events", + "psr", + "psr-14" + ], + "support": { + "issues": "https://github.com/php-fig/event-dispatcher/issues", + "source": "https://github.com/php-fig/event-dispatcher/tree/1.0.0" + }, + "time": "2019-01-08T18:20:26+00:00" + }, { "name": "psr/http-client", "version": "1.0.1", @@ -5117,12 +4995,12 @@ "source": { "type": "git", "url": "https://github.com/Roave/SecurityAdvisories.git", - "reference": "9206ad5e9490993f471ef1503f630afd7a849170" + "reference": "ca6f1d633e0a8d82bd27376fe7e27a92500417f1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Roave/SecurityAdvisories/zipball/9206ad5e9490993f471ef1503f630afd7a849170", - "reference": "9206ad5e9490993f471ef1503f630afd7a849170", + "url": "https://api.github.com/repos/Roave/SecurityAdvisories/zipball/ca6f1d633e0a8d82bd27376fe7e27a92500417f1", + "reference": "ca6f1d633e0a8d82bd27376fe7e27a92500417f1", "shasum": "" }, "conflict": { @@ -5132,7 +5010,7 @@ "aheinze/cockpit": "<=2.2.1", "akaunting/akaunting": "<2.1.13", "akeneo/pim-community-dev": "<5.0.119|>=6,<6.0.53", - "alextselegidis/easyappointments": "<=1.4.3", + "alextselegidis/easyappointments": "<1.5", "alterphp/easyadmin-extension-bundle": ">=1.2,<1.2.11|>=1.3,<1.3.1", "amazing/media2click": ">=1,<1.3.3", "amphp/artax": "<1.0.6|>=2,<2.0.6", @@ -5141,7 +5019,7 @@ "anchorcms/anchor-cms": "<=0.12.7", "andreapollastri/cipi": "<=3.1.15", "apereo/phpcas": "<1.6", - "api-platform/core": ">=2.2,<2.2.10|>=2.3,<2.3.6", + "api-platform/core": ">=2.2,<2.2.10|>=2.3,<2.3.6|>=2.6,<2.7.10|>=3,<3.0.12|>=3.1,<3.1.3", "appwrite/server-ce": "<0.11.1|>=0.12,<0.12.2", "arc/web": "<3", "area17/twill": "<1.2.5|>=2,<2.5.3", @@ -5156,7 +5034,7 @@ "barrelstrength/sprout-forms": "<3.9", "barryvdh/laravel-translation-manager": "<0.6.2", "barzahlen/barzahlen-php": "<2.0.1", - "baserproject/basercms": "<4.7.2", + "baserproject/basercms": "<4.7.5", "bassjobsen/bootstrap-3-typeahead": ">4.0.2", "billz/raspap-webgui": "<=2.6.6", "bk2k/bootstrap-package": ">=7.1,<7.1.2|>=8,<8.0.8|>=9,<9.0.4|>=9.1,<9.1.3|>=10,<10.0.10|>=11,<11.0.3", @@ -5180,11 +5058,11 @@ "catfan/medoo": "<1.7.5", "centreon/centreon": "<22.10-beta.1", "cesnet/simplesamlphp-module-proxystatistics": "<3.1", - "cockpit-hq/cockpit": "<2.3.9", + "cockpit-hq/cockpit": "<2.4.1", "codeception/codeception": "<3.1.3|>=4,<4.1.22", "codeigniter/framework": "<=3.0.6", "codeigniter4/framework": "<4.2.11", - "codeigniter4/shield": "= 1.0.0-beta", + "codeigniter4/shield": "<1-beta.4|= 1.0.0-beta", "codiad/codiad": "<=2.8.4", "composer/composer": "<1.10.26|>=2-alpha.1,<2.2.12|>=2.3,<2.3.5", "concrete5/concrete5": "<=9.1.3|>= 9.0.0RC1, < 9.1.3", @@ -5195,7 +5073,7 @@ "contao/core-bundle": "<4.9.18|>=4.10,<4.11.7|>=4.13,<4.13.3|= 4.10.0", "contao/listing-bundle": ">=4,<4.4.8", "contao/managed-edition": "<=1.5", - "craftcms/cms": "<3.7.55.2|>= 4.0.0-RC1, < 4.2.1", + "craftcms/cms": "<3.7.64|>= 4.0.0-RC1, < 4.3.7|>= 4.0.0-RC1, < 4.2.1", "croogo/croogo": "<3.0.7", "cuyz/valinor": "<0.12", "czproject/git-php": "<4.0.3", @@ -5224,6 +5102,7 @@ "ectouch/ectouch": "<=2.7.2", "elefant/cms": "<1.3.13", "elgg/elgg": "<3.3.24|>=4,<4.0.5", + "encore/laravel-admin": "<=1.8.19", "endroid/qr-code-bundle": "<3.4.2", "enshrined/svg-sanitize": "<0.15", "erusev/parsedown": "<1.7.2", @@ -5238,11 +5117,11 @@ "ezsystems/ezplatform-admin-ui": ">=1.3,<1.3.5|>=1.4,<1.4.6|>=1.5,<1.5.29|>=2.3,<2.3.26", "ezsystems/ezplatform-admin-ui-assets": ">=4,<4.2.1|>=5,<5.0.1|>=5.1,<5.1.1", "ezsystems/ezplatform-graphql": ">=1-rc.1,<1.0.13|>=2-beta.1,<2.3.12", - "ezsystems/ezplatform-kernel": "<=1.2.5|>=1.3,<1.3.26", + "ezsystems/ezplatform-kernel": "<1.2.5.1|>=1.3,<1.3.26", "ezsystems/ezplatform-rest": ">=1.2,<=1.2.2|>=1.3,<1.3.8", "ezsystems/ezplatform-richtext": ">=2.3,<=2.3.7", "ezsystems/ezplatform-user": ">=1,<1.0.1", - "ezsystems/ezpublish-kernel": "<=6.13.8.1|>=7,<7.5.30", + "ezsystems/ezpublish-kernel": "<6.13.8.2|>=7,<7.5.30", "ezsystems/ezpublish-legacy": "<=2017.12.7.3|>=2018.6,<=2019.3.5.1", "ezsystems/platform-ui-assets-bundle": ">=4.2,<4.2.3", "ezsystems/repository-forms": ">=2.3,<2.3.2.1|>=2.5,<2.5.15", @@ -5256,7 +5135,7 @@ "firebase/php-jwt": "<6", "fixpunkt/fp-masterquiz": "<2.2.1|>=3,<3.5.2", "fixpunkt/fp-newsletter": "<1.1.1|>=2,<2.1.2|>=2.2,<3.2.6", - "flarum/core": "<1.6.3", + "flarum/core": "<1.7", "flarum/mentions": "<1.6.3", "flarum/sticky": ">=0.1-beta.14,<=0.1-beta.15", "flarum/tags": "<=0.1-beta.13", @@ -5266,14 +5145,16 @@ "fooman/tcpdf": "<6.2.22", "forkcms/forkcms": "<5.11.1", "fossar/tcpdf-parser": "<6.2.22", - "francoisjacquet/rosariosis": "<10.1", + "francoisjacquet/rosariosis": "<10.8.2", + "frappant/frp-form-answers": "<3.1.2|>=4,<4.0.2", "friendsofsymfony/oauth2-php": "<1.3", "friendsofsymfony/rest-bundle": ">=1.2,<1.2.2", "friendsofsymfony/user-bundle": ">=1.2,<1.3.5", "friendsoftypo3/mediace": ">=7.6.2,<7.6.5", "froala/wysiwyg-editor": "<3.2.7", - "froxlor/froxlor": "<2.0.11", + "froxlor/froxlor": "<2.0.13", "fuel/core": "<1.8.1", + "funadmin/funadmin": "<=3.2", "gaoming13/wechat-php-sdk": "<=1.10.2", "genix/cms": "<=1.1.11", "getgrav/grav": "<1.7.34", @@ -5284,7 +5165,7 @@ "globalpayments/php-sdk": "<2", "google/protobuf": "<3.15", "gos/web-socket-bundle": "<1.10.4|>=2,<2.6.1|>=3,<3.3", - "gree/jose": "<=2.2", + "gree/jose": "<2.2.1", "gregwar/rst": "<1.0.3", "grumpydictator/firefly-iii": "<5.8", "guzzlehttp/guzzle": "<6.5.8|>=7,<7.4.5", @@ -5331,6 +5212,7 @@ "kimai/kimai": "<1.1", "kitodo/presentation": "<3.1.2", "klaviyo/magento2-extension": ">=1,<3", + "knplabs/knp-snappy": "<=1.4.1", "krayin/laravel-crm": "<1.2.2", "kreait/firebase-php": ">=3.2,<3.8.1", "la-haute-societe/tcpdf": "<6.2.22", @@ -5359,6 +5241,7 @@ "magento/magento1ee": ">=1,<1.14.4.3", "magento/product-community-edition": ">=2,<2.2.10|>=2.3,<2.3.2-p.2", "maikuolan/phpmussel": ">=1,<1.6", + "mantisbt/mantisbt": "<=2.25.5", "marcwillmann/turn": "<0.3.3", "matyhtf/framework": "<3.0.6", "mautic/core": "<4.3|= 2.13.1", @@ -5369,14 +5252,14 @@ "melisplatform/melis-front": "<5.0.1", "mezzio/mezzio-swoole": "<3.7|>=4,<4.3", "mgallegos/laravel-jqgrid": "<=1.3", - "microweber/microweber": "<1.3.2", + "microweber/microweber": "<=1.3.2", "miniorange/miniorange-saml": "<1.4.3", "mittwald/typo3_forum": "<1.2.1", "mobiledetect/mobiledetectlib": "<2.8.32", "modx/revolution": "<= 2.8.3-pl|<2.8", "mojo42/jirafeau": "<4.4", "monolog/monolog": ">=1.8,<1.12", - "moodle/moodle": "<4.0.5", + "moodle/moodle": "<4.0.7|>=4.1-beta,<4.1.2|= 3.11", "mustache/mustache": ">=2,<2.14.1", "namshi/jose": "<2.2", "neoan3-apps/template": "<1.1.1", @@ -5388,7 +5271,7 @@ "netgen/tagsbundle": ">=3.4,<3.4.11|>=4,<4.0.15", "nette/application": ">=2,<2.0.19|>=2.1,<2.1.13|>=2.2,<2.2.10|>=2.3,<2.3.14|>=2.4,<2.4.16|>=3,<3.0.6", "nette/nette": ">=2,<2.0.19|>=2.1,<2.1.13", - "nilsteampassnet/teampass": "<=2.1.27.36", + "nilsteampassnet/teampass": "<3.0.0.23", "notrinos/notrinos-erp": "<=0.7", "noumo/easyii": "<=0.9", "nukeviet/nukeviet": "<4.5.2", @@ -5429,14 +5312,15 @@ "phpmyfaq/phpmyfaq": "<=3.1.7", "phpoffice/phpexcel": "<1.8", "phpoffice/phpspreadsheet": "<1.16", - "phpseclib/phpseclib": "<2.0.31|>=3,<3.0.7", + "phpseclib/phpseclib": "<2.0.31|>=3,<3.0.19", "phpservermon/phpservermon": "<=3.5.2", "phpunit/phpunit": ">=4.8.19,<4.8.28|>=5,<5.6.3", "phpwhois/phpwhois": "<=4.2.5", "phpxmlrpc/extras": "<0.6.1", "phpxmlrpc/phpxmlrpc": "<4.9.2", "pimcore/data-hub": "<1.2.4", - "pimcore/pimcore": "<10.5.17", + "pimcore/pimcore": "<11", + "pixelfed/pixelfed": "<=0.11.4", "pocketmine/bedrock-protocol": "<8.0.2", "pocketmine/pocketmine-mp": "<4.12.5|>= 4.0.0-BETA5, < 4.4.2", "pressbooks/pressbooks": "<5.18", @@ -5444,7 +5328,7 @@ "prestashop/blockwishlist": ">=2,<2.1.1", "prestashop/contactform": ">=1.0.1,<4.3", "prestashop/gamification": "<2.3.2", - "prestashop/prestashop": "<1.7.8.8", + "prestashop/prestashop": "<8.0.1", "prestashop/productcomments": "<5.0.2", "prestashop/ps_emailsubscription": "<2.6.1", "prestashop/ps_facetedsearch": "<3.4.1", @@ -5486,7 +5370,7 @@ "silverstripe/comments": ">=1.3,<1.9.99|>=2,<2.9.99|>=3,<3.1.1", "silverstripe/forum": "<=0.6.1|>=0.7,<=0.7.3", "silverstripe/framework": "<4.11.14", - "silverstripe/graphql": "<3.5.2|>=4-alpha.1,<4-alpha.2|= 4.0.0-alpha1", + "silverstripe/graphql": "<3.5.2|>=4-alpha.1,<4-alpha.2|>=4.1.1,<4.1.2|>=4.2.2,<4.2.3|= 4.0.0-alpha1", "silverstripe/hybridsessions": ">=1,<2.4.1|>=2.5,<2.5.1", "silverstripe/registry": ">=2.1,<2.1.2|>=2.2,<2.2.1", "silverstripe/restfulserver": ">=1,<1.0.9|>=2,<2.0.4", @@ -5595,6 +5479,7 @@ "unisharp/laravel-filemanager": "<=2.5.1", "userfrosting/userfrosting": ">=0.3.1,<4.6.3", "usmanhalalit/pixie": "<1.0.3|>=2,<2.0.2", + "uvdesk/community-skeleton": "<1.1", "vanilla/safecurl": "<0.9.2", "verot/class.upload.php": "<=1.0.3|>=2,<=2.0.4", "vova07/yii2-fileapi-widget": "<0.1.9", @@ -5613,6 +5498,7 @@ "wp-cli/wp-cli": "<2.5", "wp-graphql/wp-graphql": "<0.3.5", "wpanel/wpanel4-cms": "<=4.3.1", + "wpcloud/wp-stateless": "<3.2", "wwbn/avideo": "<12.4", "xataface/xataface": "<3", "xpressengine/xpressengine": "<3.0.15", @@ -5677,6 +5563,9 @@ } ], "description": "Prevents installation of composer packages with known security vulnerabilities: no API, simply require it", + "keywords": [ + "dev" + ], "support": { "issues": "https://github.com/Roave/SecurityAdvisories/issues", "source": "https://github.com/Roave/SecurityAdvisories/tree/latest" @@ -5691,7 +5580,73 @@ "type": "tidelift" } ], - "time": "2023-02-17T21:04:14+00:00" + "time": "2023-03-24T00:14:17+00:00" + }, + { + "name": "sabre/event", + "version": "5.1.4", + "source": { + "type": "git", + "url": "https://github.com/sabre-io/event.git", + "reference": "d7da22897125d34d7eddf7977758191c06a74497" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sabre-io/event/zipball/d7da22897125d34d7eddf7977758191c06a74497", + "reference": "d7da22897125d34d7eddf7977758191c06a74497", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "~2.17.1", + "phpstan/phpstan": "^0.12", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.0" + }, + "type": "library", + "autoload": { + "files": [ + "lib/coroutine.php", + "lib/Loop/functions.php", + "lib/Promise/functions.php" + ], + "psr-4": { + "Sabre\\Event\\": "lib/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Evert Pot", + "email": "me@evertpot.com", + "homepage": "http://evertpot.com/", + "role": "Developer" + } + ], + "description": "sabre/event is a library for lightweight event-based programming", + "homepage": "http://sabre.io/event/", + "keywords": [ + "EventEmitter", + "async", + "coroutine", + "eventloop", + "events", + "hooks", + "plugin", + "promise", + "reactor", + "signal" + ], + "support": { + "forum": "https://groups.google.com/group/sabredav-discuss", + "issues": "https://github.com/sabre-io/event/issues", + "source": "https://github.com/fruux/sabre-event" + }, + "time": "2021-11-04T06:51:17+00:00" }, { "name": "sebastian/cli-parser", @@ -6659,26 +6614,25 @@ }, { "name": "spatie/array-to-xml", - "version": "2.17.1", + "version": "3.1.5", "source": { "type": "git", "url": "https://github.com/spatie/array-to-xml.git", - "reference": "5cbec9c6ab17e320c58a259f0cebe88bde4a7c46" + "reference": "13f76acef5362d15c71ae1ac6350cc3df5e25e43" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/array-to-xml/zipball/5cbec9c6ab17e320c58a259f0cebe88bde4a7c46", - "reference": "5cbec9c6ab17e320c58a259f0cebe88bde4a7c46", + "url": "https://api.github.com/repos/spatie/array-to-xml/zipball/13f76acef5362d15c71ae1ac6350cc3df5e25e43", + "reference": "13f76acef5362d15c71ae1ac6350cc3df5e25e43", "shasum": "" }, "require": { "ext-dom": "*", - "php": "^7.4|^8.0" + "php": "^8.0" }, "require-dev": { "mockery/mockery": "^1.2", "pestphp/pest": "^1.21", - "phpunit/phpunit": "^9.0", "spatie/pest-plugin-snapshots": "^1.1" }, "type": "library", @@ -6707,7 +6661,7 @@ "xml" ], "support": { - "source": "https://github.com/spatie/array-to-xml/tree/2.17.1" + "source": "https://github.com/spatie/array-to-xml/tree/3.1.5" }, "funding": [ { @@ -6719,101 +6673,478 @@ "type": "github" } ], - "time": "2022-12-26T08:22:07+00:00" + "time": "2022-12-24T13:43:51+00:00" + }, + { + "name": "squizlabs/php_codesniffer", + "version": "3.7.2", + "source": { + "type": "git", + "url": "https://github.com/squizlabs/PHP_CodeSniffer.git", + "reference": "ed8e00df0a83aa96acf703f8c2979ff33341f879" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/ed8e00df0a83aa96acf703f8c2979ff33341f879", + "reference": "ed8e00df0a83aa96acf703f8c2979ff33341f879", + "shasum": "" + }, + "require": { + "ext-simplexml": "*", + "ext-tokenizer": "*", + "ext-xmlwriter": "*", + "php": ">=5.4.0" + }, + "require-dev": { + "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0" + }, + "bin": [ + "bin/phpcs", + "bin/phpcbf" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.x-dev" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Greg Sherwood", + "role": "lead" + } + ], + "description": "PHP_CodeSniffer tokenizes PHP, JavaScript and CSS files and detects violations of a defined set of coding standards.", + "homepage": "https://github.com/squizlabs/PHP_CodeSniffer", + "keywords": [ + "phpcs", + "standards", + "static analysis" + ], + "support": { + "issues": "https://github.com/squizlabs/PHP_CodeSniffer/issues", + "source": "https://github.com/squizlabs/PHP_CodeSniffer", + "wiki": "https://github.com/squizlabs/PHP_CodeSniffer/wiki" + }, + "time": "2023-02-22T23:07:41+00:00" + }, + { + "name": "symfony/config", + "version": "v6.2.7", + "source": { + "type": "git", + "url": "https://github.com/symfony/config.git", + "reference": "249271da6f545d6579e0663374f8249a80be2893" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/config/zipball/249271da6f545d6579e0663374f8249a80be2893", + "reference": "249271da6f545d6579e0663374f8249a80be2893", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "symfony/deprecation-contracts": "^2.1|^3", + "symfony/filesystem": "^5.4|^6.0", + "symfony/polyfill-ctype": "~1.8" + }, + "conflict": { + "symfony/finder": "<5.4" + }, + "require-dev": { + "symfony/event-dispatcher": "^5.4|^6.0", + "symfony/finder": "^5.4|^6.0", + "symfony/messenger": "^5.4|^6.0", + "symfony/service-contracts": "^1.1|^2|^3", + "symfony/yaml": "^5.4|^6.0" + }, + "suggest": { + "symfony/yaml": "To use the yaml reference dumper" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Config\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Helps you find, load, combine, autofill and validate configuration values of any kind", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/config/tree/v6.2.7" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2023-02-14T08:44:56+00:00" + }, + { + "name": "symfony/dependency-injection", + "version": "v6.2.7", + "source": { + "type": "git", + "url": "https://github.com/symfony/dependency-injection.git", + "reference": "83369dd4ec84bba9673524d25b79dfbde9e6e84c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/83369dd4ec84bba9673524d25b79dfbde9e6e84c", + "reference": "83369dd4ec84bba9673524d25b79dfbde9e6e84c", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "psr/container": "^1.1|^2.0", + "symfony/deprecation-contracts": "^2.1|^3", + "symfony/service-contracts": "^1.1.6|^2.0|^3.0", + "symfony/var-exporter": "^6.2.7" + }, + "conflict": { + "ext-psr": "<1.1|>=2", + "symfony/config": "<6.1", + "symfony/finder": "<5.4", + "symfony/proxy-manager-bridge": "<6.2", + "symfony/yaml": "<5.4" + }, + "provide": { + "psr/container-implementation": "1.1|2.0", + "symfony/service-implementation": "1.1|2.0|3.0" + }, + "require-dev": { + "symfony/config": "^6.1", + "symfony/expression-language": "^5.4|^6.0", + "symfony/yaml": "^5.4|^6.0" + }, + "suggest": { + "symfony/config": "", + "symfony/expression-language": "For using expressions in service container configuration", + "symfony/finder": "For using double-star glob patterns or when GLOB_BRACE portability is required", + "symfony/yaml": "" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\DependencyInjection\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Allows you to standardize and centralize the way objects are constructed in your application", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/dependency-injection/tree/v6.2.7" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2023-02-16T14:11:02+00:00" + }, + { + "name": "symfony/event-dispatcher", + "version": "v6.2.7", + "source": { + "type": "git", + "url": "https://github.com/symfony/event-dispatcher.git", + "reference": "404b307de426c1c488e5afad64403e5f145e82a5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/404b307de426c1c488e5afad64403e5f145e82a5", + "reference": "404b307de426c1c488e5afad64403e5f145e82a5", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "symfony/event-dispatcher-contracts": "^2|^3" + }, + "conflict": { + "symfony/dependency-injection": "<5.4" + }, + "provide": { + "psr/event-dispatcher-implementation": "1.0", + "symfony/event-dispatcher-implementation": "2.0|3.0" + }, + "require-dev": { + "psr/log": "^1|^2|^3", + "symfony/config": "^5.4|^6.0", + "symfony/dependency-injection": "^5.4|^6.0", + "symfony/error-handler": "^5.4|^6.0", + "symfony/expression-language": "^5.4|^6.0", + "symfony/http-foundation": "^5.4|^6.0", + "symfony/service-contracts": "^1.1|^2|^3", + "symfony/stopwatch": "^5.4|^6.0" + }, + "suggest": { + "symfony/dependency-injection": "", + "symfony/http-kernel": "" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\EventDispatcher\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/event-dispatcher/tree/v6.2.7" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2023-02-14T08:44:56+00:00" + }, + { + "name": "symfony/event-dispatcher-contracts", + "version": "v3.2.1", + "source": { + "type": "git", + "url": "https://github.com/symfony/event-dispatcher-contracts.git", + "reference": "0ad3b6f1e4e2da5690fefe075cd53a238646d8dd" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/0ad3b6f1e4e2da5690fefe075cd53a238646d8dd", + "reference": "0ad3b6f1e4e2da5690fefe075cd53a238646d8dd", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "psr/event-dispatcher": "^1" + }, + "suggest": { + "symfony/event-dispatcher-implementation": "" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.3-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\EventDispatcher\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Generic abstractions related to dispatching event", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "support": { + "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.2.1" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2023-03-01T10:32:47+00:00" }, { - "name": "squizlabs/php_codesniffer", - "version": "3.7.1", + "name": "symfony/filesystem", + "version": "v6.2.7", "source": { "type": "git", - "url": "https://github.com/squizlabs/PHP_CodeSniffer.git", - "reference": "1359e176e9307e906dc3d890bcc9603ff6d90619" + "url": "https://github.com/symfony/filesystem.git", + "reference": "82b6c62b959f642d000456f08c6d219d749215b3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/1359e176e9307e906dc3d890bcc9603ff6d90619", - "reference": "1359e176e9307e906dc3d890bcc9603ff6d90619", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/82b6c62b959f642d000456f08c6d219d749215b3", + "reference": "82b6c62b959f642d000456f08c6d219d749215b3", "shasum": "" }, "require": { - "ext-simplexml": "*", - "ext-tokenizer": "*", - "ext-xmlwriter": "*", - "php": ">=5.4.0" - }, - "require-dev": { - "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0" + "php": ">=8.1", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-mbstring": "~1.8" }, - "bin": [ - "bin/phpcs", - "bin/phpcbf" - ], "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.x-dev" - } + "autoload": { + "psr-4": { + "Symfony\\Component\\Filesystem\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] }, "notification-url": "https://packagist.org/downloads/", "license": [ - "BSD-3-Clause" + "MIT" ], "authors": [ { - "name": "Greg Sherwood", - "role": "lead" + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" } ], - "description": "PHP_CodeSniffer tokenizes PHP, JavaScript and CSS files and detects violations of a defined set of coding standards.", - "homepage": "https://github.com/squizlabs/PHP_CodeSniffer", - "keywords": [ - "phpcs", - "standards" - ], + "description": "Provides basic utilities for the filesystem", + "homepage": "https://symfony.com", "support": { - "issues": "https://github.com/squizlabs/PHP_CodeSniffer/issues", - "source": "https://github.com/squizlabs/PHP_CodeSniffer", - "wiki": "https://github.com/squizlabs/PHP_CodeSniffer/wiki" + "source": "https://github.com/symfony/filesystem/tree/v6.2.7" }, - "time": "2022-06-18T07:21:10+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2023-02-14T08:44:56+00:00" }, { - "name": "symfony/config", - "version": "v6.2.5", + "name": "symfony/finder", + "version": "v6.2.7", "source": { "type": "git", - "url": "https://github.com/symfony/config.git", - "reference": "f31b3c78a3650157188a240695e688d6a182aa91" + "url": "https://github.com/symfony/finder.git", + "reference": "20808dc6631aecafbe67c186af5dcb370be3a0eb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/config/zipball/f31b3c78a3650157188a240695e688d6a182aa91", - "reference": "f31b3c78a3650157188a240695e688d6a182aa91", + "url": "https://api.github.com/repos/symfony/finder/zipball/20808dc6631aecafbe67c186af5dcb370be3a0eb", + "reference": "20808dc6631aecafbe67c186af5dcb370be3a0eb", "shasum": "" }, "require": { - "php": ">=8.1", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/filesystem": "^5.4|^6.0", - "symfony/polyfill-ctype": "~1.8" - }, - "conflict": { - "symfony/finder": "<5.4" + "php": ">=8.1" }, "require-dev": { - "symfony/event-dispatcher": "^5.4|^6.0", - "symfony/finder": "^5.4|^6.0", - "symfony/messenger": "^5.4|^6.0", - "symfony/service-contracts": "^1.1|^2|^3", - "symfony/yaml": "^5.4|^6.0" - }, - "suggest": { - "symfony/yaml": "To use the yaml reference dumper" + "symfony/filesystem": "^6.0" }, "type": "library", "autoload": { "psr-4": { - "Symfony\\Component\\Config\\": "" + "Symfony\\Component\\Finder\\": "" }, "exclude-from-classmap": [ "/Tests/" @@ -6833,10 +7164,10 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Helps you find, load, combine, autofill and validate configuration values of any kind", + "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/config/tree/v6.2.5" + "source": "https://github.com/symfony/finder/tree/v6.2.7" }, "funding": [ { @@ -6852,55 +7183,30 @@ "type": "tidelift" } ], - "time": "2023-01-09T04:38:22+00:00" + "time": "2023-02-16T09:57:23+00:00" }, { - "name": "symfony/dependency-injection", - "version": "v6.2.6", + "name": "symfony/options-resolver", + "version": "v6.2.7", "source": { "type": "git", - "url": "https://github.com/symfony/dependency-injection.git", - "reference": "2a6dd148589b9db59717db8b75f8d9fbb2ae714f" + "url": "https://github.com/symfony/options-resolver.git", + "reference": "aa0e85b53bbb2b4951960efd61d295907eacd629" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/2a6dd148589b9db59717db8b75f8d9fbb2ae714f", - "reference": "2a6dd148589b9db59717db8b75f8d9fbb2ae714f", + "url": "https://api.github.com/repos/symfony/options-resolver/zipball/aa0e85b53bbb2b4951960efd61d295907eacd629", + "reference": "aa0e85b53bbb2b4951960efd61d295907eacd629", "shasum": "" }, "require": { "php": ">=8.1", - "psr/container": "^1.1|^2.0", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/service-contracts": "^1.1.6|^2.0|^3.0", - "symfony/var-exporter": "^6.2" - }, - "conflict": { - "ext-psr": "<1.1|>=2", - "symfony/config": "<6.1", - "symfony/finder": "<5.4", - "symfony/proxy-manager-bridge": "<6.2", - "symfony/yaml": "<5.4" - }, - "provide": { - "psr/container-implementation": "1.1|2.0", - "symfony/service-implementation": "1.1|2.0|3.0" - }, - "require-dev": { - "symfony/config": "^6.1", - "symfony/expression-language": "^5.4|^6.0", - "symfony/yaml": "^5.4|^6.0" - }, - "suggest": { - "symfony/config": "", - "symfony/expression-language": "For using expressions in service container configuration", - "symfony/finder": "For using double-star glob patterns or when GLOB_BRACE portability is required", - "symfony/yaml": "" + "symfony/deprecation-contracts": "^2.1|^3" }, "type": "library", "autoload": { "psr-4": { - "Symfony\\Component\\DependencyInjection\\": "" + "Symfony\\Component\\OptionsResolver\\": "" }, "exclude-from-classmap": [ "/Tests/" @@ -6920,10 +7226,15 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Allows you to standardize and centralize the way objects are constructed in your application", + "description": "Provides an improved replacement for the array_replace PHP function", "homepage": "https://symfony.com", + "keywords": [ + "config", + "configuration", + "options" + ], "support": { - "source": "https://github.com/symfony/dependency-injection/tree/v6.2.6" + "source": "https://github.com/symfony/options-resolver/tree/v6.2.7" }, "funding": [ { @@ -6939,34 +7250,44 @@ "type": "tidelift" } ], - "time": "2023-01-30T15:46:28+00:00" + "time": "2023-02-14T08:44:56+00:00" }, { - "name": "symfony/filesystem", - "version": "v6.2.5", + "name": "symfony/polyfill-php80", + "version": "v1.27.0", "source": { "type": "git", - "url": "https://github.com/symfony/filesystem.git", - "reference": "e59e8a4006afd7f5654786a83b4fcb8da98f4593" + "url": "https://github.com/symfony/polyfill-php80.git", + "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/e59e8a4006afd7f5654786a83b4fcb8da98f4593", - "reference": "e59e8a4006afd7f5654786a83b4fcb8da98f4593", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", + "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", "shasum": "" }, "require": { - "php": ">=8.1", - "symfony/polyfill-ctype": "~1.8", - "symfony/polyfill-mbstring": "~1.8" + "php": ">=7.1" }, "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.27-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, "autoload": { + "files": [ + "bootstrap.php" + ], "psr-4": { - "Symfony\\Component\\Filesystem\\": "" + "Symfony\\Polyfill\\Php80\\": "" }, - "exclude-from-classmap": [ - "/Tests/" + "classmap": [ + "Resources/stubs" ] }, "notification-url": "https://packagist.org/downloads/", @@ -6975,18 +7296,28 @@ ], "authors": [ { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "name": "Ion Bazan", + "email": "ion.bazan@gmail.com" + }, + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" }, { "name": "Symfony Community", "homepage": "https://symfony.com/contributors" } ], - "description": "Provides basic utilities for the filesystem", + "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions", "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], "support": { - "source": "https://github.com/symfony/filesystem/tree/v6.2.5" + "source": "https://github.com/symfony/polyfill-php80/tree/v1.27.0" }, "funding": [ { @@ -7002,34 +7333,44 @@ "type": "tidelift" } ], - "time": "2023-01-20T17:45:48+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { - "name": "symfony/finder", - "version": "v5.4.19", + "name": "symfony/polyfill-php81", + "version": "v1.27.0", "source": { "type": "git", - "url": "https://github.com/symfony/finder.git", - "reference": "6071aebf810ad13fe8200c224f36103abb37cf1f" + "url": "https://github.com/symfony/polyfill-php81.git", + "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/6071aebf810ad13fe8200c224f36103abb37cf1f", - "reference": "6071aebf810ad13fe8200c224f36103abb37cf1f", + "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/707403074c8ea6e2edaf8794b0157a0bfa52157a", + "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/polyfill-php80": "^1.16" + "php": ">=7.1" }, "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.27-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, "autoload": { + "files": [ + "bootstrap.php" + ], "psr-4": { - "Symfony\\Component\\Finder\\": "" + "Symfony\\Polyfill\\Php81\\": "" }, - "exclude-from-classmap": [ - "/Tests/" + "classmap": [ + "Resources/stubs" ] }, "notification-url": "https://packagist.org/downloads/", @@ -7038,18 +7379,24 @@ ], "authors": [ { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" + "name": "Nicolas Grekas", + "email": "p@tchwork.com" }, { "name": "Symfony Community", "homepage": "https://symfony.com/contributors" } ], - "description": "Finds files and directories via an intuitive fluent interface", + "description": "Symfony polyfill backporting some PHP 8.1+ features to lower PHP versions", "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], "support": { - "source": "https://github.com/symfony/finder/tree/v5.4.19" + "source": "https://github.com/symfony/polyfill-php81/tree/v1.27.0" }, "funding": [ { @@ -7065,20 +7412,20 @@ "type": "tidelift" } ], - "time": "2023-01-14T19:14:44+00:00" + "time": "2022-11-03T14:55:06+00:00" }, { "name": "symfony/stopwatch", - "version": "v6.2.5", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/symfony/stopwatch.git", - "reference": "00b6ac156aacffc53487c930e0ab14587a6607f6" + "reference": "f3adc98c1061875dd2edcd45e5b04e63d0e29f8f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/stopwatch/zipball/00b6ac156aacffc53487c930e0ab14587a6607f6", - "reference": "00b6ac156aacffc53487c930e0ab14587a6607f6", + "url": "https://api.github.com/repos/symfony/stopwatch/zipball/f3adc98c1061875dd2edcd45e5b04e63d0e29f8f", + "reference": "f3adc98c1061875dd2edcd45e5b04e63d0e29f8f", "shasum": "" }, "require": { @@ -7111,7 +7458,7 @@ "description": "Provides a way to profile code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/stopwatch/tree/v6.2.5" + "source": "https://github.com/symfony/stopwatch/tree/v6.2.7" }, "funding": [ { @@ -7127,20 +7474,20 @@ "type": "tidelift" } ], - "time": "2023-01-01T08:36:55+00:00" + "time": "2023-02-14T08:44:56+00:00" }, { "name": "symfony/var-dumper", - "version": "v6.2.5", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "44b7b81749fd20c1bdf4946c041050e22bc8da27" + "reference": "cf8d4ca1ddc1e3cc242375deb8fc23e54f5e2a1e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/44b7b81749fd20c1bdf4946c041050e22bc8da27", - "reference": "44b7b81749fd20c1bdf4946c041050e22bc8da27", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/cf8d4ca1ddc1e3cc242375deb8fc23e54f5e2a1e", + "reference": "cf8d4ca1ddc1e3cc242375deb8fc23e54f5e2a1e", "shasum": "" }, "require": { @@ -7199,7 +7546,7 @@ "dump" ], "support": { - "source": "https://github.com/symfony/var-dumper/tree/v6.2.5" + "source": "https://github.com/symfony/var-dumper/tree/v6.2.7" }, "funding": [ { @@ -7215,20 +7562,20 @@ "type": "tidelift" } ], - "time": "2023-01-20T17:45:48+00:00" + "time": "2023-02-24T10:42:00+00:00" }, { "name": "symfony/var-exporter", - "version": "v6.2.5", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/symfony/var-exporter.git", - "reference": "108f9c6451eea8e04a7fb83bbacb5b812ef30e35" + "reference": "86062dd0103530e151588c8f60f5b85a139f1442" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-exporter/zipball/108f9c6451eea8e04a7fb83bbacb5b812ef30e35", - "reference": "108f9c6451eea8e04a7fb83bbacb5b812ef30e35", + "url": "https://api.github.com/repos/symfony/var-exporter/zipball/86062dd0103530e151588c8f60f5b85a139f1442", + "reference": "86062dd0103530e151588c8f60f5b85a139f1442", "shasum": "" }, "require": { @@ -7273,7 +7620,7 @@ "serialize" ], "support": { - "source": "https://github.com/symfony/var-exporter/tree/v6.2.5" + "source": "https://github.com/symfony/var-exporter/tree/v6.2.7" }, "funding": [ { @@ -7289,32 +7636,31 @@ "type": "tidelift" } ], - "time": "2023-01-13T08:35:57+00:00" + "time": "2023-02-24T10:42:00+00:00" }, { "name": "symfony/yaml", - "version": "v5.4.19", + "version": "v6.2.7", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "71c05db20cb9b54d381a28255f17580e2b7e36a5" + "reference": "e8e6a1d59e050525f27a1f530aa9703423cb7f57" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/71c05db20cb9b54d381a28255f17580e2b7e36a5", - "reference": "71c05db20cb9b54d381a28255f17580e2b7e36a5", + "url": "https://api.github.com/repos/symfony/yaml/zipball/e8e6a1d59e050525f27a1f530aa9703423cb7f57", + "reference": "e8e6a1d59e050525f27a1f530aa9703423cb7f57", "shasum": "" }, "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", + "php": ">=8.1", "symfony/polyfill-ctype": "^1.8" }, "conflict": { - "symfony/console": "<5.3" + "symfony/console": "<5.4" }, "require-dev": { - "symfony/console": "^5.3|^6.0" + "symfony/console": "^5.4|^6.0" }, "suggest": { "symfony/console": "For validating YAML files using the lint command" @@ -7348,7 +7694,7 @@ "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/v5.4.19" + "source": "https://github.com/symfony/yaml/tree/v6.2.7" }, "funding": [ { @@ -7364,7 +7710,7 @@ "type": "tidelift" } ], - "time": "2023-01-10T18:51:14+00:00" + "time": "2023-02-16T09:57:23+00:00" }, { "name": "theseer/tokenizer", @@ -7416,6 +7762,68 @@ ], "time": "2021-07-28T10:34:58+00:00" }, + { + "name": "tysonandre/var_representation_polyfill", + "version": "0.1.3", + "source": { + "type": "git", + "url": "https://github.com/TysonAndre/var_representation_polyfill.git", + "reference": "e9116c2c352bb0835ca428b442dde7767c11ad32" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/TysonAndre/var_representation_polyfill/zipball/e9116c2c352bb0835ca428b442dde7767c11ad32", + "reference": "e9116c2c352bb0835ca428b442dde7767c11ad32", + "shasum": "" + }, + "require": { + "ext-tokenizer": "*", + "php": "^7.2.0|^8.0.0" + }, + "provide": { + "ext-var_representation": "*" + }, + "require-dev": { + "phan/phan": "^5.4.1", + "phpunit/phpunit": "^8.5.0" + }, + "suggest": { + "ext-var_representation": "For best performance" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "0.1.3-dev" + } + }, + "autoload": { + "files": [ + "src/var_representation.php" + ], + "psr-4": { + "VarRepresentation\\": "src/VarRepresentation" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Tyson Andre" + } + ], + "description": "Polyfill for var_representation: convert a variable to a string in a way that fixes the shortcomings of var_export", + "keywords": [ + "var_export", + "var_representation" + ], + "support": { + "issues": "https://github.com/TysonAndre/var_representation_polyfill/issues", + "source": "https://github.com/TysonAndre/var_representation_polyfill/tree/0.1.3" + }, + "time": "2022-08-31T12:59:22+00:00" + }, { "name": "ulrichsg/getopt-php", "version": "v4.0.3", @@ -7469,22 +7877,22 @@ }, { "name": "vimeo/psalm", - "version": "5.6.0", + "version": "5.8.0", "source": { "type": "git", "url": "https://github.com/vimeo/psalm.git", - "reference": "e784128902dfe01d489c4123d69918a9f3c1eac5" + "reference": "9cf4f60a333f779ad3bc704a555920e81d4fdcda" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/vimeo/psalm/zipball/e784128902dfe01d489c4123d69918a9f3c1eac5", - "reference": "e784128902dfe01d489c4123d69918a9f3c1eac5", + "url": "https://api.github.com/repos/vimeo/psalm/zipball/9cf4f60a333f779ad3bc704a555920e81d4fdcda", + "reference": "9cf4f60a333f779ad3bc704a555920e81d4fdcda", "shasum": "" }, "require": { "amphp/amp": "^2.4.2", "amphp/byte-stream": "^1.5", - "composer/package-versions-deprecated": "^1.10.0", + "composer-runtime-api": "^2", "composer/semver": "^1.4 || ^2.0 || ^3.0", "composer/xdebug-handler": "^2.0 || ^3.0", "dnoegel/php-xdg-base-dir": "^0.1.1", @@ -7497,12 +7905,12 @@ "ext-tokenizer": "*", "felixfbecker/advanced-json-rpc": "^3.1", "felixfbecker/language-server-protocol": "^1.5.2", - "fidry/cpu-core-counter": "^0.4.0", + "fidry/cpu-core-counter": "^0.4.1 || ^0.5.1", "netresearch/jsonmapper": "^1.0 || ^2.0 || ^3.0 || ^4.0", - "nikic/php-parser": "^4.13", + "nikic/php-parser": "^4.14", "php": "^7.4 || ~8.0.0 || ~8.1.0 || ~8.2.0", "sebastian/diff": "^4.0 || ^5.0", - "spatie/array-to-xml": "^2.17.0", + "spatie/array-to-xml": "^2.17.0 || ^3.0", "symfony/console": "^4.1.6 || ^5.0 || ^6.0", "symfony/filesystem": "^5.4 || ^6.0" }, @@ -7511,13 +7919,13 @@ }, "require-dev": { "bamarni/composer-bin-plugin": "^1.4", - "brianium/paratest": "^6.0", + "brianium/paratest": "^6.9", "ext-curl": "*", "mockery/mockery": "^1.5", "nunomaduro/mock-final-classes": "^1.1", "php-parallel-lint/php-parallel-lint": "^1.2", "phpstan/phpdoc-parser": "^1.6", - "phpunit/phpunit": "^9.5", + "phpunit/phpunit": "^9.6", "psalm/plugin-mockery": "^1.1", "psalm/plugin-phpunit": "^0.18", "slevomat/coding-standard": "^8.4", @@ -7563,13 +7971,14 @@ "keywords": [ "code", "inspection", - "php" + "php", + "static analysis" ], "support": { "issues": "https://github.com/vimeo/psalm/issues", - "source": "https://github.com/vimeo/psalm/tree/5.6.0" + "source": "https://github.com/vimeo/psalm/tree/5.8.0" }, - "time": "2023-01-23T20:32:47+00:00" + "time": "2023-03-09T04:14:35+00:00" }, { "name": "webmozart/assert", @@ -7631,14 +8040,20 @@ } ], "aliases": [], - "minimum-stability": "stable", + "minimum-stability": "dev", "stability-flags": { + "jbzoo/data": 20, + "jbzoo/utils": 20, + "jbzoo/cli": 20, + "jbzoo/markdown": 20, + "jbzoo/toolbox-dev": 20, + "jbzoo/mermaid-php": 20, "roave/security-advisories": 20 }, - "prefer-stable": false, + "prefer-stable": true, "prefer-lowest": false, "platform": { - "php": ">=7.4", + "php": "^8.1", "ext-dom": "*", "ext-simplexml": "*", "ext-hash": "*" diff --git a/phpunit.xml.dist b/phpunit.xml.dist index 9353ae6..7428d4e 100644 --- a/phpunit.xml.dist +++ b/phpunit.xml.dist @@ -1,15 +1,14 @@ getOptString('input-file')) { - if (!\realpath($filename) && !\file_exists($filename)) { + $filename = $this->getOptString('input-file'); + + if ($filename !== '') { + if (\realpath($filename) === false && !\file_exists($filename)) { $this->_("File \"{$filename}\" not found", OutLvl::ERROR); - return ''; + + return null; } return (string)\file_get_contents($filename); } - $contents = (string)self::getStdIn(); - if (\trim($contents) === '') { - throw new Exception("Please provide input-file or use STDIN as input (CLI pipeline)."); + $contents = self::getStdIn(); + if (\trim((string)$contents) === '') { + throw new Exception('Please provide input-file or use STDIN as input (CLI pipeline).'); } return $contents; } - /** - * @param string $result - * @return bool - */ protected function saveResult(string $result): bool { - if ($filename = $this->getOptString('output-file')) { + $filename = $this->getOptString('output-file'); + if ($filename !== '') { \file_put_contents($filename, $result); $this->_("Result is saved: {$filename}"); + return true; } $this->_($result); + return false; } } diff --git a/src/Commands/Convert.php b/src/Commands/Convert.php index c287537..630a3a5 100644 --- a/src/Commands/Convert.php +++ b/src/Commands/Convert.php @@ -1,88 +1,117 @@ setName('convert') ->setDescription('Convert one report format to another one') - ->addOption('input-format', 'S', $req, 'Source format. Available options: ' - . \implode(', ', Map::getAvailableFormats(Map::INPUT)) . '', CheckStyleConverter::TYPE) - ->addOption('input-file', 'I', $opt, "File path with the original report format. " . - "If not set or empty, then the STDIN is used.") - ->addOption('output-format', 'T', $req, 'Target format. Available options: ' - . \implode(', ', Map::getAvailableFormats(Map::OUTPUT)) . '', TeamCityTestsConverter::TYPE) - ->addOption('output-file', 'O', $opt, "File path with the result report format. " . - "If not set or empty, then the STDOUT is used.") - ->addOption('root-path', 'R', $opt, 'If option is set, ' . - 'all absolute file paths will be converted to relative once.', '.') - ->addOption('suite-name', 'N', $req, "Set custom name of root group/suite (if it's possible).") - ->addOption('tc-flow-id', 'F', $opt, 'Custom flowId in TeamCity output. Default value is PID of the tool.') - ->addOption('non-zero-code', 'Q', $opt, 'Will exit with the code=1, if any violations are found.', 'no'); + ->addOption( + 'input-format', + 'S', + InputOption::VALUE_REQUIRED, + 'Source format. Available options: ' . \implode( + ', ', + Map::getAvailableFormats(Map::INPUT), + ) . '', + CheckStyleConverter::TYPE, + ) + ->addOption( + 'input-file', + 'I', + InputOption::VALUE_OPTIONAL, + 'File path with the original report format. If not set or empty, then the STDIN is used.', + ) + ->addOption( + 'output-format', + 'T', + InputOption::VALUE_REQUIRED, + 'Target format. Available options: ' . \implode( + ', ', + Map::getAvailableFormats(Map::OUTPUT), + ) . '', + TeamCityTestsConverter::TYPE, + ) + ->addOption( + 'output-file', + 'O', + InputOption::VALUE_OPTIONAL, + 'File path with the result report format. If not set or empty, then the STDOUT is used.', + ) + ->addOption( + 'root-path', + 'R', + InputOption::VALUE_OPTIONAL, + 'If option is set, all absolute file paths will be converted to relative once.', + '.', + ) + ->addOption( + 'suite-name', + 'N', + InputOption::VALUE_REQUIRED, + "Set custom name of root group/suite (if it's possible).", + ) + ->addOption( + 'tc-flow-id', + 'F', + InputOption::VALUE_OPTIONAL, + 'Custom flowId in TeamCity output. Default value is PID of the tool.', + ) + ->addOption( + 'non-zero-code', + 'Q', + InputOption::VALUE_OPTIONAL, + 'Will exit with the code=1, if any violations are found.', + 'no', + ); parent::configure(); } - /** - * @inheritDoc - */ protected function executeAction(): int { $sourceReport = $this->getSourceCode(); - $rootPath = $this->getOptString('root-path') ?: null; - $suiteName = $this->getOptString('suite-name') ?: null; - $nonZeroCode = bool($this->getOptBool('non-zero-code')); + $rootPath = $this->getOptString('root-path'); + $suiteName = $this->getOptString('suite-name'); + $nonZeroCode = $this->getOptBool('non-zero-code'); $casesAreFound = false; - if ($sourceReport) { + if ($sourceReport !== null) { $internalReport = Map::getConverter($this->getFormat('input-format'), Map::INPUT) ->setRootPath($rootPath) ->setRootSuiteName($suiteName) ->toInternal($sourceReport); - $errorsCount = $internalReport->getErrorsCount(); + $errorsCount = $internalReport->getErrorsCount(); $warningCount = $internalReport->getWarningCount(); $failureCount = $internalReport->getFailureCount(); - $casesAreFound = $errorsCount || $warningCount || $failureCount; + $casesAreFound = $errorsCount > 0 || $warningCount > 0 || $failureCount > 0; $targetReport = Map::getConverter($this->getFormat('output-format'), Map::OUTPUT) ->setRootPath($rootPath) @@ -108,10 +137,6 @@ protected function executeAction(): int return $nonZeroCode && $casesAreFound ? Codes::GENERAL_ERROR : Codes::OK; } - /** - * @param string $optionName - * @return string - */ private function getFormat(string $optionName): string { $format = \strtolower($this->getOptString($optionName)); @@ -121,7 +146,7 @@ private function getFormat(string $optionName): string if (!\in_array($format, $validFormats, true)) { throw new Exception( "Format \"{$format}\" not found. See the option \"--{$optionName}\".\n" . - "Available options: " . \implode(',', $validFormats) + 'Available options: ' . \implode(',', $validFormats), ); } diff --git a/src/Commands/ConvertMap.php b/src/Commands/ConvertMap.php index 032fa46..ce963a4 100644 --- a/src/Commands/ConvertMap.php +++ b/src/Commands/ConvertMap.php @@ -1,34 +1,27 @@ _(Map::getMarkdownTable()); + $tableData = Map::getTable(); + $header = \array_keys($tableData); + + $rows = []; + + foreach ($tableData as $key => $info) { + $rows[$key] = \array_values(\array_map(static fn (bool $value) => $value ? 'Yes' : '-', $info)); + + \array_unshift($rows[$key], $key); + } + + \array_unshift($header, 'Source/Target'); + + $output = (new Table()) + ->setHeaders($header) + ->appendRows($rows) + ->render(); + + $this->_($output); + return Codes::OK; } } diff --git a/src/Commands/Exception.php b/src/Commands/Exception.php index 62a16f1..1fd5a11 100644 --- a/src/Commands/Exception.php +++ b/src/Commands/Exception.php @@ -1,26 +1,21 @@ ' . \implode(', ', Map::getAvailableMetrics()) . ''; - $this ->setName('teamcity:stats') ->setDescription('Push code metrics to TeamCity Stats') - ->addOption('input-format', 'S', $req, "Source format. {$formats}") - ->addOption('input-file', 'I', $opt, "File path with the original report format. " . - "If not set or empty, then the STDIN is used.") - ->addOption('output-file', 'O', $opt, "File path with the result report format. " . - "If not set or empty, then the STDOUT is used.") - ->addOption('root-path', 'R', $opt, 'If option is set, ' . - 'all absolute file paths will be converted to relative once.', '.') - ->addOption('tc-flow-id', 'F', $opt, 'Custom flowId in TeamCity output. Default value is PID of the tool.'); + ->addOption( + 'input-format', + 'S', + InputOption::VALUE_REQUIRED, + 'Source format. Available options: ' . \implode( + ', ', + Map::getAvailableMetrics(), + ) . '', + ) + ->addOption( + 'input-file', + 'I', + InputOption::VALUE_OPTIONAL, + 'File path with the original report format. ' . + 'If not set or empty, then the STDIN is used.', + ) + ->addOption( + 'output-file', + 'O', + InputOption::VALUE_OPTIONAL, + 'File path with the result report format. ' . + 'If not set or empty, then the STDOUT is used.', + ) + ->addOption( + 'root-path', + 'R', + InputOption::VALUE_OPTIONAL, + 'If option is set, ' . + 'all absolute file paths will be converted to relative once.', + '.', + ) + ->addOption( + 'tc-flow-id', + 'F', + InputOption::VALUE_OPTIONAL, + 'Custom flowId in TeamCity output. Default value is PID of the tool.', + ); parent::configure(); } - /** - * @inheritDoc - */ protected function executeAction(): int { $inputFormat = $this->getFormat(); - $output = self::convertMetric($this->getSourceCode(), $inputFormat, $this->getOptInt('tc-flow-id')); + $output = self::convertMetric( + $this->getSourceCode(), + $inputFormat, + $this->getOptInt('tc-flow-id'), + ); $this->saveResult($output); return Codes::OK; } - /** - * @return string - */ private function getFormat(): string { $format = \strtolower($this->getOptString('input-format')); @@ -77,24 +91,17 @@ private function getFormat(): string if (!\in_array($format, $validFormats, true)) { throw new Exception( - "Format \"{$format}\" not found. See the option \"--input-format\".\n" . - "Available options: " . \implode(',', $validFormats) + "Format \"{$format}\" not found. See help for the option \"--input-format\".\n" . + 'Available options: ' . \implode(',', $validFormats), ); } return $format; } - /** - * @param string $sourceCode - * @param string $sourceFormat - * @param int|null $flowId - * @return string - */ - private static function convertMetric(string $sourceCode, string $sourceFormat, ?int $flowId = null): string + private static function convertMetric(?string $sourceCode, string $sourceFormat, int $flowId = 0): string { - $sourceCode = \trim($sourceCode); - if ('' === $sourceCode) { + if ($sourceCode === null) { return ''; } diff --git a/src/Converters/AbstractConverter.php b/src/Converters/AbstractConverter.php index 64d1938..d1fa3f0 100644 --- a/src/Converters/AbstractConverter.php +++ b/src/Converters/AbstractConverter.php @@ -1,51 +1,36 @@ rootPath = (string)$rootPath ?: null; + $this->rootPath = $rootPath === false || $rootPath === '' ? null : $rootPath; + return $this; } - /** - * @param string|null $rootSuiteName - * @return $this - */ public function setRootSuiteName(?string $rootSuiteName): self { $this->rootSuiteName = $rootSuiteName; + return $this; } - /** - * @param int $flowId - * @return $this - */ public function setFlowId(int $flowId): self { $this->flowId = $flowId; + return $this; } - /** - * @param string $origPath - * @return string - */ - protected function cleanFilepath(string $origPath): string + protected function cleanFilepath(?string $origPath): string { - if ($this->rootPath && $origPath) { + if ( + $this->rootPath !== null + && $this->rootPath !== '' + && $origPath !== '' + && $origPath !== null + ) { return \str_replace(\rtrim($this->rootPath, '/') . '/', '', $origPath); } - return $origPath; + return (string)$origPath; } - /** - * @param string|null $relFilename - * @return string|null - */ protected function getFullPath(?string $relFilename): ?string { - if (!$relFilename) { + if ($relFilename === '' || $relFilename === null) { return null; } - if ($absFilename = \realpath($relFilename)) { + $absFilename = \realpath($relFilename); + if ($absFilename !== false) { return $absFilename; } - if ($this->rootPath) { - $rootPath = \rtrim($this->rootPath, '/'); + if ($this->rootPath !== null && $this->rootPath !== '') { + $rootPath = \rtrim($this->rootPath, '/'); $relFilename = \ltrim($relFilename, '.'); $relFilename = \ltrim($relFilename, '/'); - if ($absFilename = \realpath($rootPath . '/' . $relFilename)) { + $absFilename = \realpath($rootPath . '/' . $relFilename); + if ($absFilename !== false) { return $absFilename; } } @@ -139,15 +112,12 @@ protected function getFullPath(?string $relFilename): ?string return $relFilename; } - /** - * @param string|null $filename - * @param string|int|null $line - * @param string|int|null $column - * @return string|null - */ - protected static function getFilePoint(?string $filename = null, $line = 0, $column = 0): ?string - { - if (!$filename) { + protected static function getFilePoint( + ?string $filename = null, + int|string|null $line = 0, + int|string|null $column = 0, + ): ?string { + if ($filename === '' || $filename === null) { return null; } diff --git a/src/Converters/AbstractStatsTcConverter.php b/src/Converters/AbstractStatsTcConverter.php index 91fff8a..a8a477b 100644 --- a/src/Converters/AbstractStatsTcConverter.php +++ b/src/Converters/AbstractStatsTcConverter.php @@ -1,81 +1,40 @@ tcLogger = new TeamCity($tcWriter ?: new Buffer(), $flowId, $params); - } - - /** - * @param array $data - * @param AbstractMetricMap $map - * @return Metrics - */ - protected static function buildMetrics(array $data, AbstractMetricMap $map): Metrics + public function __construct(array $params = [], int $flowId = 0, ?AbstractWriter $tcWriter = null) { - $metrics = new Metrics(); - $metrics->setMap($map); - - foreach ($data as $key => $value) { - if (null === $value || '' === $value) { - continue; - } - - if (\is_float($value) || \strpos((string)$value, '.') !== false) { - $metrics->add((string)$key, float($value, 6)); - } else { - $metrics->add((string)$key, int($value)); - } - } - - return $metrics; + $this->tcLogger = new TeamCity($tcWriter ?? new Buffer(), $flowId, $params); } /** - * @param string $sourceCode - * @return Metrics * @phan-suppress PhanUnusedPublicMethodParameter * @SuppressWarnings(PHPMD.UnusedFormalParameter) */ @@ -84,10 +43,6 @@ public function toInternalMetric(string $sourceCode): Metrics throw new Exception('Method \"' . __METHOD__ . '\" is not available'); } - /** - * @param Metrics $metrics - * @return string - */ public function fromInternalMetric(Metrics $metrics): string { foreach ($metrics->getMetrics() as $metric) { @@ -104,4 +59,24 @@ public function fromInternalMetric(Metrics $metrics): string return ''; } + + protected static function buildMetrics(array $data, AbstractMetricMap $map): Metrics + { + $metrics = new Metrics(); + $metrics->setMap($map); + + foreach ($data as $key => $value) { + if ($value === null || $value === '') { + continue; + } + + if (\is_float($value) || \str_contains((string)$value, '.')) { + $metrics->add((string)$key, float($value, 6)); + } else { + $metrics->add((string)$key, int($value)); + } + } + + return $metrics; + } } diff --git a/src/Converters/CheckStyleConverter.php b/src/Converters/CheckStyleConverter.php index 797287c..3ae6422 100644 --- a/src/Converters/CheckStyleConverter.php +++ b/src/Converters/CheckStyleConverter.php @@ -1,75 +1,69 @@ rootSuiteName ?: 'CheckStyle'); + $sourceSuite = new SourceSuite( + $this->rootSuiteName === '' || $this->rootSuiteName === null ? 'CheckStyle' : $this->rootSuiteName, + ); foreach ($xmlAsArray['_children'] as $files) { foreach ($files['_children'] as $file) { $relFilename = $this->cleanFilepath($file['_attrs']['name'] ?? 'undefined'); $absFilename = $this->getFullPath($relFilename); - $suite = $sourceSuite->addSuite($relFilename); + $suite = $sourceSuite->addSuite($relFilename); $suite->file = $absFilename; foreach ($file['_children'] as $errorNode) { $error = data($errorNode['_attrs']); $error->set('full_path', $absFilename); - $line = $error->get('line'); - $column = $error->get('column'); - $type = $error->get('source') ?? 'ERROR'; + $line = $error->getIntNull('line'); + $column = $error->getIntNull('column'); + $type = $error->getStringNull('source') ?? 'ERROR'; $caseName = $line > 0 ? "{$relFilename} line {$line}" : $relFilename; $caseName = $column > 0 ? "{$caseName}, column {$column}" : $caseName; - $case = $suite->addTestCase($caseName); - $case->file = $absFilename; - $case->line = $line ?: null; - $case->column = $column ?: null; - $case->class = $type; + $case = $suite->addTestCase($caseName); + $case->file = $absFilename; + $case->line = $line; + $case->column = $column; + $case->class = $type; $case->classname = $type; - $case->failure = new SourceCaseOutput($type, $error->get('message'), self::getDetails($error)); + $case->failure = new SourceCaseOutput($type, $error->get('message'), self::getDetails($error)); } } } @@ -77,10 +71,6 @@ public function toInternal(string $source): SourceSuite return $sourceSuite; } - /** - * @param Data $data - * @return string|null - */ private static function getDetails(Data $data): ?string { return Helper::descAsList([ diff --git a/src/Converters/Exception.php b/src/Converters/Exception.php index 44a2e74..0cbaca6 100644 --- a/src/Converters/Exception.php +++ b/src/Converters/Exception.php @@ -1,26 +1,21 @@ renderSuite($sourceSuite, $gitLabJson); - return (string)$gitLabJson; + return (string)$gitLabJson . \PHP_EOL; } - /** - * @param SourceSuite $sourceSuite - * @param GitLabJson $gitLabJson - */ private function renderSuite(SourceSuite $sourceSuite, GitLabJson $gitLabJson): void { foreach ($sourceSuite->getCases() as $sourceCase) { @@ -58,35 +48,31 @@ private function renderSuite(SourceSuite $sourceSuite, GitLabJson $gitLabJson): } } - /** - * @param SourceCase $sourceCase - * @param GitLabJson $gitLabJson - */ private function renderTestCase(SourceCase $sourceCase, GitLabJson $gitLabJson): void { - if (null !== $sourceCase->stdOut) { + if ($sourceCase->stdOut !== null) { $severity = GitLabJsonCase::SEVERITY_INFO; - } elseif (null !== $sourceCase->errOut) { + } elseif ($sourceCase->errOut !== null) { $severity = GitLabJsonCase::SEVERITY_MAJOR; - } elseif (null !== $sourceCase->failure) { + } elseif ($sourceCase->failure !== null) { $severity = GitLabJsonCase::SEVERITY_BLOCKER; - } elseif (null !== $sourceCase->error) { + } elseif ($sourceCase->error !== null) { $severity = GitLabJsonCase::SEVERITY_BLOCKER; - } elseif (null !== $sourceCase->warning) { + } elseif ($sourceCase->warning !== null) { $severity = GitLabJsonCase::SEVERITY_MAJOR; - } elseif (null !== $sourceCase->skipped) { + } elseif ($sourceCase->skipped !== null) { $severity = GitLabJsonCase::SEVERITY_INFO; } else { $severity = GitLabJsonCase::SEVERITY_MAJOR; } $description = $sourceCase->getMessage(); - if ($description) { - $case = $gitLabJson->addCase(); + if ($description !== null && $description !== '') { + $case = $gitLabJson->addCase(); $case->description = $this->cleanFilepath($description); - $case->severity = $severity; - $case->name = $this->cleanFilepath($sourceCase->file ?: ''); - $case->line = $sourceCase->line; + $case->severity = $severity; + $case->name = $this->cleanFilepath($sourceCase->file); + $case->line = $sourceCase->line; } } } diff --git a/src/Converters/GithubCliConverter.php b/src/Converters/GithubCliConverter.php index fa0a6e6..e747abd 100644 --- a/src/Converters/GithubCliConverter.php +++ b/src/Converters/GithubCliConverter.php @@ -1,45 +1,37 @@ rootSuiteName) { + if ($this->rootSuiteName !== '' && $this->rootSuiteName !== null) { $this->renderSuite($sourceSuite, $ghActions->addSuite($this->rootSuiteName)); } else { $this->renderSuite($sourceSuite, $ghActions); @@ -49,7 +41,6 @@ public function fromInternal(SourceSuite $sourceSuite): string } /** - * @param SourceSuite $sourceSuite * @param GithubActions|GithubSuite $ghActions */ private function renderSuite(SourceSuite $sourceSuite, $ghActions): void @@ -64,33 +55,32 @@ private function renderSuite(SourceSuite $sourceSuite, $ghActions): void } /** - * @param SourceCase $sourceCase * @param GithubActions|GithubSuite $ghActions */ private function renderTestCase(SourceCase $sourceCase, $ghActions): void { - if (null !== $sourceCase->stdOut) { + if ($sourceCase->stdOut !== null) { $level = GithubCase::LEVEL_ERROR; - } elseif (null !== $sourceCase->errOut) { + } elseif ($sourceCase->errOut !== null) { $level = GithubCase::LEVEL_ERROR; - } elseif (null !== $sourceCase->failure) { + } elseif ($sourceCase->failure !== null) { $level = GithubCase::LEVEL_ERROR; - } elseif (null !== $sourceCase->error) { + } elseif ($sourceCase->error !== null) { $level = GithubCase::LEVEL_ERROR; - } elseif (null !== $sourceCase->warning) { + } elseif ($sourceCase->warning !== null) { $level = GithubCase::LEVEL_WARNING; - } elseif (null !== $sourceCase->skipped) { + } elseif ($sourceCase->skipped !== null) { $level = GithubCase::LEVEL_DEBUG; } else { $level = GithubCase::LEVEL_ERROR; } $message = $sourceCase->getMessage(); - if ($message) { - $case = $ghActions->addCase($this->cleanFilepath($sourceCase->file ?: '')); - $case->line = $sourceCase->line; - $case->column = $sourceCase->column; - $case->level = $level; + if ($message !== '' && $message !== null) { + $case = $ghActions->addCase($this->cleanFilepath($sourceCase->file)); + $case->line = $sourceCase->line; + $case->column = $sourceCase->column; + $case->level = $level; $case->message = $this->cleanFilepath($message); } } diff --git a/src/Converters/JUnitConverter.php b/src/Converters/JUnitConverter.php index d974aed..0f36cad 100644 --- a/src/Converters/JUnitConverter.php +++ b/src/Converters/JUnitConverter.php @@ -1,46 +1,38 @@ rootSuiteName); $this->createSourceNodes($xmlAsArray, $testSuite); @@ -48,27 +40,23 @@ public function toInternal(string $source): SourceSuite return $testSuite; } - /** - * @inheritDoc - */ public function fromInternal(SourceSuite $sourceSuite): string { $junit = new JUnit(); $this->createJUnitNodes($sourceSuite, $junit); + return (string)$junit; } /** - * @param SourceSuite $source - * @param JUnitSuite|JUnit $junitSuite - * @return JUnitSuite|JUnit + * @return JUnit|JUnitSuite * @SuppressWarnings(PHPMD.CyclomaticComplexity) * @SuppressWarnings(PHPMD.NPathComplexity) */ - public function createJUnitNodes(SourceSuite $source, $junitSuite) + public function createJUnitNodes(SourceSuite $source, JUnit|JUnitSuite $junitSuite) { - if ($source->name) { - $junitSuite = $junitSuite->addSuite($source->name); + if ($source->name !== '') { + $junitSuite = $junitSuite->addSuite($source->name); $junitSuite->file = $source->file; } @@ -78,35 +66,38 @@ public function createJUnitNodes(SourceSuite $source, $junitSuite) if ($junitSuite instanceof JUnitSuite) { foreach ($source->getCases() as $sourceCase) { - $junitCase = $junitSuite->addCase($sourceCase->name); - $junitCase->time = $sourceCase->time; - $junitCase->class = $sourceCase->class; - $junitCase->classname = $sourceCase->classname; - $junitCase->file = $sourceCase->file; - $junitCase->line = $sourceCase->line; + $junitCase = $junitSuite->addCase($sourceCase->name); + $junitCase->time = $sourceCase->time; + $junitCase->class = $sourceCase->class; + $junitCase->classname = $sourceCase->classname; + $junitCase->file = $sourceCase->file; + $junitCase->line = $sourceCase->line; $junitCase->assertions = $sourceCase->assertions; - if ($failure = $sourceCase->failure) { + $failure = $sourceCase->failure; + if ($failure !== null) { $junitCase->addFailure($failure->type, $failure->message, $failure->details); } - if ($warning = $sourceCase->warning) { + $warning = $sourceCase->warning; + if ($warning !== null) { $junitCase->addWarning($warning->type, $warning->message, $warning->details); } - if ($error = $sourceCase->error) { + $error = $sourceCase->error; + if ($error !== null) { $junitCase->addError($error->type, $error->message, $error->details); } - if ($sourceCase->stdOut && $sourceCase->errOut) { + if ($sourceCase->stdOut !== null && $sourceCase->errOut !== null) { $junitCase->addSystemOut("{$sourceCase->stdOut}\n{$sourceCase->errOut}"); - } elseif ($sourceCase->stdOut && !$sourceCase->errOut) { + } elseif ($sourceCase->stdOut !== null && $sourceCase->errOut === null) { $junitCase->addSystemOut($sourceCase->stdOut); - } elseif ($sourceCase->errOut) { + } elseif ($sourceCase->errOut !== null) { $junitCase->addSystemOut($sourceCase->errOut); } - if ($sourceCase->skipped) { + if ($sourceCase->skipped !== null) { $junitCase->markAsSkipped(); } } @@ -116,9 +107,6 @@ public function createJUnitNodes(SourceSuite $source, $junitSuite) } /** - * @param array $xmlAsArray - * @param SourceSuite $currentSuite - * @return SourceSuite * @SuppressWarnings(PHPMD.CyclomaticComplexity) */ private function createSourceNodes(array $xmlAsArray, SourceSuite $currentSuite): SourceSuite @@ -126,18 +114,19 @@ private function createSourceNodes(array $xmlAsArray, SourceSuite $currentSuite) $attrs = data($xmlAsArray['_attrs'] ?? []); if ($xmlAsArray['_node'] === 'testcase') { - $case = $currentSuite->addTestCase($attrs->get('name')); - $case->time = $attrs->get('time'); - $case->file = $attrs->get('file'); - $case->line = $attrs->get('line'); - $case->class = $attrs->get('class'); - $case->classname = $attrs->get('classname'); - $case->assertions = $attrs->get('assertions'); + $case = $currentSuite->addTestCase($attrs->get('name')); + $case->time = $attrs->getFloatNull('time'); + $case->file = $attrs->getStringNull('file'); + $case->line = $attrs->getIntNull('line'); + $case->class = $attrs->getStringNull('class'); + $case->classname = $attrs->getStringNull('classname'); + $case->assertions = $attrs->getIntNull('assertions'); + foreach ($xmlAsArray['_children'] as $output) { $typeOfOutput = $output['_node']; - $type = $output['_attrs']['type'] ?? null; - $message = $output['_attrs']['message'] ?? null; - $details = ($output['_cdata'] ?? null) ?? $output['_text'] ?? null; + $type = $output['_attrs']['type'] ?? null; + $message = $output['_attrs']['message'] ?? null; + $details = ($output['_cdata'] ?? null) ?? $output['_text'] ?? null; $caseOutput = new SourceCaseOutput($type, $message, $details); @@ -160,7 +149,7 @@ private function createSourceNodes(array $xmlAsArray, SourceSuite $currentSuite) if ($childNode['_node'] === 'testcase') { $this->createSourceNodes($childNode, $currentSuite); } else { - $subSuite = $currentSuite->addSuite((string)$attrs->get('name')); + $subSuite = $currentSuite->addSuite((string)$attrs->get('name')); $subSuite->file = $attrs->get('file'); $this->createSourceNodes($childNode, $subSuite); } diff --git a/src/Converters/JUnitStatsTcConverter.php b/src/Converters/JUnitStatsTcConverter.php index 67c9711..a61186c 100644 --- a/src/Converters/JUnitStatsTcConverter.php +++ b/src/Converters/JUnitStatsTcConverter.php @@ -1,37 +1,29 @@ toInternal($sourceCode); diff --git a/src/Converters/Map.php b/src/Converters/Map.php index 8609fe1..724e646 100644 --- a/src/Converters/Map.php +++ b/src/Converters/Map.php @@ -1,29 +1,22 @@ $converterClass::TYPE, $drivers); } - /** - * @return array - */ public static function getAvailableMetrics(): array { $result = []; + foreach (self::MAP_METRICS as $driver) { $result[] = $driver::TYPE; } @@ -109,46 +97,11 @@ public static function getAvailableMetrics(): array return $result; } - /** - * @param string $source - * @param string $target - * @return bool - */ public static function isAvailable(string $source, string $target): bool { return self::MAP_TESTS[$source][self::INPUT] && self::MAP_TESTS[$target][self::OUTPUT]; } - /** - * @return string - */ - public static function getMarkdownTable(): string - { - $tableData = self::getTable(); - $header = \array_keys($tableData); - - $rows = []; - foreach ($tableData as $key => $info) { - $rows[$key] = \array_values(\array_map(static function (bool $value) { - return $value ? 'Yes' : '-'; - }, $info)); - - \array_unshift($rows[$key], $key); - } - - \array_unshift($header, 'Source/Target'); - - return (new Table()) - ->setHeaders($header) - ->appendRows($rows) - ->render(); - } - - /** - * @param string $format - * @param string $direction - * @return AbstractConverter - */ public static function getConverter(string $format, string $direction): AbstractConverter { /** @var AbstractConverter $class */ @@ -161,16 +114,11 @@ public static function getConverter(string $format, string $direction): Abstract throw new Exception( "The format \"{$format}\" is not available as \"{$direction}\" direction. " . - "See `ci-report-converter convert:map`" + 'See `ci-report-converter convert:map`', ); } - /** - * @param string $sourceFormat - * @param int|null $flowId - * @return AbstractStatsTcConverter - */ - public static function getMetric(string $sourceFormat, ?int $flowId = null): AbstractStatsTcConverter + public static function getMetric(string $sourceFormat, int $flowId = 0): AbstractStatsTcConverter { foreach (self::MAP_METRICS as $class) { if ($class::TYPE === $sourceFormat) { diff --git a/src/Converters/PhpDependStatsTcConverter.php b/src/Converters/PhpDependStatsTcConverter.php index d2effed..a8a5753 100644 --- a/src/Converters/PhpDependStatsTcConverter.php +++ b/src/Converters/PhpDependStatsTcConverter.php @@ -1,40 +1,32 @@ getArrayCopy(); + return self::buildMetrics($data, new PhpLoc()); } } diff --git a/src/Converters/PhpMdJsonConverter.php b/src/Converters/PhpMdJsonConverter.php index b745376..6298e28 100644 --- a/src/Converters/PhpMdJsonConverter.php +++ b/src/Converters/PhpMdJsonConverter.php @@ -1,52 +1,46 @@ rootSuiteName ?: 'PHPmd'); + $sourceSuite = new SourceSuite( + $this->rootSuiteName !== null && $this->rootSuiteName !== '' ? $this->rootSuiteName : 'PHPmd', + ); $files = (array)json($source)->get('files'); foreach ($files as $file) { $relFilename = $this->cleanFilepath($file['file']); $absFilename = $this->getFullPath($relFilename); - $suite = $sourceSuite->addSuite($relFilename); + $suite = $sourceSuite->addSuite($relFilename); $suite->file = $absFilename; foreach ($file['violations'] as $violation) { @@ -55,17 +49,17 @@ public function toInternal(string $source): SourceSuite $case = $suite->addTestCase("{$relFilename} line {$violation['beginLine']}"); - $case->file = $absFilename; - $case->line = $violation['beginLine'] ?? null; + $case->file = $absFilename; + $case->line = $violation['beginLine'] ?? null; $case->failure = new SourceCaseOutput( $violation['rule'] ?? null, $violation['description'] ?? null, - self::getDetails($violation) + self::getDetails($violation), ); $package = $violation['package'] ?? null; - if (null !== $package) { - $case->class = $package; + if ($package !== null) { + $case->class = $package; $case->classname = \str_replace('\\', '.', $package); } } @@ -74,26 +68,27 @@ public function toInternal(string $source): SourceSuite return $sourceSuite; } - /** - * @param Data $data - * @return string|null - */ private static function getDetails(Data $data): ?string { - $functionName = $data['function'] ? "{$data['function']}()" : null; - if ($data['method']) { - $functionName = "{$data['method']}()"; + $package = $data->getString('package'); + $class = $data->getString('class'); + $method = $data->getString('method'); + $function = $data->getString('function'); + + $functionName = $function !== '' ? "{$function}()" : null; + if ($method !== '') { + $functionName = "{$method}()"; } - if ($data['class'] && $data['method']) { - $functionName = "{$data['class']}->{$data['method']}()"; + if ($class !== '' && $method !== '') { + $functionName = "{$class}->{$method}()"; } - if ($data['class'] && $data['method'] && $data['package']) { - $functionName = "{$data['package']}\\{$data['class']}->{$data['method']}()"; + if ($class !== '' && $method !== '' && $package !== '') { + $functionName = "{$package}\\{$class}->{$method}()"; } - $line = (int)$data->get('beginLine'); + $line = $data->getInt('beginLine'); $line = $line > 0 ? ":{$line}" : ''; return Helper::descAsList([ diff --git a/src/Converters/PhpMetricsStatsTcConverter.php b/src/Converters/PhpMetricsStatsTcConverter.php index 5ec2889..8d8bd2a 100644 --- a/src/Converters/PhpMetricsStatsTcConverter.php +++ b/src/Converters/PhpMetricsStatsTcConverter.php @@ -1,40 +1,32 @@ findArray('_children.0._children.0._children'); + $xmlAsArray = Xml::dom2Array($xmlDocument); + $files = data($xmlAsArray)->findArray('_children.0._children.0._children'); - $sourceSuite = new SourceSuite($this->rootSuiteName ?: 'PHPmnd'); + $sourceSuite = new SourceSuite( + $this->rootSuiteName !== '' && $this->rootSuiteName !== null ? $this->rootSuiteName : 'PHPmnd', + ); foreach ($files as $file) { $relFilename = $this->cleanFilepath($file['_attrs']['path'] ?? 'undefined'); $absFilename = $this->getFullPath($relFilename); - $suite = $sourceSuite->addSuite($relFilename); + $suite = $sourceSuite->addSuite($relFilename); $suite->file = $absFilename; foreach ($file['_children'] as $errorNode) { $error = data($errorNode); - $type = 'Magic Number'; + $type = 'Magic Number'; - $line = $error->findInt('_attrs.line'); + $line = $error->findInt('_attrs.line'); $column = $error->findInt('_attrs.start'); $caseName = $line > 0 ? "{$relFilename} line {$line}" : $relFilename; @@ -64,34 +58,30 @@ public function toInternal(string $source): SourceSuite $error->set('full_path', self::getFilePoint($absFilename, $line, $column)); - $case = $suite->addTestCase($caseName); - $case->file = $absFilename; - $case->line = $line ?: null; - $case->column = $column ?: null; - $case->class = $type; + $case = $suite->addTestCase($caseName); + $case->file = $absFilename; + $case->line = $line; + $case->column = $column; + $case->class = $type; $case->classname = $type; - $case->warning = new SourceCaseOutput($type, $error->get('message'), self::getDetails($error)); + $case->warning = new SourceCaseOutput($type, $error->get('message'), self::getDetails($error)); } } return $sourceSuite; } - /** - * @param Data $data - * @return string|null - */ private static function getDetails(Data $data): ?string { - $snippet = ''; + $snippet = ''; $suggestions = []; foreach ($data->findArray('_children') as $child) { - if ('snippet' === $child['_node']) { - $snippet = "`" . \trim($data->find('_children.0._cdata')) . "`"; + if ($child['_node'] === 'snippet') { + $snippet = '`' . \trim($data->find('_children.0._cdata')) . '`'; } - if ('suggestions' === $child['_node']) { + if ($child['_node'] === 'suggestions') { $suggestions = \array_reduce( $data->findArray('_children.1._children'), static function (array $acc, array $item): array { @@ -101,7 +91,7 @@ static function (array $acc, array $item): array { return $acc; }, - [] + [], ); } } @@ -109,7 +99,7 @@ static function (array $acc, array $item): array { return Helper::descAsList([ 'File Path' => $data->get('full_path'), 'Snippet' => $snippet, - 'Suggestions' => \implode("; ", $suggestions), + 'Suggestions' => \implode('; ', $suggestions), ]); } } diff --git a/src/Converters/PhpUnitCloverStatsTcConverter.php b/src/Converters/PhpUnitCloverStatsTcConverter.php index f2087bd..dc049f9 100644 --- a/src/Converters/PhpUnitCloverStatsTcConverter.php +++ b/src/Converters/PhpUnitCloverStatsTcConverter.php @@ -1,51 +1,45 @@ project->metrics)->getSelf('@attributes'); + $info = data((array)$cloverXml->project->metrics)->getSelf('@attributes'); $coveredClasses = 0; $nodeClasses = $cloverXml->xpath('//class'); - if ($nodeClasses) { + // @phpstan-ignore-next-line + if (\is_iterable($nodeClasses)) { foreach ($nodeClasses as $class) { if ((int)$class->metrics['coveredmethods'] === (int)$class->metrics['methods']) { $coveredClasses++; @@ -75,18 +69,19 @@ public function toInternalMetric(string $sourceCode): Metrics $crapAmount = 0; $allCrapAttrs = $cloverXml->xpath('//@crap'); - if ($allCrapAttrs) { + // @phpstan-ignore-next-line + if (\is_iterable($allCrapAttrs)) { foreach ($allCrapAttrs as $crap) { $crapValues[] = float($crap); $crapAmount++; } } - $crapValuesCount = \count($crapValues) ?: 1; - $crapSummary = \array_sum($crapValues) ?: 0; + $crapValuesCount = \count($crapValues) > 0 ? \count($crapValues) : 1; + $crapSummary = \max(\array_sum($crapValues), 0); - $data['CRAPTotal'] = $crapSummary; - $data['CRAPAmount'] = $crapAmount; + $data['CRAPTotal'] = $crapSummary; + $data['CRAPAmount'] = $crapAmount; $data['CRAPMaximum'] = \count($crapValues) > 0 ? \max($crapValues) : 0.0; $data['CRAPAverage'] = self::percent($crapSummary, $crapValuesCount) / 100; $data['CRAPPercent'] = self::percent($crapAmount, $crapValuesCount); @@ -94,12 +89,7 @@ public function toInternalMetric(string $sourceCode): Metrics return self::buildMetrics($data, new PhpUnitClover()); } - /** - * @param float|int $current - * @param float|int $total - * @return float - */ - private static function percent($current, $total): float + private static function percent(float|int $current, float|int $total): float { if ($total <= 0) { $total = 1; diff --git a/src/Converters/PlainTextConverter.php b/src/Converters/PlainTextConverter.php index e5e0ced..38bfc8f 100644 --- a/src/Converters/PlainTextConverter.php +++ b/src/Converters/PlainTextConverter.php @@ -1,45 +1,37 @@ rootSuiteName) { + if ($this->rootSuiteName !== null && $this->rootSuiteName !== '') { $this->renderSuite($sourceSuite, $plainTextSuite->addSuite($this->rootSuiteName)); } else { $this->renderSuite($sourceSuite, $plainTextSuite); @@ -49,7 +41,6 @@ public function fromInternal(SourceSuite $sourceSuite): string } /** - * @param SourceSuite $sourceSuite * @param PlainText|PlainTextSuite $plainTextSuite */ private function renderSuite(SourceSuite $sourceSuite, $plainTextSuite): void @@ -64,33 +55,32 @@ private function renderSuite(SourceSuite $sourceSuite, $plainTextSuite): void } /** - * @param SourceCase $sourceCase * @param PlainText|PlainTextSuite $plainTextSuite */ private function renderTestCase(SourceCase $sourceCase, $plainTextSuite): void { - if (null !== $sourceCase->stdOut) { + if ($sourceCase->stdOut !== null) { $level = PlainTextCase::LEVEL_ERROR; - } elseif (null !== $sourceCase->errOut) { + } elseif ($sourceCase->errOut !== null) { $level = PlainTextCase::LEVEL_ERROR; - } elseif (null !== $sourceCase->failure) { + } elseif ($sourceCase->failure !== null) { $level = PlainTextCase::LEVEL_ERROR; - } elseif (null !== $sourceCase->error) { + } elseif ($sourceCase->error !== null) { $level = PlainTextCase::LEVEL_ERROR; - } elseif (null !== $sourceCase->warning) { + } elseif ($sourceCase->warning !== null) { $level = PlainTextCase::LEVEL_WARNING; - } elseif (null !== $sourceCase->skipped) { + } elseif ($sourceCase->skipped !== null) { $level = PlainTextCase::LEVEL_DEBUG; } else { $level = PlainTextCase::LEVEL_ERROR; } $message = $sourceCase->getMessage(); - if ($message) { - $case = $plainTextSuite->addCase($this->cleanFilepath($sourceCase->file ?: '')); - $case->line = $sourceCase->line; - $case->column = $sourceCase->column; - $case->level = $level; + if ($message !== null && $message !== '') { + $case = $plainTextSuite->addCase($this->cleanFilepath($sourceCase->file)); + $case->line = $sourceCase->line; + $case->column = $sourceCase->column; + $case->level = $level; $case->message = $this->cleanFilepath($message); } } diff --git a/src/Converters/PmdCpdConverter.php b/src/Converters/PmdCpdConverter.php index e792066..c69527c 100644 --- a/src/Converters/PmdCpdConverter.php +++ b/src/Converters/PmdCpdConverter.php @@ -1,82 +1,72 @@ rootSuiteName ?: 'PMD Copy/Paste Detector'); + $sourceSuite = new SourceSuite( + $this->rootSuiteName !== null && $this->rootSuiteName !== '' + ? $this->rootSuiteName + : 'PMD Copy/Paste Detector', + ); foreach ($xmlAsArray->find('_children.0._children') as $duplication) { $duplication = data($duplication); - $lines = self::getLinesNumber($duplication); - $tokens = self::getTokens($duplication); + $lines = self::getLinesNumber($duplication); + $tokens = self::getTokens($duplication); - $mainFile = $this->getFileByIndex($duplication); + $mainFile = $this->getFileByIndex($duplication); $errorTitle = "Duplicate code found (lines={$lines}, tokens={$tokens})"; - $case = $sourceSuite->addTestCase(self::getTestCaseName($mainFile, $lines)); - $case->file = $mainFile->fullpath; - $case->line = $mainFile->line; + $case = $sourceSuite->addTestCase(self::getTestCaseName($mainFile, $lines)); + $case->file = $mainFile->fullpath; + $case->line = $mainFile->line; $case->warning = new SourceCaseOutput('Warning', $errorTitle, $this->getDetails($duplication)); } return $sourceSuite; } - /** - * @param Data $duplication - * @param int $index - * @return FileRef - */ private function getFileByIndex(Data $duplication, int $index = 0): FileRef { - $fileRef = new FileRef(); + $fileRef = new FileRef(); $fileRef->fullpath = $duplication->findString("_children.{$index}._attrs.path"); - $fileRef->line = $duplication->findInt("_children.{$index}._attrs.line"); - $fileRef->name = $this->cleanFilepath($fileRef->fullpath ?: ''); + $fileRef->line = $duplication->findInt("_children.{$index}._attrs.line"); + $fileRef->name = $this->cleanFilepath($fileRef->fullpath); return $fileRef; } /** - * @param Data $duplication * @return FileRef[] */ private function getFileList(Data $duplication): array @@ -92,52 +82,16 @@ private function getFileList(Data $duplication): array return $list; } - /** - * @param Data $duplication - * @return string|null - */ - private static function getCodeFragment(Data $duplication): ?string - { - foreach ($duplication->getArray('_children') as $child) { - if (isset($child['_node']) && $child['_node'] === 'codefragment') { - return $child['_text'] ?? null; - } - } - - return null; - } - - /** - * @param Data $duplication - * @return int - */ - private static function getLinesNumber(Data $duplication): int - { - return $duplication->findInt('_attrs.lines'); - } - - /** - * @param Data $duplication - * @return int - */ - private static function getTokens(Data $duplication): int - { - return $duplication->findInt('_attrs.tokens'); - } - - /** - * @param Data $duplication - * @return string - */ private function getDetails(Data $duplication): string { $fileList = $this->getFileList($duplication); - $lines = self::getLinesNumber($duplication); - $tokens = self::getTokens($duplication); + $lines = self::getLinesNumber($duplication); + $tokens = self::getTokens($duplication); $fileNumber = \count($fileList); $filesAsString = ''; + foreach ($fileList as $fileRef) { $filePoint = self::getFileName($fileRef, $lines); $filesAsString .= "- {$filePoint}\n"; @@ -149,28 +103,45 @@ private function getDetails(Data $duplication): string $filesAsString, ]; - if ($codeFragment = self::getCodeFragment($duplication)) { - $result[] = "Code Fragment:"; + $codeFragment = self::getCodeFragment($duplication); + if ($codeFragment !== null) { + $result[] = 'Code Fragment:'; $result[] = '```'; $result[] = $codeFragment; $result[] = '```'; } else { - $result[] = "Code Fragment: Not Found"; + $result[] = 'Code Fragment: Not Found'; } return \implode("\n", $result); } - /** - * @param FileRef $fileRef - * @param int $lines - * @return string - */ + private static function getCodeFragment(Data $duplication): ?string + { + foreach ($duplication->getArray('_children') as $child) { + if (isset($child['_node']) && $child['_node'] === 'codefragment') { + return $child['_text'] ?? null; + } + } + + return null; + } + + private static function getLinesNumber(Data $duplication): int + { + return $duplication->findInt('_attrs.lines'); + } + + private static function getTokens(Data $duplication): int + { + return $duplication->findInt('_attrs.tokens'); + } + private static function getTestCaseName(FileRef $fileRef, int $lines): string { $startLine = (int)$fileRef->line; - $endLine = $startLine + $lines; - $place = $startLine === $endLine ? (string)$startLine : "{$startLine}-{$endLine}"; + $endLine = $startLine + $lines; + $place = $startLine === $endLine ? (string)$startLine : "{$startLine}-{$endLine}"; if ($lines > 0) { return "{$fileRef->name}:{$place} ({$lines} lines)"; @@ -179,16 +150,11 @@ private static function getTestCaseName(FileRef $fileRef, int $lines): string return "{$fileRef->name}:{$place}"; } - /** - * @param FileRef $fileRef - * @param int $lines - * @return string - */ private static function getFileName(FileRef $fileRef, int $lines = 0): string { $startLine = (int)$fileRef->line; - $endLine = $startLine + $lines; - $place = $startLine === $endLine ? (string)$startLine : "{$startLine}-{$endLine}"; + $endLine = $startLine + $lines; + $place = $startLine === $endLine ? (string)$startLine : "{$startLine}-{$endLine}"; return "{$fileRef->fullpath}:{$place}"; } diff --git a/src/Converters/PsalmJsonConverter.php b/src/Converters/PsalmJsonConverter.php index 5c0a744..8fc1b74 100644 --- a/src/Converters/PsalmJsonConverter.php +++ b/src/Converters/PsalmJsonConverter.php @@ -1,47 +1,42 @@ rootSuiteName ?: 'Psalm'); + $sourceSuite = new SourceSuite( + $this->rootSuiteName !== '' && $this->rootSuiteName !== null ? $this->rootSuiteName : 'Psalm', + ); $sourceCases = json($source)->getArrayCopy(); + foreach ($sourceCases as $sourceCase) { $sourceCase = data($sourceCase); @@ -49,19 +44,20 @@ public function toInternal(string $source): SourceSuite $fileName = $sourceCase['file_name'] ?? 'Undefined'; $fileLine = $sourceCase['line_from'] ?? null; - $suite = $sourceSuite->addSuite($fileName); + $suite = $sourceSuite->addSuite($fileName); $suite->file = $sourceCase['file_path']; $case = $suite->addTestCase($fileLine > 0 ? "{$fileName} line {$sourceCase['line_from']}" : $fileName); - $case->file = $sourceCase['file_path']; - $case->line = $sourceCase['line_from']; - $case->class = $sourceCase['type']; + + $case->file = $sourceCase['file_path']; + $case->line = $sourceCase['line_from']; + $case->class = $sourceCase['type']; $case->classname = $sourceCase['type']; $caseOutput = new SourceCaseOutput( $sourceCase['type'], $sourceCase['message'], - self::getDetails($sourceCase) + self::getDetails($sourceCase), ); if ($sourceCase['error_level'] <= 0) { @@ -74,10 +70,6 @@ public function toInternal(string $source): SourceSuite return $sourceSuite; } - /** - * @param Data $data - * @return string|null - */ private static function getDetails(Data $data): ?string { $snippet = \trim((string)$data->get('snippet')); @@ -86,7 +78,7 @@ private static function getDetails(Data $data): ?string '' => \htmlspecialchars_decode((string)$data->get('message')), 'Rule' => $data->get('type'), 'File Path' => self::getFilePoint($data->get('file_path'), $data->get('line_from')), - 'Snippet' => $snippet ? "`{$snippet}`" : null, + 'Snippet' => $snippet !== '' ? "`{$snippet}`" : null, 'Taint Trace' => $data->get('taint_trace'), 'Docs' => $data->get('link'), 'Severity' => $data->get('severity'), diff --git a/src/Converters/TeamCityInspectionsConverter.php b/src/Converters/TeamCityInspectionsConverter.php index 62b1b0c..bbfc168 100644 --- a/src/Converters/TeamCityInspectionsConverter.php +++ b/src/Converters/TeamCityInspectionsConverter.php @@ -1,68 +1,50 @@ tcLogger = new TeamCity($tcWriter ?: new Buffer(), $flowId, $params); + $this->tcLogger = new TeamCity($tcWriter ?? new Buffer(), $flowId, $params); } - /** - * @inheritDoc - */ public function fromInternal(SourceSuite $sourceSuite): string { if ($this->flowId > 0) { $this->tcLogger->setFlowId($this->flowId); } - $this->globalPrefix = \trim($sourceSuite->name) ?: TeamCity::DEFAULT_INSPECTION_ID; + $this->globalPrefix = \trim($sourceSuite->name) !== '' + ? \trim($sourceSuite->name) + : TeamCity::DEFAULT_INSPECTION_ID; + $this->renderSuite($sourceSuite); $buffer = $this->tcLogger->getWriter(); @@ -73,9 +55,6 @@ public function fromInternal(SourceSuite $sourceSuite): string return ''; } - /** - * @param SourceSuite $sourceSuite - */ private function renderSuite(SourceSuite $sourceSuite): void { foreach ($sourceSuite->getCases() as $case) { @@ -88,62 +67,62 @@ private function renderSuite(SourceSuite $sourceSuite): void } /** - * @param SourceCase $case - * @param string $suiteName * @SuppressWarnings(PHPMD.NPathComplexity) */ private function renderTestCase(SourceCase $case, string $suiteName): void { $failureObject = null; - $severity = null; + $severity = null; - if ($case->failure) { - $severity = TeamCity::SEVERITY_ERROR; + if ($case->failure !== null) { + $severity = TeamCity::SEVERITY_ERROR; $failureObject = $case->failure; - } elseif ($case->error) { - $severity = TeamCity::SEVERITY_ERROR; + } elseif ($case->error !== null) { + $severity = TeamCity::SEVERITY_ERROR; $failureObject = $case->error; - } elseif ($case->warning) { - $severity = TeamCity::SEVERITY_WARNING; + } elseif ($case->warning !== null) { + $severity = TeamCity::SEVERITY_WARNING; $failureObject = $case->warning; - } elseif ($case->skipped) { - $severity = TeamCity::SEVERITY_WARNING_WEAK; + } elseif ($case->skipped !== null) { + $severity = TeamCity::SEVERITY_WARNING_WEAK; $failureObject = $case->skipped; } - /** @phpstan-ignore-next-line */ - if (!$failureObject || !$severity) { + // @phpstan-ignore-next-line + if ($failureObject === null || $severity === null) { return; } $messageData = $failureObject->parseDescription(); - $title = "{$suiteName} / {$case->name}"; - $message = $messageData->get('message') ?? $failureObject->message ?: ''; - $details = $messageData->get('description') ?? $failureObject->details ?: ''; - if ($details && $message && \strpos($details, $message) !== false) { + $title = "{$suiteName} / {$case->name}"; + $message = $messageData->getStringNull('message') ?? $failureObject->message ?? ''; + $details = $messageData->getStringNull('description') ?? $failureObject->details ?? ''; + + if ($details !== '' && $message !== '' && \str_contains($details, $message)) { $message = null; } - if (\strpos($case->name, $suiteName) !== false) { + if (\str_contains($case->name, $suiteName)) { $title = $case->name; } - $inspectionName = $case->class ?: $case->classname ?: $failureObject->type ?: $severity; - $inspectionId = ($this->globalPrefix ?: TeamCity::DEFAULT_INSPECTION_ID) . ':' . $inspectionName; + $inspectionName = $case->class ?? $case->classname ?? $failureObject->type ?? $severity; + $inspectionId = $this->globalPrefix !== '' ? $this->globalPrefix : TeamCity::DEFAULT_INSPECTION_ID; + $inspectionId .= ":{$inspectionName}"; $this->tcLogger->addInspectionType($inspectionId, $inspectionName, $this->globalPrefix); $this->tcLogger->addInspectionIssue( $inspectionId, $this->cleanFilepath((string)$case->file), $case->line, - \trim(\implode("\n", \array_unique(\array_filter([ - \str_repeat('-', 120), - $title, - $message, - $details - ])))), - $severity + \trim( + \implode( + "\n", + \array_unique(\array_filter([\str_repeat('-', 120), $title, $message, $details])), + ), + ), + $severity, ); } } diff --git a/src/Converters/TeamCityTestsConverter.php b/src/Converters/TeamCityTestsConverter.php index 8e949a3..87f62dc 100644 --- a/src/Converters/TeamCityTestsConverter.php +++ b/src/Converters/TeamCityTestsConverter.php @@ -1,56 +1,39 @@ tcLogger = new TeamCity($tcWriter ?: new Buffer(), $flowId, $params); + $this->tcLogger = new TeamCity($tcWriter ?? new Buffer(), $flowId, $params); } - /** - * @inheritDoc - */ public function fromInternal(SourceSuite $sourceSuite): string { if ($this->flowId > 0) { @@ -72,17 +55,14 @@ public function fromInternal(SourceSuite $sourceSuite): string return ''; } - /** - * @param SourceSuite $sourceSuite - */ private function renderSuite(SourceSuite $sourceSuite): void { $params = []; - if ($sourceSuite->file) { + if ($sourceSuite->file !== null && $sourceSuite->file !== '') { $params = ['locationHint' => "php_qn://{$sourceSuite->file}::\\{$sourceSuite->name}"]; } - if ($sourceSuite->name) { + if ($sourceSuite->name !== '') { $this->tcLogger->testSuiteStarted($sourceSuite->name, $params); } @@ -94,53 +74,53 @@ private function renderSuite(SourceSuite $sourceSuite): void $this->renderSuite($suite); } - if ($sourceSuite->name) { + if ($sourceSuite->name !== '') { $this->tcLogger->testSuiteFinished($sourceSuite->name); } } /** - * @param SourceCase $case * @SuppressWarnings(PHPMD.NPathComplexity) + * @suppress PhanPossiblyUndeclaredProperty */ private function renderTestCase(SourceCase $case): void { $logger = $this->tcLogger; $params = []; - if ($case->file && $case->class) { + if ($case->file !== null && $case->class !== null) { $params = ['locationHint' => "php_qn://{$case->file}::\\{$case->class}::{$case->name}"]; - } elseif ($case->file) { + } elseif ($case->file !== null) { $params = ['locationHint' => "php_qn://{$case->file}"]; } $logger->testStarted($case->name, $params); - if ($skippedOutput = $case->skipped) { - $logger->testSkipped($case->name, $skippedOutput->message, $skippedOutput->details, $case->time); + if ($case->skipped !== null) { + $logger->testSkipped($case->name, $case->skipped->message, $case->skipped->details, $case->time); } else { $failureObject = $case->failure ?? $case->error ?? $case->warning; - if ($failureObject) { + if ($failureObject !== null) { $params = [ 'message' => $failureObject->message, 'details' => $failureObject->details, 'duration' => $case->time, ]; - $messageData = $failureObject->parseDescription(); - $params['actual'] = $messageData->get('actual'); + $messageData = $failureObject->parseDescription(); + $params['actual'] = $messageData->get('actual'); $params['expected'] = $messageData->get('expected'); - $params['details'] = $messageData->get('description') ?? $params['details']; - $params['message'] = $messageData->get('message') ?? $params['message']; + $params['details'] = $messageData->get('description') ?? $params['details']; + $params['message'] = $messageData->get('message') ?? $params['message']; $logger->testFailed($case->name, $params); } } - if ($case->stdOut) { + if ($case->stdOut !== null) { $logger->getWriter()->write($case->stdOut); } - if ($case->errOut) { + if ($case->errOut !== null) { $logger->getWriter()->write($case->errOut); } diff --git a/src/Exception.php b/src/Exception.php index b388802..85d434f 100644 --- a/src/Exception.php +++ b/src/Exception.php @@ -1,26 +1,21 @@ ['string'] - ]; + protected string $nodeName; - /** - * AbstractNode constructor. - * @param string|null $name - */ public function __construct(?string $name = null) { - $this->data = new Data(); - $this->name = (string)$name; - $this->nodeName = Str::getClassName(static::class); - } - - /** - * @param string $name - * @param string|float|int|null $value - * @SuppressWarnings(PHPMD.CyclomaticComplexity) - */ - public function __set(string $name, $value): void - { - if (!\array_key_exists($name, $this->meta)) { - throw new Exception("Undefined property \"{$name}\""); - } - - $isRequired = $this->meta[$name][1] ?? false; - if ($isRequired && null === $value) { - throw new Exception("Property \"{$name}\" can't be null"); - } - - if ($value !== null) { - $varType = $this->meta[$name][0] ?? 'string'; - if ($varType === 'string') { - $value = \trim((string)$value); - } elseif ($varType === 'float') { - $value = float($value); - } elseif ($varType === 'int') { - $value = int($value); - } elseif ($varType === 'bool') { - $value = bool($value); - } elseif ($varType === 'array') { - $value = (array)$value; - } - } - - $this->data->set($name, $value); - } - - /** - * @param string $name - * @return bool - */ - public function __isset(string $name): bool - { - return $this->data->offsetExists($name); + $this->name = \trim($name ?? ''); + $this->nodeName = Str::getClassName(static::class) ?? ''; } - /** - * @param string $name - * @return mixed - */ - public function __get(string $name) + public function __call(string $name, array $arguments): self { - return $this->data->get($name); - } - - /** - * @param string $name - * @param array $arguments - * @return $this|string - */ - public function __call(string $name, array $arguments) - { - if (\strpos($name, 'set') === 0) { - $name = \strtolower((string)\preg_replace("#^set#", '', $name)); + if (\str_starts_with($name, 'set')) { + $name = \strtolower((string)\preg_replace('#^set#', '', $name)); $newValue = $arguments[0] ?? null; - if (\array_key_exists($name, $this->meta)) { - if (null !== $newValue) { - $this->{$name} = $newValue; - } + if ( + \property_exists($this, $name) + && (new \ReflectionProperty($this, $name))->isPublic() + ) { + // @phpstan-ignore-next-line + $this->{$name} = $newValue; return $this; } } - if (\strpos($name, 'get') === 0) { - $name = (string)\preg_replace("#^get#", '', $name); - if (\array_key_exists($name, $this->meta)) { - return $this->{$name}; - } - } - - $methodName = static::class . "->{$name}()"; - throw new Exception("Undefined method \"{$methodName}\""); + throw new Exception("Undefined method \"{$name}\" for class \"{$this->nodeName}\""); } - /** - * @return array - */ public function toArray(): array { - $values = $this->data->getArrayCopy(); + $values = \get_object_vars($this); - $result = ['_node' => $this->nodeName]; + $result = [ + '_node' => $this->nodeName, + ]; - foreach (\array_keys($this->meta) as $propName) { - if (\array_key_exists($propName, $values) && $values[$propName] !== null) { - if ($values[$propName] instanceof SourceCaseOutput) { - $result[$propName] = $values[$propName]->toArray(); - } else { - $result[$propName] = $values[$propName]; + foreach ($values as $property => $value) { + if (\is_object($value) && \method_exists($value, 'toArray')) { + $valueAsArray = $value->toArray(); + if (\count($valueAsArray) > 0) { + $result[$property] = $value->toArray(); } + } elseif ($value !== null && (new \ReflectionProperty($this, $property))->isPublic()) { + $result[$property] = $value; } } diff --git a/src/Formats/Exception.php b/src/Formats/Exception.php index 3f8e227..a0acd77 100644 --- a/src/Formats/Exception.php +++ b/src/Formats/Exception.php @@ -1,26 +1,21 @@ testCases[] = $testSuite; - return $testSuite; - } - - /** - * @return string - */ public function __toString(): string { $result = []; @@ -54,4 +33,12 @@ public function __toString(): string return (string)json($result); } + + public function addCase(?string $name = null): GitLabJsonCase + { + $testSuite = new GitLabJsonCase($name); + $this->testCases[] = $testSuite; + + return $testSuite; + } } diff --git a/src/Formats/GitLabJson/GitLabJsonCase.php b/src/Formats/GitLabJson/GitLabJsonCase.php index 81135f1..ba091c8 100644 --- a/src/Formats/GitLabJson/GitLabJsonCase.php +++ b/src/Formats/GitLabJson/GitLabJsonCase.php @@ -1,35 +1,24 @@ ['string'], - 'severity' => ['string'], // See self::SEVERITY_* - 'name' => ['string'], // It's relative path to file - 'line' => ['int'], - ]; - + public string $description; + public string $severity; // See self::SEVERITY_* + public ?int $line = null; - /** - * GithubCase constructor. - * @param string|null $name - */ public function __construct(?string $name = null) { parent::__construct($name); - $this->severity = self::DEFAULT_LEVEL; + $this->severity = self::DEFAULT_LEVEL; $this->description = self::DEFAULT_DESCRIPTION; } - /** - * @return array - */ public function toArray(): array { return [ 'description' => $this->description, - 'fingerprint' => \hash('sha256', \implode([$this->name, $this->line, $this->description])), - 'severity' => $this->severity, - 'location' => [ + 'fingerprint' => \hash( + 'sha256', + \implode('', [$this->name, (string)$this->line, $this->description]), + ), + 'severity' => $this->severity, + 'location' => [ 'path' => $this->name, - 'lines' => ['begin' => $this->line] - ] + 'lines' => ['begin' => $this->line], + ], ]; } } diff --git a/src/Formats/GithubActions/GithubActions.php b/src/Formats/GithubActions/GithubActions.php index 2b2c7b7..ed7683a 100644 --- a/src/Formats/GithubActions/GithubActions.php +++ b/src/Formats/GithubActions/GithubActions.php @@ -1,65 +1,31 @@ testCases[] = $testSuite; - return $testSuite; - } - - /** - * @param string|null $name - * @return GithubSuite - */ - public function addSuite(?string $name = null): GithubSuite - { - $testSuite = new GithubSuite($name ?: self::DEFAULT_NAME); - $this->testSuites[] = $testSuite; - return $testSuite; - } - - /** - * @return string - */ public function __toString(): string { $result = []; @@ -70,7 +36,7 @@ public function __toString(): string foreach ($this->testSuites as $testSuite) { $result[] = ''; - $result[] = '::group::' . self::escape($testSuite->name ?: self::DEFAULT_NAME); + $result[] = '::group::' . self::escape($testSuite->name !== '' ? $testSuite->name : self::DEFAULT_NAME); $result[] = (string)$testSuite; $result[] = "::endgroup::\n\n"; } @@ -78,20 +44,32 @@ public function __toString(): string return \implode("\n", $result); } - /** - * @param string|null $message - * @return string - */ + public function addCase(?string $name = null): GithubCase + { + $testSuite = new GithubCase($name); + $this->testCases[] = $testSuite; + + return $testSuite; + } + + public function addSuite(?string $name = null): GithubSuite + { + $testSuite = new GithubSuite($name ?? self::DEFAULT_NAME); + $this->testSuites[] = $testSuite; + + return $testSuite; + } + public static function escape(?string $message): string { - if (null === $message || '' === $message) { + if ($message === null || $message === '') { return ''; } return \str_replace( ["\n", "\r"], ['%0A', ''], - \trim($message) + \trim($message), ); } } diff --git a/src/Formats/GithubActions/GithubCase.php b/src/Formats/GithubActions/GithubCase.php index 3b577be..6adef4b 100644 --- a/src/Formats/GithubActions/GithubCase.php +++ b/src/Formats/GithubActions/GithubCase.php @@ -1,35 +1,24 @@ ['string'], // It's relative path to file - 'level' => ['string'], // See self::LEVEL_* - 'line' => ['int'], - 'column' => ['int'], - 'message' => ['string'], - ]; + public string $level; + public ?int $line = null; + public ?int $column = null; + public ?string $message = null; - /** - * GithubCase constructor. - * @param string|null $name - */ public function __construct(?string $name = null) { parent::__construct($name); // Set default values - $this->level = self::DEFAULT_LEVEL; + $this->level = self::DEFAULT_LEVEL; $this->message = self::DEFAULT_MESSAGE; } - /** - * @return string - */ public function __toString(): string { - $paramsAsString = \implode(',', \array_filter([ - $this->name ? "file={$this->name}" : null, - $this->line ? "line={$this->line}" : null, - $this->column ? "col={$this->column}" : null, - ])); - - $paramsAsString = $paramsAsString ? " {$paramsAsString}" : ''; - $message = GithubActions::escape($this->message); + $paramsAsString = \implode( + ',', + \array_filter([ + $this->name !== '' ? "file={$this->name}" : null, + $this->line !== 0 && $this->line !== null ? "line={$this->line}" : null, + $this->column !== 0 && $this->column !== null ? "col={$this->column}" : null, + ]), + ); + + $paramsAsString = $paramsAsString !== '' ? " {$paramsAsString}" : ''; + $message = GithubActions::escape($this->message); return "::{$this->level}{$paramsAsString}::{$message}\n"; } diff --git a/src/Formats/GithubActions/GithubSuite.php b/src/Formats/GithubActions/GithubSuite.php index 643444b..4071a7c 100644 --- a/src/Formats/GithubActions/GithubSuite.php +++ b/src/Formats/GithubActions/GithubSuite.php @@ -1,57 +1,44 @@ testCases[] = $testSuite; - return $testSuite; - } - - /** - * @return string - */ public function __toString(): string { $result = []; + foreach ($this->testCases as $testCase) { $result[] = (string)$testCase; } return \implode("\n", $result); } + + public function addCase(?string $name = null): GithubCase + { + $testSuite = new GithubCase($name); + $this->testCases[] = $testSuite; + + return $testSuite; + } } diff --git a/src/Formats/JUnit/CaseOutput/AbstractOutput.php b/src/Formats/JUnit/CaseOutput/AbstractOutput.php index 71acad0..7f74871 100644 --- a/src/Formats/JUnit/CaseOutput/AbstractOutput.php +++ b/src/Formats/JUnit/CaseOutput/AbstractOutput.php @@ -1,102 +1,68 @@ type = $type; - $this->message = $message; + $this->type = $type; + $this->message = $message; $this->description = $description; } - /** - * @param string $message - * @return $this - */ public function setMessage(string $message): self { $this->message = $message; + return $this; } - /** - * @param string $description - * @return $this - */ public function setDescription(string $description): self { $this->description = $description; + return $this; } /** - * @param \DOMDocument $document - * @return \DOMNode * @phan-suppress PhanPossiblyNonClassMethodCall * @phan-suppress PhanPossiblyFalseTypeReturn */ public function toXML(\DOMDocument $document): \DOMNode { - if (null !== $this->description) { + if ($this->description !== null) { $node = $document->createElement($this->elementName, Xml::escape($this->description)); } else { $node = $document->createElement($this->elementName); } - if (null !== $this->type) { + if ($this->type !== null) { $node->setAttribute('type', $this->type); } - if (null !== $this->message) { + if ($this->message !== null) { $node->setAttribute('message', $this->message); } diff --git a/src/Formats/JUnit/CaseOutput/Error.php b/src/Formats/JUnit/CaseOutput/Error.php index 7db9f9c..1176c81 100644 --- a/src/Formats/JUnit/CaseOutput/Error.php +++ b/src/Formats/JUnit/CaseOutput/Error.php @@ -1,30 +1,22 @@ getDom()->saveXML(); + } + public function addSuite(?string $name = null): JUnitSuite { - $testSuite = new JUnitSuite($name); + $testSuite = new JUnitSuite($name); $this->testSuites[] = $testSuite; + return $testSuite; } - /** - * @return \DOMDocument - */ public function getDom(): \DOMDocument { $document = Xml::createDomDocument(); @@ -57,12 +49,4 @@ public function getDom(): \DOMDocument return $document; } - - /** - * @return string - */ - public function __toString(): string - { - return (string)$this->getDom()->saveXML(); - } } diff --git a/src/Formats/JUnit/JUnitCase.php b/src/Formats/JUnit/JUnitCase.php index a1b2f99..fc2f762 100644 --- a/src/Formats/JUnit/JUnitCase.php +++ b/src/Formats/JUnit/JUnitCase.php @@ -1,111 +1,65 @@ ['string'], - 'class' => ['string'], - 'classname' => ['string'], - 'file' => ['string'], - 'line' => ['int'], - 'time' => ['float'], - 'assertions' => ['int'], - ]; - - /** - * @var AbstractOutput[] - */ + public ?string $class = null; + public ?string $classname = null; + public ?string $file = null; + public ?int $line = null; + public ?float $time = null; + public ?int $assertions = null; + + /** @var AbstractOutput[] */ public array $outputs = []; - /** - * @param string|null $type - * @param string|null $message - * @param string|null $description - * @return JUnitCase - */ - public function addFailure(?string $type = null, ?string $message = null, ?string $description = null): JUnitCase + public function addFailure(?string $type = null, ?string $message = null, ?string $description = null): self { - $this->outputs[] = new Failure($type ?: 'Failure', $message, $description); + $this->outputs[] = new Failure($type ?? 'Failure', $message, $description); + return $this; } - /** - * @param string|null $type - * @param string|null $message - * @param string|null $description - * @return JUnitCase - */ - public function addError(?string $type = null, ?string $message = null, ?string $description = null): JUnitCase + public function addError(?string $type = null, ?string $message = null, ?string $description = null): self { - $this->outputs[] = new Error($type ?: 'Error', $message, $description); + $this->outputs[] = new Error($type ?? 'Error', $message, $description); + return $this; } - /** - * @param string|null $type - * @param string|null $message - * @param string|null $description - * @return JUnitCase - */ - public function addWarning(?string $type = null, ?string $message = null, ?string $description = null): JUnitCase + public function addWarning(?string $type = null, ?string $message = null, ?string $description = null): self { - $this->outputs[] = new Warning($type ?: 'Warning', $message, $description); + $this->outputs[] = new Warning($type ?? 'Warning', $message, $description); + return $this; } - /** - * @param string|null $description - * @return $this - */ public function addSystemOut(?string $description): self { - if (null !== $description) { + if ($description !== null) { $this->outputs[] = (new SystemOut())->setDescription($description); } else { $this->outputs[] = (new SystemOut()); @@ -114,21 +68,16 @@ public function addSystemOut(?string $description): self return $this; } - /** - * @return $this - */ - public function markAsSkipped(): JUnitCase + public function markAsSkipped(): self { $this->outputs[] = new Skipped(); + return $this; } /** - * @param \DOMDocument $document - * @return \DOMNode * @SuppressWarnings(PHPMD.NPathComplexity) * @phan-suppress PhanPossiblyNonClassMethodCall - * @phan-suppress PhanPluginSuspiciousParamPositionInternal * @phan-suppress PhanPossiblyFalseTypeReturn */ public function toXML(\DOMDocument $document): \DOMNode @@ -137,27 +86,27 @@ public function toXML(\DOMDocument $document): \DOMNode $node->setAttribute('name', $this->name); - if (null !== $this->class) { + if ($this->class !== null) { $node->setAttribute('class', $this->class); } - if (null !== $this->classname) { + if ($this->classname !== null) { $node->setAttribute('classname', $this->classname); } - if (null !== $this->file) { + if ($this->file !== null) { $node->setAttribute('file', $this->file); } - if (null !== $this->line) { + if ($this->line !== null) { $node->setAttribute('line', (string)$this->line); } - if (null !== $this->assertions) { + if ($this->assertions !== null) { $node->setAttribute('assertions', (string)$this->assertions); } - if (null !== $this->time) { + if ($this->time !== null) { $node->setAttribute('time', \sprintf('%F', \round($this->time, 6))); } @@ -168,59 +117,33 @@ public function toXML(\DOMDocument $document): \DOMNode return $node; } - /** - * @return float|null - */ public function getTime(): ?float { return $this->time; } - /** - * @return int - */ public function getAssertionsCount(): int { return (int)$this->assertions; } - /** - * @return int - */ public function getErrorsCount(): int { - return \count(\array_filter($this->outputs, static function (AbstractOutput $output) { - return $output instanceof Error; - })); + return \count(\array_filter($this->outputs, static fn (AbstractOutput $output) => $output instanceof Error)); } - /** - * @return int - */ public function getWarningsCount(): int { - return \count(\array_filter($this->outputs, static function (AbstractOutput $output) { - return $output instanceof Warning; - })); + return \count(\array_filter($this->outputs, static fn (AbstractOutput $output) => $output instanceof Warning)); } - /** - * @return int - */ public function getFailuresCount(): int { - return \count(\array_filter($this->outputs, static function (AbstractOutput $output) { - return $output instanceof Failure; - })); + return \count(\array_filter($this->outputs, static fn (AbstractOutput $output) => $output instanceof Failure)); } - /** - * @return int - */ public function getSkippedCount(): int { - return \count(\array_filter($this->outputs, static function (AbstractOutput $output) { - return $output instanceof Skipped; - })); + return \count(\array_filter($this->outputs, static fn (AbstractOutput $output) => $output instanceof Skipped)); } } diff --git a/src/Formats/JUnit/JUnitSuite.php b/src/Formats/JUnit/JUnitSuite.php index 3e92eb9..370bb20 100644 --- a/src/Formats/JUnit/JUnitSuite.php +++ b/src/Formats/JUnit/JUnitSuite.php @@ -1,59 +1,37 @@ ['string', 'required'], - 'file' => ['string'], - ]; + public ?string $file = null; - /** - * @var JUnitCase[] - */ + /** @var JUnitCase[] */ private array $testCases = []; - /** - * @var JUnitSuite[] - */ + /** @var JUnitSuite[] */ private array $testSuites = []; /** - * @param \DOMDocument $document - * @return \DOMNode * @SuppressWarnings(PHPMD.CyclomaticComplexity) * @SuppressWarnings(PHPMD.NPathComplexity) * @phan-suppress PhanPossiblyNonClassMethodCall - * @phan-suppress PhanPluginSuspiciousParamPositionInternal * @phan-suppress PhanPossiblyFalseTypeReturn */ public function toXML(\DOMDocument $document): \DOMNode @@ -62,35 +40,42 @@ public function toXML(\DOMDocument $document): \DOMNode $node->setAttribute('name', $this->name); - if (null !== $this->file) { + if ($this->file !== null) { $node->setAttribute('file', $this->file); } - if ($value = $this->getTestsCount()) { + $value = $this->getTestsCount(); + if ($value > 0) { $node->setAttribute('tests', (string)$value); } - if ($value = $this->getAssertionsCount()) { + $value = $this->getAssertionsCount(); + if ($value > 0) { $node->setAttribute('assertions', (string)$value); } - if ($value = $this->getErrorsCount()) { + $value = $this->getErrorsCount(); + if ($value > 0) { $node->setAttribute('errors', (string)$value); } - if ($value = $this->getWarningsCount()) { + $value = $this->getWarningsCount(); + if ($value > 0) { $node->setAttribute('warnings', (string)$value); } - if ($value = $this->getFailuresCount()) { + $value = $this->getFailuresCount(); + if ($value > 0) { $node->setAttribute('failures', (string)$value); } - if ($value = $this->getSkippedCount()) { + $value = $this->getSkippedCount(); + if ($value > 0) { $node->setAttribute('skipped', (string)$value); } - if ($value = $this->getTime()) { + $value = $this->getTime(); + if ($value > 0) { $node->setAttribute('time', \sprintf('%F', \round($value, 6))); } @@ -105,31 +90,22 @@ public function toXML(\DOMDocument $document): \DOMNode return $node; } - /** - * @param string $name - * @return JUnitSuite - */ public function addSuite(string $name): self { - $testSuite = new self($name); + $testSuite = new self($name); $this->testSuites[] = $testSuite; + return $testSuite; } - /** - * @param string $name - * @return JUnitCase - */ public function addCase(string $name): JUnitCase { - $testCase = new JUnitCase($name); + $testCase = new JUnitCase($name); $this->testCases[] = $testCase; + return $testCase; } - /** - * @return int - */ private function getAssertionsCount(): int { $result = 0; @@ -138,16 +114,15 @@ private function getAssertionsCount(): int $result += $testSuite->getAssertionsCount(); } - $result += (int)\array_reduce($this->testCases, static function (int $acc, JUnitCase $testCase) { - return $acc + $testCase->getAssertionsCount(); - }, 0); + $result += \array_reduce( + $this->testCases, + static fn (int $acc, JUnitCase $testCase) => $acc + $testCase->getAssertionsCount(), + 0, + ); return $result; } - /** - * @return int - */ private function getErrorsCount(): int { $result = 0; @@ -156,16 +131,15 @@ private function getErrorsCount(): int $result += $testSuite->getErrorsCount(); } - $result += (int)\array_reduce($this->testCases, static function (int $acc, JUnitCase $testCase) { - return $acc + $testCase->getErrorsCount(); - }, 0); + $result += \array_reduce( + $this->testCases, + static fn (int $acc, JUnitCase $testCase) => $acc + $testCase->getErrorsCount(), + 0, + ); return $result; } - /** - * @return int - */ private function getWarningsCount(): int { $result = 0; @@ -174,16 +148,15 @@ private function getWarningsCount(): int $result += $testSuite->getWarningsCount(); } - $result += (int)\array_reduce($this->testCases, static function (int $acc, JUnitCase $testCase) { - return $acc + $testCase->getWarningsCount(); - }, 0); + $result += \array_reduce( + $this->testCases, + static fn (int $acc, JUnitCase $testCase) => $acc + $testCase->getWarningsCount(), + 0, + ); return $result; } - /** - * @return int - */ private function getFailuresCount(): int { $result = 0; @@ -192,16 +165,15 @@ private function getFailuresCount(): int $result += $testSuite->getFailuresCount(); } - $result += (int)\array_reduce($this->testCases, static function (int $acc, JUnitCase $testCase) { - return $acc + $testCase->getFailuresCount(); - }, 0); + $result += \array_reduce( + $this->testCases, + static fn (int $acc, JUnitCase $testCase) => $acc + $testCase->getFailuresCount(), + 0, + ); return $result; } - /** - * @return int - */ private function getSkippedCount(): int { $result = 0; @@ -210,16 +182,15 @@ private function getSkippedCount(): int $result += $testSuite->getSkippedCount(); } - $result += (int)\array_reduce($this->testCases, static function (int $acc, JUnitCase $testCase) { - return $acc + $testCase->getSkippedCount(); - }, 0); + $result += \array_reduce( + $this->testCases, + static fn (int $acc, JUnitCase $testCase) => $acc + $testCase->getSkippedCount(), + 0, + ); return $result; } - /** - * @return float - */ private function getTime(): float { $result = 0.0; @@ -228,16 +199,15 @@ private function getTime(): float $result += $testSuite->getTime(); } - $result += \array_reduce($this->testCases, static function (float $acc, JUnitCase $testCase) { - return $acc + (float)$testCase->getTime(); - }, 0.0); + $result += \array_reduce( + $this->testCases, + static fn (float $acc, JUnitCase $testCase) => $acc + (float)$testCase->getTime(), + 0.0, + ); return $result; } - /** - * @return int - */ private function getTestsCount(): int { $result = 0; diff --git a/src/Formats/Metric/Metric.php b/src/Formats/Metric/Metric.php index cc7eb54..d56608b 100644 --- a/src/Formats/Metric/Metric.php +++ b/src/Formats/Metric/Metric.php @@ -1,43 +1,26 @@ ['string'], - 'name' => ['string'], - 'description' => ['string'], - 'value' => ['float'], - ]; + public ?string $key = null; + public ?string $description = null; + public ?float $value = null; } diff --git a/src/Formats/Metric/Metrics.php b/src/Formats/Metric/Metrics.php index 0413e3d..9f74bd9 100644 --- a/src/Formats/Metric/Metrics.php +++ b/src/Formats/Metric/Metrics.php @@ -1,47 +1,31 @@ map = $map; + return $this; } - /** - * @return array - */ public function toArray(): array { $metrics = $this->getMetrics(); $result = []; + foreach ($metrics as $metric) { - if ($metric->name) { + if ($metric->name !== '') { $result[$metric->name] = $metric->toArray(); } } @@ -88,33 +67,33 @@ public function toArray(): array public function getMetrics(): array { $columnMap = []; - if (null !== $this->map) { + $toolName = ''; + + if ($this->map !== null) { $columnMap = $this->map->getMap(); + $toolName = $this->map->getName() . ':'; } - $toolName = $this->map ? $this->map->getName() . ':' : ''; - $result = []; + foreach ($this->metrics as $key => $value) { - if (null === $value) { + if ($value === null) { continue; } $key = (string)$key; - $metric = new Metric(); - $metric->key = $key; + $metric = new Metric(); + $metric->key = $key; $metric->value = $value; - $metric->name = \array_key_exists($key, $columnMap) + $metric->name = \array_key_exists($key, $columnMap) ? "{$columnMap[$key]} ({$toolName}{$key})" : "{$toolName}{$key}"; $result[$key] = $metric; } - \uasort($result, static function (Metric $metric1, Metric $metric2): int { - return \strcmp((string)$metric1->name, (string)$metric2->name); - }); + \uasort($result, static fn (Metric $metric1, Metric $metric2): int => \strcmp($metric1->name, $metric2->name)); return $result; } diff --git a/src/Formats/MetricMaps/AbstractMetricMap.php b/src/Formats/MetricMaps/AbstractMetricMap.php index a4868f9..a6ce426 100644 --- a/src/Formats/MetricMaps/AbstractMetricMap.php +++ b/src/Formats/MetricMaps/AbstractMetricMap.php @@ -1,36 +1,26 @@ map; } - /** - * @return string - */ public function getName(): string { return $this->name; diff --git a/src/Formats/MetricMaps/JUnit.php b/src/Formats/MetricMaps/JUnit.php index 36cbf43..8fc1de1 100644 --- a/src/Formats/MetricMaps/JUnit.php +++ b/src/Formats/MetricMaps/JUnit.php @@ -1,36 +1,26 @@ 'Tests / Time', 'tests' => 'Tests / Count', diff --git a/src/Formats/MetricMaps/PhpDepend.php b/src/Formats/MetricMaps/PhpDepend.php index 7e6a8cd..94fc3cc 100644 --- a/src/Formats/MetricMaps/PhpDepend.php +++ b/src/Formats/MetricMaps/PhpDepend.php @@ -1,36 +1,26 @@ 'Lines', diff --git a/src/Formats/MetricMaps/PhpLoc.php b/src/Formats/MetricMaps/PhpLoc.php index a120e89..671eac0 100644 --- a/src/Formats/MetricMaps/PhpLoc.php +++ b/src/Formats/MetricMaps/PhpLoc.php @@ -1,36 +1,26 @@ 'FileSystem / Files', 'directories' => 'FileSystem / Directories', @@ -90,7 +80,7 @@ class PhpLoc extends AbstractMetricMap 'classConstants' => 'Constants / Classes', // Tests - 'testClasses' => 'Tests / Classes', - 'testMethods' => 'Tests / Methods', + 'testClasses' => 'Tests / Classes', + 'testMethods' => 'Tests / Methods', ]; } diff --git a/src/Formats/MetricMaps/PhpMetrics.php b/src/Formats/MetricMaps/PhpMetrics.php index 84ac71b..4f8fb7d 100644 --- a/src/Formats/MetricMaps/PhpMetrics.php +++ b/src/Formats/MetricMaps/PhpMetrics.php @@ -1,42 +1,33 @@ 'Myers / Distance', 'interval' => 'Myers / Interval', diff --git a/src/Formats/MetricMaps/PhpUnitClover.php b/src/Formats/MetricMaps/PhpUnitClover.php index 65cf863..3eb1b47 100644 --- a/src/Formats/MetricMaps/PhpUnitClover.php +++ b/src/Formats/MetricMaps/PhpUnitClover.php @@ -1,36 +1,26 @@ 'Coverage / Line-level, %', 'CodeCoverageAbsLTotal' => 'Coverage / Found LOC', diff --git a/src/Formats/PlainText/Table.php b/src/Formats/PlainText/PlainTable.php similarity index 60% rename from src/Formats/PlainText/Table.php rename to src/Formats/PlainText/PlainTable.php index bfc0815..2db055d 100644 --- a/src/Formats/PlainText/Table.php +++ b/src/Formats/PlainText/PlainTable.php @@ -1,91 +1,58 @@ buffer = new BufferedOutput(); $this->buffer->getFormatter()->setDecorated(false); - $this->table = new SymfonyTable($this->buffer); + $this->table = new Table($this->buffer); $this->table->setHeaders(['Line:Column', 'Severity', 'Message']); $this->table->setColumnWidth(2, 80); $this->table->setColumnMaxWidth(2, 80); - if ('' !== $testCaseName) { - $this->testCaseName = $testCaseName; - } + $this->testCaseName = $testCaseName; } - /** - * @return SymfonyTable - */ - public function getTable(): SymfonyTable + public function getTable(): Table { return $this->table; } - /** - * @param array $row - * @return $this - */ public function appendRow(array $row): self { $this->rows[] = $row; + return $this; } - /** - * @return string - */ public function render(): string { $rowsCount = \count($this->rows); @@ -98,7 +65,7 @@ public function render(): string } } - if ($this->testCaseName) { + if ($this->testCaseName !== '') { $this->table ->setHeaderTitle($this->testCaseName) ->setFooterTitle($this->testCaseName); @@ -107,6 +74,7 @@ public function render(): string } $this->table->render(); + return $this->buffer->fetch(); } } diff --git a/src/Formats/PlainText/PlainText.php b/src/Formats/PlainText/PlainText.php index 5c32567..f54683b 100644 --- a/src/Formats/PlainText/PlainText.php +++ b/src/Formats/PlainText/PlainText.php @@ -1,83 +1,52 @@ testCases[] = $testSuite; - return $testSuite; - } - - /** - * @param string|null $name - * @return PlainTextSuite - */ - public function addSuite(?string $name = null): PlainTextSuite - { - $testSuite = new PlainTextSuite($name ?: self::DEFAULT_NAME); - $this->testSuites[] = $testSuite; - return $testSuite; - } - - /** - * @return string - */ public function __toString(): string { $tables = []; foreach ($this->testCases as $testCase) { if (!isset($tables[$testCase->name])) { - $tables[$testCase->name] = new Table($testCase->name ?: self::DEFAULT_NAME); + $tables[$testCase->name] = new PlainTable( + $testCase->name !== '' ? $testCase->name : self::DEFAULT_NAME, + ); } $tables[$testCase->name]->appendRow([ - ($testCase->line ?: 1) . ($testCase->column ? ":{$testCase->column}" : ''), + ($testCase->line ?? 1) . ($testCase->column > 0 ? ":{$testCase->column}" : ''), $testCase->level, - $testCase->message + $testCase->message, ]); } - $result = \array_reduce($tables, static function (array $acc, Table $table): array { + $result = \array_reduce($tables, static function (array $acc, PlainTable $table): array { $acc[] = $table->render(); + return $acc; }, []); @@ -87,4 +56,20 @@ public function __toString(): string return \trim(\implode("\n", $result)) . "\n"; } + + public function addCase(?string $name = null): PlainTextCase + { + $testSuite = new PlainTextCase($name); + $this->testCases[] = $testSuite; + + return $testSuite; + } + + public function addSuite(?string $name = null): PlainTextSuite + { + $testSuite = new PlainTextSuite($name ?? self::DEFAULT_NAME); + $this->testSuites[] = $testSuite; + + return $testSuite; + } } diff --git a/src/Formats/PlainText/PlainTextCase.php b/src/Formats/PlainText/PlainTextCase.php index 86c3876..7518a7f 100644 --- a/src/Formats/PlainText/PlainTextCase.php +++ b/src/Formats/PlainText/PlainTextCase.php @@ -1,35 +1,24 @@ ['string'], // It's relative path to file - 'level' => ['string'], // See self::LEVEL_* - 'line' => ['int'], - 'column' => ['int'], - 'message' => ['string'], - ]; + // `$this->name` is relative path to file + public ?int $line = null; + public ?int $column = null; + public ?string $message = null; + public string $level; // See self::LEVEL_* - /** - * PlainTextCase constructor. - * @param string|null $name - */ public function __construct(?string $name = null) { parent::__construct($name); // Set default values - $this->level = self::DEFAULT_LEVEL; + $this->level = self::DEFAULT_LEVEL; $this->message = self::DEFAULT_MESSAGE; - $this->column = 1; - $this->line = 1; + $this->column = 1; + $this->line = 1; } } diff --git a/src/Formats/PlainText/PlainTextSuite.php b/src/Formats/PlainText/PlainTextSuite.php index 6fe6a0f..ea66a81 100644 --- a/src/Formats/PlainText/PlainTextSuite.php +++ b/src/Formats/PlainText/PlainTextSuite.php @@ -1,71 +1,60 @@ testCases[] = $testSuite; - return $testSuite; - } - - /** - * @return string - */ public function __toString(): string { $tables = []; foreach ($this->testCases as $testCase) { if (!isset($tables[$testCase->name])) { - $tables[$testCase->name] = new Table($testCase->name ?: PlainText::DEFAULT_NAME); + $tables[$testCase->name] = new PlainTable( + $testCase->name !== '' ? $testCase->name : PlainText::DEFAULT_NAME, + ); } $tables[$testCase->name]->appendRow([ - ($testCase->line ?: 1) . ($testCase->column ? ":{$testCase->column}" : ''), + ($testCase->line ?? 1) . ($testCase->column > 0 ? ":{$testCase->column}" : ''), $testCase->level, - $testCase->message + $testCase->message, ]); } - $list = \array_reduce($tables, static function (array $acc, Table $table): array { + $list = \array_reduce($tables, static function (array $acc, PlainTable $table): array { $acc[] = $table->render(); + return $acc; }, []); return \trim(\implode("\n", $list)) . "\n"; } + + public function addCase(?string $name = null): PlainTextCase + { + $testSuite = new PlainTextCase($name); + $this->testCases[] = $testSuite; + + return $testSuite; + } } diff --git a/src/Formats/Source/Exception.php b/src/Formats/Source/Exception.php index c5590c6..611f387 100644 --- a/src/Formats/Source/Exception.php +++ b/src/Formats/Source/Exception.php @@ -1,26 +1,21 @@ ['string'], // It's relative path to file - 'fullpath' => ['string'], - 'line' => ['int'], - ]; + public string $name; + public ?string $fullpath = null; + public ?int $line = null; + public ?int $column = null; - /** - * @return string - */ public function getFullName(): string { $result = (string)$this->fullpath; @@ -52,9 +35,6 @@ public function getFullName(): string return $result; } - /** - * @return string - */ public function getShortName(): string { $result = $this->name; diff --git a/src/Formats/Source/SourceCase.php b/src/Formats/Source/SourceCase.php index f0bc670..641a52f 100644 --- a/src/Formats/Source/SourceCase.php +++ b/src/Formats/Source/SourceCase.php @@ -1,181 +1,116 @@ ['string'], - - // Location - 'class' => ['string'], - 'classname' => ['string'], - 'file' => ['string'], - 'line' => ['int'], - 'column' => ['int'], - - // Output - 'stdOut' => ['string'], - 'errOut' => ['string'], - - // Test meta data - 'time' => ['float'], - 'assertions' => ['int'], - 'actual' => ['string'], - 'expected' => ['string'], - - // Type of negative result - 'failure' => [SourceCaseOutput::class], - 'error' => [SourceCaseOutput::class], - 'warning' => [SourceCaseOutput::class], - 'skipped' => [SourceCaseOutput::class], - ]; - - /** - * @param int $round - * @return string|null - */ + // Location + public ?string $class = null; + public ?string $classname = null; + public ?string $file = null; + public ?int $line = null; + public ?int $column = null; + + // Output + public ?string $stdOut = null; + public ?string $errOut = null; + + // Test meta data + public ?float $time = null; + public ?int $assertions = null; + public ?string $actual = null; + public ?string $expected = null; + + // Type of negative results + public ?SourceCaseOutput $failure = null; + public ?SourceCaseOutput $error = null; + public ?SourceCaseOutput $warning = null; + public ?SourceCaseOutput $skipped = null; + public function getTime(int $round = 6): ?string { return $this->time === null ? null : (string)\round($this->time, $round); } - /** - * @return bool - */ public function isError(): bool { return $this->error !== null; } - /** - * @return bool - */ public function isWarning(): bool { return $this->warning !== null; } - /** - * @return bool - */ public function isFailure(): bool { return $this->failure !== null; } - /** - * @return bool - */ public function isSkipped(): bool { return $this->skipped !== null; } - /** - * @return bool - */ public function isComparison(): bool { return $this->actual !== null && $this->expected !== null; } - /** - * @return string|null - */ public function getMessage(): ?string { $message = null; - if (null !== $this->stdOut) { + if ($this->stdOut !== null) { $message = self::buildMessage([$this->name, $this->stdOut]); - } elseif (null !== $this->errOut) { + } elseif ($this->errOut !== null) { $message = self::buildMessage([$this->name, $this->errOut]); - } elseif (null !== $this->failure) { - $message = self::buildMessage([$this->failure->details]) ?: self::buildMessage([$this->failure->message]); - } elseif (null !== $this->error) { - $message = self::buildMessage([$this->error->details]) ?: self::buildMessage([$this->error->message]); - } elseif (null !== $this->warning) { - $message = self::buildMessage([$this->warning->details]) ?: self::buildMessage([$this->warning->message]); - } elseif (null !== $this->skipped) { - $message = self::buildMessage([$this->skipped->details]) ?: self::buildMessage([$this->skipped->message]); - $message = $message ?: 'Skipped'; + } elseif ($this->failure !== null) { + $message = $this->failure->details !== '' + ? self::buildMessage([$this->failure->details]) + : self::buildMessage([$this->failure->message]); + } elseif ($this->error !== null) { + $message = $this->error->details !== '' + ? self::buildMessage([$this->error->details]) + : self::buildMessage([$this->error->message]); + } elseif ($this->warning !== null) { + $message = $this->warning->details !== '' + ? self::buildMessage([$this->warning->details]) + : self::buildMessage([$this->warning->message]); + } elseif ($this->skipped !== null) { + $message = $this->skipped->details !== '' + ? self::buildMessage([$this->skipped->details]) + : self::buildMessage([$this->skipped->message]); + $message ??= 'Skipped'; } - return $message ?: null; + return $message !== '' ? $message : null; } - /** - * @param array $parts - * @return string - */ - private static function buildMessage(array $parts): string + private static function buildMessage(array $parts): ?string { - $parts = \array_map('\trim', $parts); - $parts = \array_filter($parts); - $parts = \array_unique($parts); + $parts = \array_filter($parts, '\is_string'); + $parts = \array_map('\trim', $parts); + $parts = \array_filter($parts); + $parts = \array_unique($parts); $message = \implode("\n", $parts); + $message = \trim($message); - return \trim($message); + return $message !== '' ? $message : null; } } diff --git a/src/Formats/Source/SourceCaseOutput.php b/src/Formats/Source/SourceCaseOutput.php index 518c206..19c1ecb 100644 --- a/src/Formats/Source/SourceCaseOutput.php +++ b/src/Formats/Source/SourceCaseOutput.php @@ -1,93 +1,66 @@ type = $type; + $this->type = $type; $this->message = $message; $this->details = $details; } - /** - * @return Data - */ public function parseDescription(): Data { $result = []; - $text = (string)$this->details; - $result['description'] = $text; - + $text = (string)$this->details; $lines = \explode("\n", $text); if (\array_key_exists(1, $lines)) { $result['message'] = $lines[1]; unset($lines[0], $lines[1]); $result['description'] = ' ' . \ltrim(\implode("\n ", $lines)); } else { - $result['message'] = $lines[0]; + $result['message'] = $lines[0]; $result['description'] = null; } if (\strpos($text, '@@ @@') > 0) { - $diff = \trim(\explode('@@ @@', $text)[1]); + $diff = \trim(\explode('@@ @@', $text)[1]); $diffLines = \explode("\n", $diff); - $actual = []; - $expected = []; + $actual = []; + $expected = []; $description = []; - $isDiffPart = true; + $isDiffPart = true; foreach ($diffLines as $diffLine) { $diffLine = \trim($diffLine); - if (!$diffLine) { + if ($diffLine === '') { $isDiffPart = false; continue; } @@ -106,23 +79,22 @@ public function parseDescription(): Data } } - $result['actual'] = \implode("\n", $actual); - $result['expected'] = \implode("\n", $expected); + $result['actual'] = \implode("\n", $actual); + $result['expected'] = \implode("\n", $expected); $result['description'] = ' ' . \ltrim(\implode("\n ", $description)) . "\n "; } return data($result); } - /** - * @return array - */ public function toArray(): array { - return [ + $result = [ 'type' => $this->type, 'message' => $this->message, - 'details' => $this->details + 'details' => $this->details, ]; + + return \array_filter($result, static fn ($value) => $value !== null); } } diff --git a/src/Formats/Source/SourceSuite.php b/src/Formats/Source/SourceSuite.php index 8bbc1b5..1d03732 100644 --- a/src/Formats/Source/SourceSuite.php +++ b/src/Formats/Source/SourceSuite.php @@ -1,58 +1,34 @@ ['string'], - 'file' => ['string'], - 'class' => ['string'], - ]; + public ?string $file = null; + public ?string $class = null; - /** - * @var SourceCase[] - */ + /** @var SourceCase[] */ private array $cases = []; - /** - * @var SourceSuite[] - */ + /** @var SourceSuite[] */ private array $suites = []; - /** - * @return bool - */ public function hasSubSuites(): bool { return \count($this->suites) > 0; @@ -74,55 +50,43 @@ public function getCases(): array return $this->cases; } - /** - * @return bool - */ public function isEmpty(): bool { return $this->getCasesCount() === 0; } - /** - * @param string $testSuiteName - * @return SourceSuite - */ public function addSuite(string $testSuiteName): self { if (!\array_key_exists($testSuiteName, $this->suites)) { - $testSuite = new self($testSuiteName); + $testSuite = new self($testSuiteName); $this->suites[$testSuiteName] = $testSuite; } return $this->suites[$testSuiteName]; } - /** - * @param string $testCaseName - * @return SourceCase - */ public function addTestCase(string $testCaseName): SourceCase { - $testCase = new SourceCase($testCaseName); + $testCase = new SourceCase($testCaseName); $this->cases[] = $testCase; + return $testCase; } - /** - * @return array - */ public function toArray(): array { - $data = \array_filter(\array_merge(parent::toArray(), [ - 'time' => $this->getTime(), - 'tests' => $this->getCasesCount(), - 'assertions' => $this->getAssertionsCount(), - 'errors' => $this->getErrorsCount(), - 'warnings' => $this->getWarningCount(), - 'failure' => $this->getFailureCount(), - 'skipped' => $this->getSkippedCount(), - ]), static function ($value) { - return $value !== null; - }); + $data = \array_filter( + \array_merge(parent::toArray(), [ + 'time' => $this->getTime(), + 'tests' => $this->getCasesCount(), + 'assertions' => $this->getAssertionsCount(), + 'errors' => $this->getErrorsCount(), + 'warnings' => $this->getWarningCount(), + 'failure' => $this->getFailureCount(), + 'skipped' => $this->getSkippedCount(), + ]), + static fn ($value) => $value !== null, + ); $result = [ 'data' => $data, @@ -141,10 +105,6 @@ public function toArray(): array return $result; } - /** - * @param int $round - * @return float|null - */ public function getTime(int $round = 6): ?float { $result = 0.0; @@ -160,9 +120,6 @@ public function getTime(int $round = 6): ?float return $result === 0.0 ? null : \round($result, $round); } - /** - * @return int|null - */ public function getCasesCount(): ?int { $subResult = 0; @@ -176,9 +133,6 @@ public function getCasesCount(): ?int return $result === 0 ? null : $result; } - /** - * @return int|null - */ public function getAssertionsCount(): ?int { $result = 0; @@ -194,9 +148,6 @@ public function getAssertionsCount(): ?int return $result === 0 ? null : $result; } - /** - * @return int|null - */ public function getErrorsCount(): ?int { $result = 0; @@ -212,9 +163,6 @@ public function getErrorsCount(): ?int return $result === 0 ? null : $result; } - /** - * @return int|null - */ public function getWarningCount(): ?int { $result = 0; @@ -230,9 +178,6 @@ public function getWarningCount(): ?int return $result === 0 ? null : $result; } - /** - * @return int|null - */ public function getFailureCount(): ?int { $result = 0; @@ -248,9 +193,6 @@ public function getFailureCount(): ?int return $result === 0 ? null : $result; } - /** - * @return int|null - */ public function getSkippedCount(): ?int { $result = 0; diff --git a/src/Formats/TeamCity/Exception.php b/src/Formats/TeamCity/Exception.php index ceb210f..b2e20b4 100644 --- a/src/Formats/TeamCity/Exception.php +++ b/src/Formats/TeamCity/Exception.php @@ -1,26 +1,21 @@ $propertyValue) { $escapedValue = self::escapeValue((string)$propertyValue); if (\is_int($propertyName)) { @@ -91,18 +81,16 @@ public static function printEvent(string $eventName, array $params = []): string /** * Checks if given value is valid Java ID. * Valid Java ID starts with alpha-character and continues with mix of alphanumeric characters and `-`. - * @param string $value */ public static function ensureValidJavaId(string $value): void { - if (!\preg_match('/^[a-z][-a-z0-9]+$/i', $value)) { + if (\preg_match('/^[a-z][-a-z0-9]+$/i', $value) === 0) { throw new Exception("Value \"{$value}\" is not valid Java ID."); } } /** - * @param \DateTime|null $datetime Either date with timestamp or `NULL` for now. - * @return string + * @param null|\DateTime $datetime either date with timestamp or `NULL` for now */ public static function formatTimestamp(?\DateTime $datetime = null): string { @@ -115,13 +103,9 @@ public static function formatTimestamp(?\DateTime $datetime = null): string return \substr($formatted, 0, 23) . \substr($formatted, 26); } - /** - * @param string|null $value - * @return string|null - */ private static function escapeValue(?string $value): ?string { - if (null === $value) { + if ($value === null) { return null; } @@ -137,17 +121,17 @@ private static function escapeValue(?string $value): ?string return \preg_replace_callback( '/([\'\n\r|[\]])|\\\\u(\d{4})/', static function (array $matches) use ($escapeCharacterMap) { - if ($matches[1]) { + if ($matches[1] !== '') { return $escapeCharacterMap[$matches[1]]; } - if ($matches[2]) { + if ($matches[2] !== '') { return '|0x' . $matches[2]; } throw new Exception('Unexpected match combination.'); }, - $value + $value, ); } } diff --git a/src/Formats/TeamCity/TeamCity.php b/src/Formats/TeamCity/TeamCity.php index db7ac28..47acd54 100644 --- a/src/Formats/TeamCity/TeamCity.php +++ b/src/Formats/TeamCity/TeamCity.php @@ -1,30 +1,25 @@ true + private array $params = [ + 'show-datetime' => true, ]; - /** - * @var array - */ private array $inspectionTypes = []; /** - * @param AbstractWriter $writer The writer used to write messages. - * @param int|null $flowId The flow ID or `null`. - * @param array $params + * @param AbstractWriter $writer the writer used to write messages + * @param int $flowId the flow ID or `null` */ - public function __construct(AbstractWriter $writer, ?int $flowId = null, array $params = []) + public function __construct(AbstractWriter $writer, int $flowId = 0, array $params = []) { - $flowId = (int)$flowId ?: null; - if (null === $flowId && Sys::isFunc('getmypid')) { - $this->flowId = (int)\getmypid() ?: null; - } else { - $this->flowId = $flowId; + $this->flowId = \max($flowId, 0); + if ($flowId === 0 && Sys::isFunc('getmypid')) { + $this->flowId = (int)\getmypid(); } $this->writer = $writer; $this->params = \array_merge($this->params, $params); } - /** - * @param int|null $flowId - * @return $this - */ - public function setFlowId(?int $flowId): self + public function setFlowId(int $flowId): self { $this->flowId = $flowId; + return $this; } /** * Returns the writer. * - * @return AbstractWriter The writer instance. + * @return AbstractWriter the writer instance */ public function getWriter(): AbstractWriter { @@ -97,8 +74,7 @@ public function getWriter(): AbstractWriter } /** - * @param string $name The test suite name. - * @param array $params + * @param string $name the test suite name */ public function testSuiteStarted(string $name, array $params = []): void { @@ -106,8 +82,7 @@ public function testSuiteStarted(string $name, array $params = []): void } /** - * @param string $name The test suite name. - * @param array $params + * @param string $name the test suite name */ public function testSuiteFinished(string $name, array $params = []): void { @@ -115,40 +90,39 @@ public function testSuiteFinished(string $name, array $params = []): void } /** - * @param string $messageName - * @param array $parameters Parameters with value === `null` will be filtered out. + * @param array $parameters parameters with value === `null` will be filtered out */ public function write(string $messageName, array $parameters): void { $parameters = \array_merge($parameters, [ 'timestamp' => Helper::formatTimestamp(), - 'flowId' => $this->flowId, ]); + if ($this->flowId > 0) { + $parameters['flowId'] = $this->flowId; + } + if (!$this->params['show-datetime']) { unset($parameters['timestamp']); } // Filter out optional parameters. - $parameters = \array_filter($parameters, static function ($value) { - return $value !== null && $value !== '' && $value !== ' '; - }); + $parameters = \array_filter( + $parameters, + static fn ($value) => $value !== null && $value !== '' && $value !== ' ', + ); $this->writer->write(Helper::printEvent($messageName, $parameters)); } - /** - * @param string $name - * @param array $params - */ public function testStarted(string $name, array $params = []): void { $this->write('testStarted', \array_merge(['name' => $name], $params)); } /** - * @param string $name The test name. - * @param float|null $duration The test duration in seconds. + * @param string $name the test name + * @param null|float $duration the test duration in seconds */ public function testFinished(string $name, ?float $duration = null): void { @@ -158,10 +132,6 @@ public function testFinished(string $name, ?float $duration = null): void ]); } - /** - * @param string $name - * @param array $params - */ public function testFailed(string $name, array $params = []): void { $writeParams = [ @@ -172,27 +142,20 @@ public function testFailed(string $name, array $params = []): void 'type' => null, 'actual' => $params['actual'] ?? null, 'expected' => $params['expected'] ?? null, - ]; - if (null !== $writeParams['actual'] && null !== $writeParams['expected']) { + if ($writeParams['actual'] !== null && $writeParams['expected'] !== null) { $writeParams['type'] = 'comparisonFailure'; } $this->write('testFailed', $writeParams); } - /** - * @param string $name - * @param string|null $message - * @param string|null $details - * @param float|null $duration - */ public function testSkipped( string $name, ?string $message = null, ?string $details = null, - ?float $duration = null + ?float $duration = null, ): void { $this->write('testIgnored', [ 'name' => $name, @@ -202,29 +165,23 @@ public function testSkipped( ]); } - /** - * @param string $inspectionId - * @param string|null $name - * @param string|null $category - * @param string|null $description - */ public function addInspectionType( string $inspectionId, ?string $name = null, ?string $category = null, - ?string $description = null + ?string $description = null, ): void { $cleanInspectionId = \trim($inspectionId); - if (!$cleanInspectionId) { + if ($cleanInspectionId === '') { throw new Exception("Inspection Id can't be empty"); } if (!\in_array($inspectionId, $this->inspectionTypes, true)) { $this->write('inspectionType', [ 'id' => $cleanInspectionId, - 'name' => $name ?: self::DEFAULT_INSPECTION_NAME, - 'category' => $category ?: self::DEFAULT_INSPECTION_CATEGORY, - 'description' => $description ?: self::DEFAULT_INSPECTION_DESC, + 'name' => $name ?? self::DEFAULT_INSPECTION_NAME, + 'category' => $category ?? self::DEFAULT_INSPECTION_CATEGORY, + 'description' => $description ?? self::DEFAULT_INSPECTION_DESC, ]); $this->inspectionTypes[] = $inspectionId; @@ -236,25 +193,18 @@ public function addDefaultInspectionType(): void $this->addInspectionType(self::DEFAULT_INSPECTION_ID); } - /** - * @param string $typeId - * @param string|null $filename - * @param int|null $line - * @param string $message - * @param string $severity - */ public function addInspectionIssue( string $typeId, ?string $filename, ?int $line, string $message, - string $severity = self::SEVERITY_WARNING + string $severity = self::SEVERITY_WARNING, ): void { $this->write('inspection', [ - 'typeId' => $typeId, - 'file' => $filename ?: 'Undefined file', - 'line' => $line ?: 0, - 'message' => $message, + 'typeId' => $typeId, + 'file' => $filename ?? 'Undefined file', + 'line' => $line ?? 0, + 'message' => $message, // Custom props 'SEVERITY' => $severity, ]); diff --git a/src/Formats/TeamCity/Writers/AbstractWriter.php b/src/Formats/TeamCity/Writers/AbstractWriter.php index decef11..29c44ca 100644 --- a/src/Formats/TeamCity/Writers/AbstractWriter.php +++ b/src/Formats/TeamCity/Writers/AbstractWriter.php @@ -1,31 +1,22 @@ buffer[] = $message; } - /** - * @return array - */ public function getBuffer(): array { return $this->buffer; diff --git a/src/Formats/TeamCity/Writers/CustomCallback.php b/src/Formats/TeamCity/Writers/CustomCallback.php index efc706b..a3dae66 100644 --- a/src/Formats/TeamCity/Writers/CustomCallback.php +++ b/src/Formats/TeamCity/Writers/CustomCallback.php @@ -1,42 +1,32 @@ callback) { + if ($this->callback === null) { throw new Exception('Callback function is not set'); } - \call_user_func($this->callback, $message); + ($this->callback)($message); } /** diff --git a/src/Formats/TeamCity/Writers/Exception.php b/src/Formats/TeamCity/Writers/Exception.php index 793da79..f5539b8 100644 --- a/src/Formats/TeamCity/Writers/Exception.php +++ b/src/Formats/TeamCity/Writers/Exception.php @@ -1,26 +1,21 @@ output) { + if ($this->output === null) { throw new Exception('Symfony OutputInterface endpoint is not set'); } - if (null !== $message) { + if ($message !== null) { $this->output->writeln($message); } } - /** - * @param OutputInterface $output - */ public function setCallback(OutputInterface $output): void { $this->output = $output; diff --git a/src/Formats/Xml.php b/src/Formats/Xml.php index fceb1d8..097d82c 100644 --- a/src/Formats/Xml.php +++ b/src/Formats/Xml.php @@ -1,63 +1,52 @@ preserveWhiteSpace = false; - if ($source) { + if ($source !== null) { $document->loadXML($source); } - $document->version = self::VERSION; - $document->encoding = self::ENCODING; + $document->xmlVersion = self::VERSION; + $document->encoding = self::ENCODING; $document->formatOutput = true; return $document; } /** - * @param array $xmlAsArray - * @param \DOMElement|null $domElement - * @param \DOMDocument|null $document - * @return \DOMDocument + * @suppress PhanPossiblyFalseTypeArgumentInternal + * @suppress PhanPossiblyFalseTypeArgument */ public static function array2Dom( array $xmlAsArray, ?\DOMElement $domElement = null, - ?\DOMDocument $document = null + ?\DOMDocument $document = null, ): \DOMDocument { - if (null === $document) { + if ($document === null) { $document = self::createDomDocument(); } @@ -69,9 +58,7 @@ public static function array2Dom( if ($xmlAsArray['_cdata'] !== null) { $newNode = $document->createCDATASection($xmlAsArray['_cdata']); - if ($newNode !== false) { - $domElement->appendChild($newNode); - } + $domElement->appendChild($newNode); } if ($domElement instanceof \DOMElement) { @@ -82,18 +69,15 @@ public static function array2Dom( foreach ($xmlAsArray['_children'] as $mixedElement) { $newNode = $document->createElement($mixedElement['_node']); - if ($newNode !== false) { - $domElement->appendChild($newNode); - self::array2Dom($mixedElement, $newNode, $document); - } + $domElement->appendChild($newNode); + self::array2Dom($mixedElement, $newNode, $document); } return $document; } /** - * @param \DOMNode|\DOMElement|\DOMDocument $element - * @return array + * @param \DOMDocument|\DOMElement|\DOMNode $element * @SuppressWarnings(PHPMD.CyclomaticComplexity) */ public static function dom2Array(\DOMNode $element): array @@ -106,8 +90,9 @@ public static function dom2Array(\DOMNode $element): array '_children' => [], ]; - if ($element->attributes && $element->hasAttributes()) { + if ($element->attributes !== null && $element->hasAttributes()) { foreach ($element->attributes as $attr) { + /** @var \DOMAttr $attr */ $result['_attrs'][$attr->name] = $attr->value; } } @@ -115,14 +100,23 @@ public static function dom2Array(\DOMNode $element): array if ($element->hasChildNodes()) { $children = $element->childNodes; - if ($children->length === 1 && $child = $children->item(0)) { + if ($children->length === 1 && $children->item(0) !== null) { + /** @var null|\DOMNode $child */ + $child = $children->item(0); + + if ($child === null) { + return $result; + } + if ($child->nodeType === \XML_TEXT_NODE) { $result['_text'] = $child->nodeValue; + return $result; } if ($child->nodeType === \XML_CDATA_SECTION_NODE) { $result['_cdata'] = $child->nodeValue; + return $result; } } diff --git a/src/Helper.php b/src/Helper.php index 6bf01f1..98c1ac4 100644 --- a/src/Helper.php +++ b/src/Helper.php @@ -1,38 +1,29 @@ saveXML(), $xmlActual->saveXML()); } diff --git a/tests/GeneralSuite/CliCommandsPharTest.php b/tests/CliCommandsPharTest.php similarity index 60% rename from tests/GeneralSuite/CliCommandsPharTest.php rename to tests/CliCommandsPharTest.php index 8a14363..d303379 100644 --- a/tests/GeneralSuite/CliCommandsPharTest.php +++ b/tests/CliCommandsPharTest.php @@ -1,16 +1,15 @@ taskReal($action, $params); } - /** - * @param string $action - * @param array $params - * @return string - */ public function taskReal(string $action, array $params = []): string { + skip('Phar tests are not implemented yet. Waiting for compiled phar'); + $rootDir = PROJECT_ROOT; - - $params['-v'] = null; + + $params['-v'] = null; $params['--no-ansi'] = null; return Cli::exec( - implode(' ', [ + \implode(' ', [ Sys::getBinary(), "{$rootDir}/build/ci-report-converter.phar", $action, - '2>&1' + '2>&1', ]), $params, $rootDir, - false + false, ); } } diff --git a/tests/GeneralSuite/CliCommandsTest.php b/tests/CliCommandsTest.php similarity index 66% rename from tests/GeneralSuite/CliCommandsTest.php rename to tests/CliCommandsTest.php index b1983e1..941685d 100644 --- a/tests/GeneralSuite/CliCommandsTest.php +++ b/tests/CliCommandsTest.php @@ -1,32 +1,31 @@ taskReal('convert', ['help' => null]); - $helpMessage = implode("\n", [ - '', - '```', - '$ php ./vendor/bin/ci-report-converter convert --help', - $helpMessage, - '```', - '', - ]); + $helpMessage = $this->taskReal('convert', ['help' => null]); + $helpMessage = \implode("\n", [ + '', + '```', + '$ php ./vendor/bin/ci-report-converter convert --help', + $helpMessage, + '```', + '', + ]); - isFileContains($helpMessage, PROJECT_ROOT . '/README.md'); - } + isFileContains($helpMessage, PROJECT_ROOT . '/README.md'); } - public function testTcStatsCommandReadMe() + public function testTcStatsCommandReadMe(): void { - skip('Fix me'); - - if (version_compare(PHP_VERSION, '7.4.99') < 0) { - $helpMessage = $this->taskReal('teamcity:stats', ['help' => null]); - $helpMessage = implode("\n", [ - '', - '```', - '$ php ./vendor/bin/ci-report-converter teamcity:stats --help', - $helpMessage, - '```', - '', - ]); + $helpMessage = $this->taskReal('teamcity:stats', ['help' => null]); + $helpMessage = \implode("\n", [ + '', + '```', + '$ php ./vendor/bin/ci-report-converter teamcity:stats --help', + $helpMessage, + '```', + '', + ]); - isFileContains($helpMessage, PROJECT_ROOT . '/README.md'); - } + isFileContains($helpMessage, PROJECT_ROOT . '/README.md'); } - public function testGitHubActionsYml() + public function testGitHubActionsYml(): void { - $helpJson = json($this->taskReal('convert', ['help' => null, 'format' => 'json'])); + $helpJson = json($this->taskReal('convert', ['help' => null, 'format' => 'json'])); $actionYml = yml(PROJECT_ROOT . '/action.yml'); $excludedOptions = [ @@ -93,10 +80,10 @@ public function testGitHubActionsYml() 'ansi', 'no-ansi', 'no-interaction', - // + 'tc-flow-id', 'root-path', - // + 'mute-errors', 'no-progress', 'profile', @@ -104,17 +91,19 @@ public function testGitHubActionsYml() 'stdout-only', 'non-zero-on-error', 'timestamp', + 'cron', ]; - $expectedInputs = []; + $expectedInputs = []; $expectedRunsArgs = ['convert']; + foreach ($helpJson->findArray('definition.options') as $key => $option) { - if (in_array($key, $excludedOptions, true)) { + if (\in_array($key, $excludedOptions, true)) { continue; } - $expectedInputs[$key] = array_filter([ - 'description' => strip_tags($option['description']), + $expectedInputs[$key] = \array_filter([ + 'description' => \strip_tags($option['description']), 'default' => $option['default'], 'required' => $option['is_value_required'], ]); @@ -126,11 +115,11 @@ public function testGitHubActionsYml() $expectedRunsArgs[] = '-vvv'; $expectedInputs['output-format']['default'] = GithubCliConverter::TYPE; - $expectedInputs['input-file']['required'] = true; - ksort($expectedInputs); + $expectedInputs['input-file']['required'] = true; + \ksort($expectedInputs); - $errorMessage = implode("\n", [ - "See: " . PROJECT_ROOT . "/action.yml", + $errorMessage = \implode("\n", [ + 'See: ' . PROJECT_ROOT . '/action.yml', 'Expected', '```', yml(['inputs' => $expectedInputs]), @@ -138,11 +127,11 @@ public function testGitHubActionsYml() ]); isSame($expectedInputs, $actionYml->getArray('inputs'), $errorMessage); - $errorMessage = implode("\n", [ - "See: " . PROJECT_ROOT . "/action.yml", + $errorMessage = \implode("\n", [ + 'See: ' . PROJECT_ROOT . '/action.yml', 'Expected', '```', - str_replace(["'\${{", "}}'"], ["\${{", "}}"], (string)yml($expectedRunsArgs)), + \str_replace(["'\${{", "}}'"], ['${{', '}}'], (string)yml($expectedRunsArgs)), '```', ]); isSame($expectedRunsArgs, $actionYml->findArray('runs.args'), $errorMessage); @@ -151,9 +140,9 @@ public function testGitHubActionsYml() /** * @depends testGitHubActionsYml */ - public function testGitHubActionsReadMe() + public function testGitHubActionsReadMe(): void { - $inputs = yml(PROJECT_ROOT . '/action.yml')->findArray('inputs'); + $inputs = yml(PROJECT_ROOT . '/action.yml')->findArray('inputs'); $examples = [ 'input-file' => './build/checkstyle.xml', 'input-format' => 'checkstyle', @@ -166,7 +155,7 @@ public function testGitHubActionsReadMe() $expectedMessage = [ '```yaml', '- uses: jbzoo/ci-report-converter@master # or see the specific version on releases page', - ' with:' + ' with:', ]; foreach ($inputs as $key => $input) { @@ -186,150 +175,160 @@ public function testGitHubActionsReadMe() $expectedMessage[] = '```'; - isFileContains(implode("\n", $expectedMessage), PROJECT_ROOT . '/README.md'); + isFileContains(\implode("\n", $expectedMessage), PROJECT_ROOT . '/README.md'); } - public function testConvertCommandMapReadMe() + public function testConvertCommandMapReadMe(): void { isSame(Fixtures::getExpectedFileContent('md'), $this->task('convert:map')); isSame(Fixtures::getExpectedFileContent('md'), $this->taskReal('convert:map')); } - public function testConvertStatsUndefinedFile() + public function testConvertStatsUndefinedFile(): void { $output = $this->task('teamcity:stats', [ 'input-file' => '/undefined/file.xml', - 'input-format' => 'pdepend-xml' + 'input-format' => 'pdepend-xml', ]); - isSame("Error: File \"/undefined/file.xml\" not found", trim($output)); + isSame('Error: File "/undefined/file.xml" not found', \trim($output)); } - public function testConvertStatsCustomFlowId() + public function testConvertStatsCustomFlowId(): void { $output = $this->task('teamcity:stats', [ 'input-file' => Fixtures::PHPLOC_JSON, 'input-format' => PhpLocStatsTcConverter::TYPE, - 'tc-flow-id' => 10000 + 'tc-flow-id' => 10000, ]); isContain(" flowId='10000'", $output); } - public function testConvertCustomFlowId() + public function testConvertCustomFlowId(): void { $output = $this->task('convert', [ 'input-format' => CheckStyleConverter::TYPE, 'output-format' => TeamCityTestsConverter::TYPE, 'input-file' => Fixtures::PSALM_CHECKSTYLE, - 'suite-name' => "Test Suite", - 'root-path' => "src", - 'tc-flow-id' => "10101", + 'suite-name' => 'Test Suite', + 'root-path' => 'src', + 'tc-flow-id' => '10101', ]); isContain(" flowId='10101'", $output); } - public function testConvertToTcInspections() + public function testConvertToTcInspections(): void { $output = $this->task('convert', [ 'input-format' => PhpMdJsonConverter::TYPE, 'output-format' => TeamCityInspectionsConverter::TYPE, 'input-file' => Fixtures::PHPMD_JSON, ]); - isContain("##teamcity[inspectionType id='PHPmd:UnusedFormalParameter' " . + isContain( + "##teamcity[inspectionType id='PHPmd:UnusedFormalParameter' " . "name='UnusedFormalParameter' " . "category='PHPmd' " . - "description='Issues found while checking coding standards'", $output); + "description='Issues found while checking coding standards'", + $output, + ); $output = $this->task('convert', [ 'input-format' => PhpMdJsonConverter::TYPE, 'output-format' => TeamCityInspectionsConverter::TYPE, 'input-file' => Fixtures::PHPMD_JSON, - 'suite-name' => "Test Suite", + 'suite-name' => 'Test Suite', ]); - isContain("inspectionType id='Test Suite:UnusedFormalParameter' " . + isContain( + "inspectionType id='Test Suite:UnusedFormalParameter' " . "name='UnusedFormalParameter' " . "category='Test Suite' " . - "description='Issues found while checking coding standards'", $output); + "description='Issues found while checking coding standards'", + $output, + ); } /** * @depends testConvertToTcInspections */ - public function testNonZeroCode() + public function testNonZeroCode(): void { $output = null; + try { $this->task('convert', [ 'input-format' => PhpMdJsonConverter::TYPE, 'output-format' => TeamCityInspectionsConverter::TYPE, 'input-file' => Fixtures::PHPMD_JSON, - 'non-zero-code' => 'yes' + 'non-zero-code' => 'yes', ]); } catch (\Exception $exception) { $output = $exception->getMessage(); } - isContain("##teamcity[inspectionType id='PHPmd:UnusedFormalParameter' " . + isContain( + "##teamcity[inspectionType id='PHPmd:UnusedFormalParameter' " . "name='UnusedFormalParameter' " . "category='PHPmd' " . - "description='Issues found while checking coding standards'", $output); + "description='Issues found while checking coding standards'", + $output, + ); } - public function testConvertUndefinedFile() + public function testConvertUndefinedFile(): void { $output = $this->task('convert', [ 'input-format' => CheckStyleConverter::TYPE, 'output-format' => JUnitConverter::TYPE, 'input-file' => '/undefined/file.xml', - 'suite-name' => "Test Suite", - 'root-path' => "src", - 'non-zero-code' => 'yes' + 'suite-name' => 'Test Suite', + 'root-path' => 'src', + 'non-zero-code' => 'yes', ]); - isSame("Error: File \"/undefined/file.xml\" not found", trim($output)); + isSame('Error: File "/undefined/file.xml" not found', \trim($output)); } - public function testConvertCommand() + public function testConvertCommand(): void { $output = $this->task('convert', [ 'input-format' => CheckStyleConverter::TYPE, 'output-format' => JUnitConverter::TYPE, 'input-file' => Fixtures::PSALM_CHECKSTYLE, - 'suite-name' => "Test Suite", - 'root-path' => "src", + 'suite-name' => 'Test Suite', + 'root-path' => 'src', ]); - $expectedFileContent = implode("\n", [ + $expectedFileContent = \implode("\n", [ '', '', ' ', ' ', ' ', - ' ', - 'MissingReturnType: Method JBZoo\CiReportConverter\JUnit\TestCaseElement::setName does not have a return type, expecting void', + ' ', + 'MissingReturnType: Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setName does not have a return type, expecting void', 'File Path: JUnit/TestCaseElement.php:34:21', 'Severity : error', '', ' ', ' ', - ' ', - 'MissingReturnType: Method JBZoo\CiReportConverter\JUnit\TestCaseElement::setClassname does not have a return type, expecting void', + ' ', + 'MissingReturnType: Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setClassname does not have a return type, expecting void', 'File Path: JUnit/TestCaseElement.php:42:21', 'Severity : error', '', ' ', ' ', - ' ', - 'MissingReturnType: Method JBZoo\CiReportConverter\JUnit\TestCaseElement::setTime does not have a return type, expecting void', + ' ', + 'MissingReturnType: Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setTime does not have a return type, expecting void', 'File Path: JUnit/TestCaseElement.php:52:21', 'Severity : error', '', ' ', ' ', - ' ', - 'InvalidScalarArgument: Argument 2 of JBZoo\CiReportConverter\JUnit\TestCaseElement::setAttribute expects string, float provided', + ' ', + 'InvalidScalarArgument: Argument 2 of JBZoo\CIReportConverter\JUnit\TestCaseElement::setAttribute expects string, float provided', 'File Path: JUnit/TestCaseElement.php:54:37', 'Severity : error', '', @@ -351,27 +350,21 @@ public function testConvertCommand() isSame($expectedFileContent, $output); } - public function testConvertCommandSaveToFile() + public function testConvertCommandSaveToFile(): void { $output = $this->task('convert', [ 'input-format' => CheckStyleConverter::TYPE, 'output-format' => JUnitConverter::TYPE, 'input-file' => Fixtures::PSALM_CHECKSTYLE, 'output-file' => PROJECT_BUILD . '/testConvertCommandSaveToFile.xml', - 'suite-name' => "Test Suite", - 'root-path' => "src", + 'suite-name' => 'Test Suite', + 'root-path' => 'src', ]); isContain('/build/testConvertCommandSaveToFile.xml', $output); isContain('Found failures: 5', $output); } - /** - * @param string $action - * @param array $params - * @return string - * @throws \Exception - */ public function task(string $action, array $params = []): string { $application = new Application(); @@ -380,8 +373,8 @@ public function task(string $action, array $params = []): string $application->add(new TeamCityStats()); $command = $application->find($action); - $buffer = new BufferedOutput(); - $args = new StringInput(Cli::build('', $params)); + $buffer = new BufferedOutput(); + $args = new StringInput(Cli::build('', $params)); $exitCode = $command->run($args, $buffer); if ($exitCode) { @@ -391,25 +384,20 @@ public function task(string $action, array $params = []): string return $buffer->fetch(); } - /** - * @param string $action - * @param array $params - * @return string - */ public function taskReal(string $action, array $params = []): string { $rootDir = PROJECT_ROOT; return Cli::exec( - implode(' ', [ + \implode(' ', [ Sys::getBinary(), "{$rootDir}/ci-report-converter.php --no-ansi", $action, - '2>&1' + '2>&1', ]), $params, $rootDir, - false + false, ); } } diff --git a/tests/GeneralSuite/ConverterCheckStyleTest.php b/tests/ConverterCheckStyleTest.php similarity index 84% rename from tests/GeneralSuite/ConverterCheckStyleTest.php rename to tests/ConverterCheckStyleTest.php index ffdb1ea..766b4a4 100644 --- a/tests/GeneralSuite/ConverterCheckStyleTest.php +++ b/tests/ConverterCheckStyleTest.php @@ -1,38 +1,32 @@ setRootPath($pathPrefix) - ->toInternal(file_get_contents(Fixtures::PHAN_CHECKSTYLE)); + ->toInternal(\file_get_contents(Fixtures::PHAN_CHECKSTYLE)); $actual = (new JUnitConverter())->fromInternal($source); Aliases::isValidXml($actual); @@ -46,41 +40,41 @@ public function testToInternalPhan() 'line' => 37, 'failure' => [ 'type' => 'PhanPossiblyFalseTypeMismatchProperty', - 'message' => 'Assigning $this->rootElement of type \\DOMElement|false to property but \\JBZoo\\CiReportConverter\\JUnit\\JUnitXml->rootElement is \\DOMElement (false is incompatible)', - 'details' => implode("\n", [ + 'message' => 'Assigning $this->rootElement of type \\DOMElement|false to property but \\JBZoo\\CIReportConverter\\JUnit\\JUnitXml->rootElement is \\DOMElement (false is incompatible)', + 'details' => \implode("\n", [ '', - 'Assigning $this->rootElement of type \DOMElement|false to property but \JBZoo\CiReportConverter\JUnit\JUnitXml->rootElement is \DOMElement (false is incompatible)', + 'Assigning $this->rootElement of type \DOMElement|false to property but \JBZoo\CIReportConverter\JUnit\JUnitXml->rootElement is \DOMElement (false is incompatible)', 'Rule : PhanPossiblyFalseTypeMismatchProperty', 'File Path: src/JUnit/JUnitXml.php:37', 'Severity : warning', '', ]), - ] + ], ], $source->toArray()['suites'][0]['cases'][0]); isSame([ - "_node" => "SourceSuite", - "name" => "CheckStyle", - "tests" => 7, - "failure" => 7 + '_node' => 'SourceSuite', + 'name' => 'CheckStyle', + 'tests' => 7, + 'failure' => 7, ], $source->toArray()['data']); - isSame(implode("\n", [ + isSame(\implode("\n", [ '', '', ' ', ' ', ' ', - ' ', - 'Assigning $this->rootElement of type \DOMElement|false to property but \JBZoo\CiReportConverter\JUnit\JUnitXml->rootElement is \DOMElement (false is incompatible)', + ' ', + 'Assigning $this->rootElement of type \DOMElement|false to property but \JBZoo\CIReportConverter\JUnit\JUnitXml->rootElement is \DOMElement (false is incompatible)', 'Rule : PhanPossiblyFalseTypeMismatchProperty', 'File Path: src/JUnit/JUnitXml.php:37', 'Severity : warning', '', ' ', ' ', - ' ', - 'Can use \JBZoo\CiReportConverter\JUnit\TestSuiteElement as a return type of addTestSuite', + ' ', + 'Can use \JBZoo\CIReportConverter\JUnit\TestSuiteElement as a return type of addTestSuite', 'Rule : PhanPluginCanUseReturnType', 'File Path: src/JUnit/JUnitXml.php:44', 'Severity : warning', @@ -97,8 +91,8 @@ public function testToInternalPhan() '', ' ', ' ', - ' ', - 'Suspicious order for argument name - This is getting passed to parameter #1 (string $name) of \JBZoo\CiReportConverter\JUnit\TestCaseElement::setAttribute(string $name, string $value)', + ' ', + 'Suspicious order for argument name - This is getting passed to parameter #1 (string $name) of \JBZoo\CIReportConverter\JUnit\TestCaseElement::setAttribute(string $name, string $value)', 'Rule : PhanPluginSuspiciousParamPositionInternal', 'File Path: src/JUnit/TestCaseElement.php:36', 'Severity : warning', @@ -123,8 +117,8 @@ public function testToInternalPhan() '', ' ', ' ', - ' ', - 'Suspicious order for argument name - This is getting passed to parameter #1 (string $name) of \JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute(string $name, string $value)', + ' ', + 'Suspicious order for argument name - This is getting passed to parameter #1 (string $name) of \JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute(string $name, string $value)', 'Rule : PhanPluginSuspiciousParamPositionInternal', 'File Path: src/JUnit/TestSuiteElement.php:37', 'Severity : warning', @@ -133,21 +127,21 @@ public function testToInternalPhan() ' ', ' ', '', - '' + '', ]), $actual); } - public function testToInternalPHPcs() + public function testToInternalPHPcs(): void { $pathPrefix = '/Users/smetdenis/Work/projects/jbzoo-ci-report-converter'; - $source = (new CheckStyleConverter()) + $source = (new CheckStyleConverter()) ->setRootPath($pathPrefix) - ->toInternal(file_get_contents(Fixtures::PHPCS_CODESTYLE)); + ->toInternal(\file_get_contents(Fixtures::PHPCS_CODESTYLE)); $actual = (new JUnitConverter())->fromInternal($source); Aliases::isValidXml($actual); - isSame(implode("\n", [ + isSame(\implode("\n", [ '', '', ' ', @@ -183,39 +177,39 @@ public function testToInternalPHPcs() ]), $actual); } - public function testToInternalPhpStan() + public function testToInternalPhpStan(): void { $pathPrefix = '/Users/smetdenis/Work/projects/jbzoo-ci-report-converter'; - $source = (new CheckStyleConverter()) + $source = (new CheckStyleConverter()) ->setRootPath($pathPrefix) - ->toInternal(file_get_contents(Fixtures::PHPSTAN_CHECKSTYLE)); + ->toInternal(\file_get_contents(Fixtures::PHPSTAN_CHECKSTYLE)); $actual = (new JUnitConverter())->fromInternal($source); Aliases::isValidXml($actual); - isSame(implode("\n", [ + isSame(\implode("\n", [ '', '', ' ', ' ', ' ', - ' ', - 'Method JBZoo\CiReportConverter\JUnit\TestCaseElement::setName() has no return typehint specified.', + ' ', + 'Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setName() has no return typehint specified.', 'File Path: src/JUnit/TestCaseElement.php:34', 'Severity : error', '', ' ', ' ', - ' ', - 'Method JBZoo\CiReportConverter\JUnit\TestCaseElement::setClassname() has no return typehint specified.', + ' ', + 'Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setClassname() has no return typehint specified.', 'File Path: src/JUnit/TestCaseElement.php:42', 'Severity : error', '', ' ', ' ', - ' ', - 'Method JBZoo\CiReportConverter\JUnit\TestCaseElement::setTime() has no return typehint specified.', + ' ', + 'Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setTime() has no return typehint specified.', 'File Path: src/JUnit/TestCaseElement.php:52', 'Severity : error', '', @@ -243,46 +237,46 @@ public function testToInternalPhpStan() ]), $actual); } - public function testToInternalPsalm() + public function testToInternalPsalm(): void { $pathPrefix = '/Users/smetdenis/Work/projects/jbzoo-ci-report-converter'; - $source = (new CheckStyleConverter()) + $source = (new CheckStyleConverter()) ->setRootPath($pathPrefix) - ->toInternal(file_get_contents(Fixtures::PSALM_CHECKSTYLE)); + ->toInternal(\file_get_contents(Fixtures::PSALM_CHECKSTYLE)); $actual = (new JUnitConverter())->fromInternal($source); Aliases::isValidXml($actual); - isSame(implode("\n", [ + isSame(\implode("\n", [ '', '', ' ', ' ', ' ', - ' ', - 'MissingReturnType: Method JBZoo\CiReportConverter\JUnit\TestCaseElement::setName does not have a return type, expecting void', + ' ', + 'MissingReturnType: Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setName does not have a return type, expecting void', 'File Path: src/JUnit/TestCaseElement.php:34:21', 'Severity : error', '', ' ', ' ', - ' ', - 'MissingReturnType: Method JBZoo\CiReportConverter\JUnit\TestCaseElement::setClassname does not have a return type, expecting void', + ' ', + 'MissingReturnType: Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setClassname does not have a return type, expecting void', 'File Path: src/JUnit/TestCaseElement.php:42:21', 'Severity : error', '', ' ', ' ', - ' ', - 'MissingReturnType: Method JBZoo\CiReportConverter\JUnit\TestCaseElement::setTime does not have a return type, expecting void', + ' ', + 'MissingReturnType: Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setTime does not have a return type, expecting void', 'File Path: src/JUnit/TestCaseElement.php:52:21', 'Severity : error', '', ' ', ' ', - ' ', - 'InvalidScalarArgument: Argument 2 of JBZoo\CiReportConverter\JUnit\TestCaseElement::setAttribute expects string, float provided', + ' ', + 'InvalidScalarArgument: Argument 2 of JBZoo\CIReportConverter\JUnit\TestCaseElement::setAttribute expects string, float provided', 'File Path: src/JUnit/TestCaseElement.php:54:37', 'Severity : error', '', diff --git a/tests/GeneralSuite/ConverterGitLabJsonTest.php b/tests/ConverterGitLabJsonTest.php similarity index 68% rename from tests/GeneralSuite/ConverterGitLabJsonTest.php rename to tests/ConverterGitLabJsonTest.php index 92cf575..142cad8 100644 --- a/tests/GeneralSuite/ConverterGitLabJsonTest.php +++ b/tests/ConverterGitLabJsonTest.php @@ -1,40 +1,35 @@ setRootPath($pathPrefix) - ->toInternal(file_get_contents(Fixtures::PHPUNIT_JUNIT_SIMPLE)); + ->toInternal(\file_get_contents(Fixtures::PHPUNIT_JUNIT_SIMPLE)); $targetReport = (new GitLabJsonConverter()) ->setRootPath($pathPrefix) ->fromInternal($sourceReport); @@ -42,13 +37,13 @@ public function testJUnitSimple() isSame(Fixtures::getExpectedFileContent('json'), $targetReport); } - public function testJUnitNested() + public function testJUnitNested(): void { $pathPrefix = '/Users/smetdenis/Work/projects/jbzoo-ci-report-converter'; $sourceReport = (new JUnitConverter()) ->setRootPath($pathPrefix) - ->toInternal(file_get_contents(Fixtures::PHPUNIT_JUNIT_NESTED)); + ->toInternal(\file_get_contents(Fixtures::PHPUNIT_JUNIT_NESTED)); $targetReport = (new GitLabJsonConverter()) ->setRootPath($pathPrefix) ->fromInternal($sourceReport); @@ -56,13 +51,13 @@ public function testJUnitNested() isSame(Fixtures::getExpectedFileContent('json'), $targetReport); } - public function testCodeStyle() + public function testCodeStyle(): void { $pathPrefix = '/Users/smetdenis/Work/projects/jbzoo-ci-report-converter'; $sourceReport = (new CheckStyleConverter()) ->setRootPath($pathPrefix) - ->toInternal(file_get_contents(Fixtures::PHPCS_CODESTYLE)); + ->toInternal(\file_get_contents(Fixtures::PHPCS_CODESTYLE)); $targetReport = (new GitLabJsonConverter()) ->setRootPath($pathPrefix) ->setRootSuiteName('Tests') @@ -71,13 +66,13 @@ public function testCodeStyle() isSame(Fixtures::getExpectedFileContent('json'), $targetReport); } - public function testPmdCpdXml() + public function testPmdCpdXml(): void { $pathPrefix = '/Users/smetdenis/Work/projects/jbzoo-ci-report-converter'; $sourceReport = (new PmdCpdConverter()) ->setRootPath($pathPrefix) - ->toInternal(file_get_contents(Fixtures::PHPCPD_XML)); + ->toInternal(\file_get_contents(Fixtures::PHPCPD_XML)); $targetReport = (new GitLabJsonConverter()) ->setRootPath($pathPrefix) ->setRootSuiteName('Tests') diff --git a/tests/GeneralSuite/ConverterGithubTest.php b/tests/ConverterGithubTest.php similarity index 50% rename from tests/GeneralSuite/ConverterGithubTest.php rename to tests/ConverterGithubTest.php index c340b5a..6cdaf45 100644 --- a/tests/GeneralSuite/ConverterGithubTest.php +++ b/tests/ConverterGithubTest.php @@ -1,41 +1,36 @@ setRootPath($pathPrefix) - ->toInternal(file_get_contents(Fixtures::PHPUNIT_JUNIT_SIMPLE)); + ->toInternal(\file_get_contents(Fixtures::PHPUNIT_JUNIT_SIMPLE)); $targetReport = (new GithubCliConverter()) ->setRootPath($pathPrefix) ->fromInternal($sourceReport); @@ -43,13 +38,13 @@ public function testJUnitSimple() isSame(Fixtures::getExpectedFileContent('txt'), $targetReport); } - public function testJUnitNested() + public function testJUnitNested(): void { $pathPrefix = '/Users/smetdenis/Work/projects/jbzoo-ci-report-converter'; $sourceReport = (new JUnitConverter()) ->setRootPath($pathPrefix) - ->toInternal(file_get_contents(Fixtures::PHPUNIT_JUNIT_NESTED)); + ->toInternal(\file_get_contents(Fixtures::PHPUNIT_JUNIT_NESTED)); $targetReport = (new GithubCliConverter()) ->setRootPath($pathPrefix) ->fromInternal($sourceReport); @@ -57,13 +52,13 @@ public function testJUnitNested() isSame(Fixtures::getExpectedFileContent('txt'), $targetReport); } - public function testCodeStyle() + public function testCodeStyle(): void { $pathPrefix = '/Users/smetdenis/Work/projects/jbzoo-ci-report-converter'; $sourceReport = (new CheckStyleConverter()) ->setRootPath($pathPrefix) - ->toInternal(file_get_contents(Fixtures::PHPCS_CODESTYLE)); + ->toInternal(\file_get_contents(Fixtures::PHPCS_CODESTYLE)); $targetReport = (new GithubCliConverter()) ->setRootPath($pathPrefix) ->setRootSuiteName('Tests') @@ -72,39 +67,39 @@ public function testCodeStyle() isSame(Fixtures::getExpectedFileContent('txt'), $targetReport); } - public function testGithubActionsPrinter() + public function testGithubActionsPrinter(): void { - $ghActions = new GithubActions(); - $case0 = $ghActions->addCase('src/Root.php'); - $case0->line = 789; - $case0->column = null; + $ghActions = new GithubActions(); + $case0 = $ghActions->addCase('src/Root.php'); + $case0->line = 789; + $case0->column = null; $case0->message = 'Something went wrong #0'; - $suite1 = $ghActions->addSuite('src/File.php'); - $case1 = $suite1->addCase('src/Class.php'); - $case1->line = 123; - $case1->column = 4; + $suite1 = $ghActions->addSuite('src/File.php'); + $case1 = $suite1->addCase('src/Class.php'); + $case1->line = 123; + $case1->column = 4; $case1->message = 'Something went wrong #1'; - $suite2 = $ghActions->addSuite(); - $case2 = $suite2->addCase('src/AnotherFile.php'); - $case2->line = 456; - $case2->column = 0; - $case2->level = GithubCase::LEVEL_WARNING; + $suite2 = $ghActions->addSuite(); + $case2 = $suite2->addCase('src/AnotherFile.php'); + $case2->line = 456; + $case2->column = 0; + $case2->level = GithubCase::LEVEL_WARNING; $case2->message = "Something\nwent\nwrong\n\n#2\n"; - $case3 = $suite2->addCase('src/SomeFiles.php'); - $case3->level = GithubCase::LEVEL_DEBUG; - $case3->message = implode("\n", [ - "Failed asserting that two arrays are identical.", - "--- Expected", - "+++ Actual", - "@@ @@", - " Array &0 (", + $case3 = $suite2->addCase('src/SomeFiles.php'); + $case3->level = GithubCase::LEVEL_DEBUG; + $case3->message = \implode("\n", [ + 'Failed asserting that two arrays are identical.', + '--- Expected', + '+++ Actual', + '@@ @@', + ' Array &0 (', "- 0 => 'asd'", - "+ 0 => 123", - "+ 1 => 123123", - " )", + '+ 0 => 123', + '+ 1 => 123123', + ' )', ]); $suite2->addCase(); diff --git a/tests/ConverterJUnitTest.php b/tests/ConverterJUnitTest.php new file mode 100644 index 0000000..e3950dc --- /dev/null +++ b/tests/ConverterJUnitTest.php @@ -0,0 +1,157 @@ +addSuite('All'); + $suite1 = $suiteAll->addSuite('Suite #1'); + + $suite1->addCase('Test #1.1')->time = 1; + $suite1->addCase('Test #1.2')->time = 2; + + $suite2 = $suiteAll->addSuite('Suite #2'); + + $suite2->addCase('Test #2.1')->time = 3; + $suite2->addCase('Test #2.2')->time = 4; + $suite2->addCase('Test #2.3')->time = 5; + + $actual = (new JUnitConverter())->toInternal((string)$junit)->toArray(); + + $collection = new SourceSuite(); + $suiteAll = $collection->addSuite('All'); + $suite1 = $suiteAll->addSuite('Suite #1'); + + $suite1->addTestCase('Test #1.1')->time = 1; + $suite1->addTestCase('Test #1.2')->time = 2; + + $suite2 = $suiteAll->addSuite('Suite #2'); + + $suite2->addTestCase('Test #2.1')->time = 3; + $suite2->addTestCase('Test #2.2')->time = 4; + $suite2->addTestCase('Test #2.3')->time = 5; + + $expected = $suiteAll->toArray(); + + isSame($expected, $actual['suites'][0]['suites'][0]); + } + + public function testConvertToInternalReal(): void + { + $suiteAll = new SourceSuite('All'); + $suite1 = $suiteAll->addSuite('Suite #1'); + + $suite1->addTestCase('Test #1.1')->time = 1; + $suite1->addTestCase('Test #1.2')->time = 2; + + $suite2 = $suiteAll->addSuite('Suite #2'); + + $suite2->addTestCase('Test #2.1')->time = 3; + $suite2->addTestCase('Test #2.2')->time = 4; + $suite2->addTestCase('Test #2.3')->time = 5; + + $junitActual = (new JUnitConverter())->fromInternal($suiteAll); + + $junitExpected = new JUnit(); + $suiteAll = $junitExpected->addSuite('All'); + $suite1 = $suiteAll->addSuite('Suite #1'); + + $suite1->addCase('Test #1.1')->time = 1; + $suite1->addCase('Test #1.2')->time = 2; + $suite2 = $suiteAll->addSuite('Suite #2'); + $suite2->addCase('Test #2.1')->time = 3; + $suite2->addCase('Test #2.2')->time = 4; + $suite2->addCase('Test #2.3')->time = 5; + + isSame((string)$junitExpected, $junitActual); + } + + public function testConvertToInternalRealFull(): void + { + // Fixtures + $class = ExampleTest::class; + $className = \str_replace('\\', '.', $class); + $filename = './tests/ExampleTest.php'; + $line = 28; + + $suite = new SourceSuite('Suite'); + $case = $suite->addTestCase('Test Name'); + $case->time = 0.001824; + $case->file = $filename; + $case->line = $line; + $case->class = $class; + $case->classname = $className; + $case->assertions = 5; + $case->stdOut = 'Some std output'; + $case->errOut = 'Some err output'; + $case->failure = new SourceCaseOutput('Failure', 'Failure Message', 'Failure Details'); + $case->error = new SourceCaseOutput('Error', 'Error Message', 'Error Details'); + $case->warning = new SourceCaseOutput('Warning', 'Warning Message', 'Warning Details'); + $case->skipped = new SourceCaseOutput('Skipped', 'Skipped Message', 'Skipped Details'); + + isSame( + \implode("\n", [ + '', + '', + ' ', + ' ', + ' Failure Details', + ' Warning Details', + ' Error Details', + ' Some std output', + 'Some err output', + ' ', + ' ', + ' ', + '', + '', + ]), + (new JUnitConverter())->fromInternal($suite), + ); + } + + public function testComplex(): void + { + $junitFiles = [ + Fixtures::PHPUNIT_JUNIT_NESTED, + Fixtures::PHPUNIT_JUNIT_SIMPLE, + // Fixtures::PHPCS_JUNIT, + // Fixtures::PHPSTAN_JUNIT, + // Fixtures::PSALM_JUNIT, + ]; + + foreach ($junitFiles as $junitFile) { + $expectedXmlCode = \file_get_contents($junitFile); + + $converter = new JUnitConverter(); + $source = $converter->toInternal($expectedXmlCode); + $junit = $converter->fromInternal($source); + + Aliases::isValidXml($expectedXmlCode); + Aliases::isValidXml($junit); + Aliases::isSameXml($expectedXmlCode, $junit); + } + } +} diff --git a/tests/GeneralSuite/ConverterPhpMndTest.php b/tests/ConverterPhpMndTest.php similarity index 80% rename from tests/GeneralSuite/ConverterPhpMndTest.php rename to tests/ConverterPhpMndTest.php index 1c420fa..a80588d 100644 --- a/tests/GeneralSuite/ConverterPhpMndTest.php +++ b/tests/ConverterPhpMndTest.php @@ -1,91 +1,85 @@ setRootPath('/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/vendor/jbzoo/utils') - ->toInternal(file_get_contents(Fixtures::PHPMND_XML)); + // ->setRootPath('/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/vendor/jbzoo/utils') + ->toInternal(\file_get_contents(Fixtures::PHPMND_XML)); $converter = (new TeamCityTestsConverter(['show-datetime' => false], 1))->fromInternal($source); - isSame(implode("\n\n", [ + isSame(\implode("\n\n", [ "##teamcity[testCount count='8' flowId='1']", "##teamcity[testSuiteStarted name='PHPmnd' flowId='1']", - "##teamcity[testSuiteStarted name='src/IP.php' locationHint='php_qn://src/IP.php::\src/IP.php' flowId='1']", - "##teamcity[testStarted name='src/IP.php line 81, column 36' locationHint='php_qn://src/IP.php::\Magic Number::src/IP.php line 81, column 36' flowId='1']", + "##teamcity[testSuiteStarted name='src/IP.php' locationHint='php_qn://src/IP.php::\\src/IP.php' flowId='1']", + "##teamcity[testStarted name='src/IP.php line 81, column 36' locationHint='php_qn://src/IP.php::\\Magic Number::src/IP.php line 81, column 36' flowId='1']", "##teamcity[testFailed name='src/IP.php line 81, column 36' message='File Path : src/IP.php:81:36' details=' Snippet : `while (count(\$blocks) < 4) {`|n Suggestions: Env::VAR_INT; FS::PERM_ALL_READ; Url::URL_JOIN_QUERY|n ' flowId='1']", "##teamcity[testFinished name='src/IP.php line 81, column 36' flowId='1']", - "##teamcity[testStarted name='src/IP.php line 137' locationHint='php_qn://src/IP.php::\Magic Number::src/IP.php line 137' flowId='1']", + "##teamcity[testStarted name='src/IP.php line 137' locationHint='php_qn://src/IP.php::\\Magic Number::src/IP.php line 137' flowId='1']", "##teamcity[testFailed name='src/IP.php line 137' message='File Path: src/IP.php:137' details=' Snippet : `} elseif ((\$ipAddressLong & 0xC0000000) === 0x80000000) {`|n ' flowId='1']", "##teamcity[testFinished name='src/IP.php line 137' flowId='1']", - "##teamcity[testStarted name='src/IP.php line 139' locationHint='php_qn://src/IP.php::\Magic Number::src/IP.php line 139' flowId='1']", + "##teamcity[testStarted name='src/IP.php line 139' locationHint='php_qn://src/IP.php::\\Magic Number::src/IP.php line 139' flowId='1']", "##teamcity[testFailed name='src/IP.php line 139' message='File Path: src/IP.php:139' details=' Snippet : `} elseif ((\$ipAddressLong & 0xE0000000) === 0xC0000000) {`|n ' flowId='1']", "##teamcity[testFinished name='src/IP.php line 139' flowId='1']", "##teamcity[testSuiteFinished name='src/IP.php' flowId='1']", "##teamcity[testSuiteStarted name='tests/CliTest.php' locationHint='php_qn://tests/CliTest.php::\\tests/CliTest.php' flowId='1']", - "##teamcity[testStarted name='tests/CliTest.php line 107, column 44' locationHint='php_qn://tests/CliTest.php::\Magic Number::tests/CliTest.php line 107, column 44' flowId='1']", + "##teamcity[testStarted name='tests/CliTest.php line 107, column 44' locationHint='php_qn://tests/CliTest.php::\\Magic Number::tests/CliTest.php line 107, column 44' flowId='1']", "##teamcity[testFailed name='tests/CliTest.php line 107, column 44' message='File Path : tests/CliTest.php:107:44' details=' Snippet : `isTrue(Cli::getNumberOfColumns() >= 80);`|n Suggestions: Cli::DEFAULT_WIDTH; Url::PORT_HTTP|n ' flowId='1']", "##teamcity[testFinished name='tests/CliTest.php line 107, column 44' flowId='1']", "##teamcity[testSuiteFinished name='tests/CliTest.php' flowId='1']", - "##teamcity[testSuiteStarted name='src/Timer.php' locationHint='php_qn://src/Timer.php::\src/Timer.php' flowId='1']", - "##teamcity[testStarted name='src/Timer.php line 49, column 56' locationHint='php_qn://src/Timer.php::\Magic Number::src/Timer.php line 49, column 56' flowId='1']", + "##teamcity[testSuiteStarted name='src/Timer.php' locationHint='php_qn://src/Timer.php::\\src/Timer.php' flowId='1']", + "##teamcity[testStarted name='src/Timer.php line 49, column 56' locationHint='php_qn://src/Timer.php::\\Magic Number::src/Timer.php line 49, column 56' flowId='1']", "##teamcity[testFailed name='src/Timer.php line 49, column 56' message='File Path: src/Timer.php:49:56' details=' Snippet : `return \$time . |' |' . \$unit . (\$time === 1.0 ? |'|' : |'s|');`|n ' flowId='1']", "##teamcity[testFinished name='src/Timer.php line 49, column 56' flowId='1']", "##teamcity[testSuiteFinished name='src/Timer.php' flowId='1']", - "##teamcity[testSuiteStarted name='src/Dates.php' locationHint='php_qn://src/Dates.php::\src/Dates.php' flowId='1']", - "##teamcity[testStarted name='src/Dates.php line 112, column 23' locationHint='php_qn://src/Dates.php::\Magic Number::src/Dates.php line 112, column 23' flowId='1']", + "##teamcity[testSuiteStarted name='src/Dates.php' locationHint='php_qn://src/Dates.php::\\src/Dates.php' flowId='1']", + "##teamcity[testStarted name='src/Dates.php line 112, column 23' locationHint='php_qn://src/Dates.php::\\Magic Number::src/Dates.php line 112, column 23' flowId='1']", "##teamcity[testFailed name='src/Dates.php line 112, column 23' message='File Path: src/Dates.php:112:23' details=' Snippet : `return \$time > 10000;`|n ' flowId='1']", "##teamcity[testFinished name='src/Dates.php line 112, column 23' flowId='1']", - "##teamcity[testStarted name='src/Dates.php line 212, column 23' locationHint='php_qn://src/Dates.php::\Magic Number::src/Dates.php line 212, column 23' flowId='1']", + "##teamcity[testStarted name='src/Dates.php line 212, column 23' locationHint='php_qn://src/Dates.php::\\Magic Number::src/Dates.php line 212, column 23' flowId='1']", "##teamcity[testFailed name='src/Dates.php line 212, column 23' message='File Path : src/Dates.php:212:23' details=' Snippet : `if (\$seconds < 2) {`|n Suggestions: Env::VAR_BOOL; Cli::STDERR; FS::PERM_ALL_WRITE; Url::URL_JOIN_PATH|n ' flowId='1']", "##teamcity[testFinished name='src/Dates.php line 212, column 23' flowId='1']", "##teamcity[testSuiteFinished name='src/Dates.php' flowId='1']", - "##teamcity[testSuiteStarted name='src/Http.php' locationHint='php_qn://src/Http.php::\src/Http.php' flowId='1']", - "##teamcity[testStarted name='src/Http.php line 166, column 45' locationHint='php_qn://src/Http.php::\Magic Number::src/Http.php line 166, column 45' flowId='1']", + "##teamcity[testSuiteStarted name='src/Http.php' locationHint='php_qn://src/Http.php::\\src/Http.php' flowId='1']", + "##teamcity[testStarted name='src/Http.php line 166, column 45' locationHint='php_qn://src/Http.php::\\Magic Number::src/Http.php line 166, column 45' flowId='1']", "##teamcity[testFailed name='src/Http.php line 166, column 45' message='File Path : src/Http.php:166:45' details=' Snippet : `if (count(\$exploded) === 2) {`|n Suggestions: Env::VAR_BOOL; Cli::STDERR; FS::PERM_ALL_WRITE; Url::URL_JOIN_PATH|n ' flowId='1']", "##teamcity[testFinished name='src/Http.php line 166, column 45' flowId='1']", "##teamcity[testSuiteFinished name='src/Http.php' flowId='1']", "##teamcity[testSuiteFinished name='PHPmnd' flowId='1']", - ]), trim($converter)); + ]), \trim($converter)); } - public function testToTcInspections() + public function testToTcInspections(): void { $source = (new PhpMndConverter()) ->setRootSuiteName('PHP Magic Numbers') - ->toInternal(file_get_contents(Fixtures::PHPMND_XML)); + ->toInternal(\file_get_contents(Fixtures::PHPMND_XML)); $converter = (new TeamCityInspectionsConverter(['show-datetime' => false], 1))->fromInternal($source); - isSame(implode("\n\n", [ + isSame(\implode("\n\n", [ "##teamcity[inspectionType id='PHP Magic Numbers:Magic Number' name='Magic Number' category='PHP Magic Numbers' description='Issues found while checking coding standards' flowId='1']", "##teamcity[inspection typeId='PHP Magic Numbers:Magic Number' file='src/IP.php' line='81' message='------------------------------------------------------------------------------------------------------------------------|nsrc/IP.php line 81, column 36|nFile Path : src/IP.php:81:36|n Snippet : `while (count(\$blocks) < 4) {`|n Suggestions: Env::VAR_INT; FS::PERM_ALL_READ; Url::URL_JOIN_QUERY' SEVERITY='WARNING' flowId='1']", "##teamcity[inspection typeId='PHP Magic Numbers:Magic Number' file='src/IP.php' line='137' message='------------------------------------------------------------------------------------------------------------------------|nsrc/IP.php line 137|nFile Path: src/IP.php:137|n Snippet : `} elseif ((\$ipAddressLong & 0xC0000000) === 0x80000000) {`' SEVERITY='WARNING' flowId='1']", @@ -95,6 +89,6 @@ public function testToTcInspections() "##teamcity[inspection typeId='PHP Magic Numbers:Magic Number' file='src/Dates.php' line='112' message='------------------------------------------------------------------------------------------------------------------------|nsrc/Dates.php line 112, column 23|nFile Path: src/Dates.php:112:23|n Snippet : `return \$time > 10000;`' SEVERITY='WARNING' flowId='1']", "##teamcity[inspection typeId='PHP Magic Numbers:Magic Number' file='src/Dates.php' line='212' message='------------------------------------------------------------------------------------------------------------------------|nsrc/Dates.php line 212, column 23|nFile Path : src/Dates.php:212:23|n Snippet : `if (\$seconds < 2) {`|n Suggestions: Env::VAR_BOOL; Cli::STDERR; FS::PERM_ALL_WRITE; Url::URL_JOIN_PATH' SEVERITY='WARNING' flowId='1']", "##teamcity[inspection typeId='PHP Magic Numbers:Magic Number' file='src/Http.php' line='166' message='------------------------------------------------------------------------------------------------------------------------|nsrc/Http.php line 166, column 45|nFile Path : src/Http.php:166:45|n Snippet : `if (count(\$exploded) === 2) {`|n Suggestions: Env::VAR_BOOL; Cli::STDERR; FS::PERM_ALL_WRITE; Url::URL_JOIN_PATH' SEVERITY='WARNING' flowId='1']", - ]), trim($converter)); + ]), \trim($converter)); } } diff --git a/tests/GeneralSuite/ConverterPhpmdJsonTest.php b/tests/ConverterPhpmdJsonTest.php similarity index 95% rename from tests/GeneralSuite/ConverterPhpmdJsonTest.php rename to tests/ConverterPhpmdJsonTest.php index 3d62018..1736727 100644 --- a/tests/GeneralSuite/ConverterPhpmdJsonTest.php +++ b/tests/ConverterPhpmdJsonTest.php @@ -1,41 +1,35 @@ toInternal(file_get_contents(Fixtures::PHPMD_JSON)); + ->toInternal(\file_get_contents(Fixtures::PHPMD_JSON)); $actual = (new JUnitConverter())->fromInternal($actual); Aliases::isValidXml($actual); - isSame(implode("\n", [ + isSame(\implode("\n", [ '', '', ' ', diff --git a/tests/GeneralSuite/ConverterPlainTextTest.php b/tests/ConverterPlainTextTest.php similarity index 52% rename from tests/GeneralSuite/ConverterPlainTextTest.php rename to tests/ConverterPlainTextTest.php index c98bc47..2ec7f12 100644 --- a/tests/GeneralSuite/ConverterPlainTextTest.php +++ b/tests/ConverterPlainTextTest.php @@ -1,41 +1,36 @@ setRootPath($pathPrefix) - ->toInternal(file_get_contents(Fixtures::PHPCS_CODESTYLE)); + ->toInternal(\file_get_contents(Fixtures::PHPCS_CODESTYLE)); $targetReport = (new PlainTextConverter()) ->setRootPath($pathPrefix) ->fromInternal($sourceReport); @@ -43,13 +38,13 @@ public function testPhpcsCodestyle() isSame(Fixtures::getExpectedFileContent('txt'), $targetReport); } - public function testJUnitSimple() + public function testJUnitSimple(): void { $pathPrefix = '/Users/smetdenis/Work/projects/jbzoo-ci-report-converter'; $sourceReport = (new JUnitConverter()) ->setRootPath($pathPrefix) - ->toInternal(file_get_contents(Fixtures::PHPUNIT_JUNIT_SIMPLE)); + ->toInternal(\file_get_contents(Fixtures::PHPUNIT_JUNIT_SIMPLE)); $targetReport = (new PlainTextConverter()) ->setRootPath($pathPrefix) ->fromInternal($sourceReport); @@ -57,13 +52,13 @@ public function testJUnitSimple() isSame(Fixtures::getExpectedFileContent('txt'), $targetReport); } - public function testJUnitNested() + public function testJUnitNested(): void { $pathPrefix = '/Users/smetdenis/Work/projects/jbzoo-ci-report-converter'; $sourceReport = (new JUnitConverter()) ->setRootPath($pathPrefix) - ->toInternal(file_get_contents(Fixtures::PHPUNIT_JUNIT_NESTED)); + ->toInternal(\file_get_contents(Fixtures::PHPUNIT_JUNIT_NESTED)); $targetReport = (new PlainTextConverter()) ->setRootPath($pathPrefix) ->fromInternal($sourceReport); @@ -71,13 +66,13 @@ public function testJUnitNested() isSame(Fixtures::getExpectedFileContent('txt'), $targetReport); } - public function testCheckStyle() + public function testCheckStyle(): void { $pathPrefix = '/Users/smetdenis/Work/projects/jbzoo-ci-report-converter'; $sourceReport = (new CheckStyleConverter()) ->setRootPath($pathPrefix) - ->toInternal(file_get_contents(Fixtures::PHAN_CHECKSTYLE)); + ->toInternal(\file_get_contents(Fixtures::PHAN_CHECKSTYLE)); $targetReport = (new PlainTextConverter()) ->setRootPath($pathPrefix) ->setRootSuiteName('Tests') @@ -86,40 +81,40 @@ public function testCheckStyle() isSame(Fixtures::getExpectedFileContent('txt'), $targetReport); } - public function testPlainTextPrinter() + public function testPlainTextPrinter(): void { - $plainText = new PlainText(); - $case0 = $plainText->addCase('src/Root.php'); - $case0->line = 789; - $case0->column = null; + $plainText = new PlainText(); + $case0 = $plainText->addCase('src/Root.php'); + $case0->line = 789; + $case0->column = null; $case0->message = 'Something went wrong #0'; - $suite1 = $plainText->addSuite('src/File.php'); - $case1 = $suite1->addCase('src/Class.php'); - $case1->line = 123; - $case1->column = 4; + $suite1 = $plainText->addSuite('src/File.php'); + $case1 = $suite1->addCase('src/Class.php'); + $case1->line = 123; + $case1->column = 4; $case1->message = "Something went wrong once again. It's a really really really long-long-long-long message.\n" - . "Another line.\n"; - - $suite2 = $plainText->addSuite(); - $case2 = $suite2->addCase('src/AnotherFile.php'); - $case2->line = 456; - $case2->column = 0; - $case2->level = PlainTextCase::LEVEL_WARNING; - $case2->message = "Something\nwent\nwrong\n\n#2\n"; - - $case3 = $suite2->addCase('src/SomeFiles.php'); - $case3->level = PlainTextCase::LEVEL_DEBUG; - $case3->message = implode("\n", [ - "Failed asserting that two arrays are identical.", - "--- Expected", - "+++ Actual", - "@@ @@", - " Array &0 (", + . 'Another line.'; + + $suite2 = $plainText->addSuite(); + $case2 = $suite2->addCase('src/AnotherFile.php'); + $case2->line = 456; + $case2->column = 0; + $case2->level = PlainTextCase::LEVEL_WARNING; + $case2->message = "Something\nwent\nwrong\n\n#2"; + + $case3 = $suite2->addCase('src/SomeFiles.php'); + $case3->level = PlainTextCase::LEVEL_DEBUG; + $case3->message = \implode("\n", [ + 'Failed asserting that two arrays are identical.', + '--- Expected', + '+++ Actual', + '@@ @@', + ' Array &0 (', "- 0 => 'asd'", - "+ 0 => 123", - "+ 1 => 123123", - " )", + '+ 0 => 123', + '+ 1 => 123123', + ' )', ]); $suite2->addCase(); diff --git a/tests/GeneralSuite/ConverterPmdCpdTest.php b/tests/ConverterPmdCpdTest.php similarity index 60% rename from tests/GeneralSuite/ConverterPmdCpdTest.php rename to tests/ConverterPmdCpdTest.php index 479fba3..8973644 100644 --- a/tests/GeneralSuite/ConverterPmdCpdTest.php +++ b/tests/ConverterPmdCpdTest.php @@ -1,38 +1,32 @@ setRootPath('/Users/smetdenis/Work/projects/jbzoo-ci-report-converter') - ->toInternal(file_get_contents(Fixtures::PHPCPD_XML)); + ->toInternal(\file_get_contents(Fixtures::PHPCPD_XML)); $actual = (new JUnitConverter())->fromInternal($source); @@ -40,11 +34,11 @@ public function testToJUnit() isSame(Fixtures::getExpectedFileContent(), $actual); } - public function testToTeamCity() + public function testToTeamCity(): void { $source = (new PmdCpdConverter()) ->setRootPath('/Users/smetdenis/Work/projects/jbzoo-ci-report-converter') - ->toInternal(file_get_contents(Fixtures::PHPCPD_XML)); + ->toInternal(\file_get_contents(Fixtures::PHPCPD_XML)); $actual = (new TeamCityTestsConverter(['show-datetime' => false], 42)) ->fromInternal($source); diff --git a/tests/GeneralSuite/ConverterPsalmJsonTest.php b/tests/ConverterPsalmJsonTest.php similarity index 68% rename from tests/GeneralSuite/ConverterPsalmJsonTest.php rename to tests/ConverterPsalmJsonTest.php index ed1dbf3..fd367b8 100644 --- a/tests/GeneralSuite/ConverterPsalmJsonTest.php +++ b/tests/ConverterPsalmJsonTest.php @@ -1,43 +1,38 @@ toInternal(file_get_contents(Fixtures::PSALM_JSON)); + ->toInternal(\file_get_contents(Fixtures::PSALM_JSON)); isSame([ - "_node" => "SourceSuite", - "name" => "Psalm", + '_node' => 'SourceSuite', + 'name' => 'Psalm', 'tests' => 3, 'warnings' => 2, - 'failure' => 1 + 'failure' => 1, ], $actual->toArray()['data']); isSame([ @@ -49,9 +44,9 @@ public function testConvertToInternal() 'line' => 34, 'failure' => [ 'type' => 'MissingReturnType', - 'message' => 'Method JBZoo\\CiReportConverter\\JUnit\\TestCaseElement::setName does not have a return type, expecting void', + 'message' => 'Method JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::setName does not have a return type, expecting void', 'details' => ' -Method JBZoo\\CiReportConverter\\JUnit\\TestCaseElement::setName does not have a return type, expecting void +Method JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::setName does not have a return type, expecting void Rule : MissingReturnType File Path : /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElement.php:34 Snippet : `public function setName()` @@ -63,21 +58,21 @@ public function testConvertToInternal() ], $actual->toArray()['suites'][0]['cases'][0]); } - public function testConvertToJUnit() + public function testConvertToJUnit(): void { $actual = (new PsalmJsonConverter()) - ->toInternal(file_get_contents(Fixtures::PSALM_JSON)); + ->toInternal(\file_get_contents(Fixtures::PSALM_JSON)); $junit = (new JUnitConverter())->fromInternal($actual); - isSame(implode("\n", [ + isSame(\implode("\n", [ '', '', ' ', ' ', ' ', - ' ', - 'Method JBZoo\CiReportConverter\JUnit\TestCaseElement::setName does not have a return type, expecting void', + ' ', + 'Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setName does not have a return type, expecting void', 'Rule : MissingReturnType', 'File Path : /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElement.php:34', 'Snippet : `public function setName()`', @@ -87,8 +82,8 @@ public function testConvertToJUnit() '', ' ', ' ', - ' ', - 'Method JBZoo\CiReportConverter\JUnit\TestCaseElement::setClassname does not have a return type, expecting void', + ' ', + 'Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setClassname does not have a return type, expecting void', 'Rule : MissingReturnType', 'File Path : /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElement.php:42', 'Snippet : `public function setClassname()`', @@ -100,8 +95,8 @@ public function testConvertToJUnit() ' ', ' ', ' ', - ' ', - 'Method JBZoo\CiReportConverter\JUnit\TestCaseElement::setClassname does not have a return type, expecting void', + ' ', + 'Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setClassname does not have a return type, expecting void', 'Rule : MissingReturnType', 'File Path : /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElementSuppress.php:42', 'Snippet : `public function setClassname()`', @@ -117,27 +112,27 @@ public function testConvertToJUnit() ]), $junit); } - public function testConvertToTeamCity() + public function testConvertToTeamCity(): void { $actual = (new PsalmJsonConverter()) - ->toInternal(file_get_contents(Fixtures::PSALM_JSON)); + ->toInternal(\file_get_contents(Fixtures::PSALM_JSON)); $junit = (new TeamCityTestsConverter(['show-datetime' => false], 76978))->fromInternal($actual); - isSame(implode("", [ + isSame(\implode('', [ "\n##teamcity[testCount count='3' flowId='76978']\n", "\n##teamcity[testSuiteStarted name='Psalm' flowId='76978']\n", - "\n##teamcity[testSuiteStarted name='src/JUnit/TestCaseElement.php' locationHint='php_qn:///Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElement.php::\src/JUnit/TestCaseElement.php' flowId='76978']\n", - "\n##teamcity[testStarted name='src/JUnit/TestCaseElement.php line 34' locationHint='php_qn:///Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElement.php::\MissingReturnType::src/JUnit/TestCaseElement.php line 34' flowId='76978']\n", - "\n##teamcity[testFailed name='src/JUnit/TestCaseElement.php line 34' message='Method JBZoo\CiReportConverter\JUnit\TestCaseElement::setName does not have a return type, expecting void' details=' Rule : MissingReturnType|n File Path : /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElement.php:34|n Snippet : `public function setName()`|n Docs : https://psalm.dev/050|n Severity : error|n Error Level: 2|n ' flowId='76978']\n", + "\n##teamcity[testSuiteStarted name='src/JUnit/TestCaseElement.php' locationHint='php_qn:///Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElement.php::\\src/JUnit/TestCaseElement.php' flowId='76978']\n", + "\n##teamcity[testStarted name='src/JUnit/TestCaseElement.php line 34' locationHint='php_qn:///Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElement.php::\\MissingReturnType::src/JUnit/TestCaseElement.php line 34' flowId='76978']\n", + "\n##teamcity[testFailed name='src/JUnit/TestCaseElement.php line 34' message='Method JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::setName does not have a return type, expecting void' details=' Rule : MissingReturnType|n File Path : /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElement.php:34|n Snippet : `public function setName()`|n Docs : https://psalm.dev/050|n Severity : error|n Error Level: 2|n ' flowId='76978']\n", "\n##teamcity[testFinished name='src/JUnit/TestCaseElement.php line 34' flowId='76978']\n", - "\n##teamcity[testStarted name='src/JUnit/TestCaseElement.php line 42' locationHint='php_qn:///Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElement.php::\MissingReturnType::src/JUnit/TestCaseElement.php line 42' flowId='76978']\n", - "\n##teamcity[testFailed name='src/JUnit/TestCaseElement.php line 42' message='Method JBZoo\CiReportConverter\JUnit\TestCaseElement::setClassname does not have a return type, expecting void' details=' Rule : MissingReturnType|n File Path : /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElement.php:42|n Snippet : `public function setClassname()`|n Docs : https://psalm.dev/050|n Severity : info|n Error Level: -1|n ' flowId='76978']\n", + "\n##teamcity[testStarted name='src/JUnit/TestCaseElement.php line 42' locationHint='php_qn:///Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElement.php::\\MissingReturnType::src/JUnit/TestCaseElement.php line 42' flowId='76978']\n", + "\n##teamcity[testFailed name='src/JUnit/TestCaseElement.php line 42' message='Method JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::setClassname does not have a return type, expecting void' details=' Rule : MissingReturnType|n File Path : /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElement.php:42|n Snippet : `public function setClassname()`|n Docs : https://psalm.dev/050|n Severity : info|n Error Level: -1|n ' flowId='76978']\n", "\n##teamcity[testFinished name='src/JUnit/TestCaseElement.php line 42' flowId='76978']\n", "\n##teamcity[testSuiteFinished name='src/JUnit/TestCaseElement.php' flowId='76978']\n", - "\n##teamcity[testSuiteStarted name='src/JUnit/TestCaseElementSuppress.php' locationHint='php_qn:///Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElementSuppress.php::\src/JUnit/TestCaseElementSuppress.php' flowId='76978']\n", - "\n##teamcity[testStarted name='src/JUnit/TestCaseElementSuppress.php line 42' locationHint='php_qn:///Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElementSuppress.php::\MissingReturnType::src/JUnit/TestCaseElementSuppress.php line 42' flowId='76978']\n", - "\n##teamcity[testFailed name='src/JUnit/TestCaseElementSuppress.php line 42' message='Method JBZoo\CiReportConverter\JUnit\TestCaseElement::setClassname does not have a return type, expecting void' details=' Rule : MissingReturnType|n File Path : /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElementSuppress.php:42|n Snippet : `public function setClassname()`|n Docs : https://psalm.dev/050|n Severity : suppress|n Error Level: -2|n ' flowId='76978']\n", + "\n##teamcity[testSuiteStarted name='src/JUnit/TestCaseElementSuppress.php' locationHint='php_qn:///Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElementSuppress.php::\\src/JUnit/TestCaseElementSuppress.php' flowId='76978']\n", + "\n##teamcity[testStarted name='src/JUnit/TestCaseElementSuppress.php line 42' locationHint='php_qn:///Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElementSuppress.php::\\MissingReturnType::src/JUnit/TestCaseElementSuppress.php line 42' flowId='76978']\n", + "\n##teamcity[testFailed name='src/JUnit/TestCaseElementSuppress.php line 42' message='Method JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::setClassname does not have a return type, expecting void' details=' Rule : MissingReturnType|n File Path : /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElementSuppress.php:42|n Snippet : `public function setClassname()`|n Docs : https://psalm.dev/050|n Severity : suppress|n Error Level: -2|n ' flowId='76978']\n", "\n##teamcity[testFinished name='src/JUnit/TestCaseElementSuppress.php line 42' flowId='76978']\n", "\n##teamcity[testSuiteFinished name='src/JUnit/TestCaseElementSuppress.php' flowId='76978']\n", "\n##teamcity[testSuiteFinished name='Psalm' flowId='76978']\n", diff --git a/tests/GeneralSuite/ConverterTeamCityInspectionsTest.php b/tests/ConverterTeamCityInspectionsTest.php similarity index 63% rename from tests/GeneralSuite/ConverterTeamCityInspectionsTest.php rename to tests/ConverterTeamCityInspectionsTest.php index c4bc68c..ea3f6bd 100644 --- a/tests/GeneralSuite/ConverterTeamCityInspectionsTest.php +++ b/tests/ConverterTeamCityInspectionsTest.php @@ -1,39 +1,33 @@ setRootPath($pathPrefix) - ->toInternal(file_get_contents(Fixtures::PHPCS_CODESTYLE)); + ->toInternal(\file_get_contents(Fixtures::PHPCS_CODESTYLE)); $actual = (new TeamCityInspectionsConverter(['show-datetime' => false])) ->setFlowId(1) @@ -42,12 +36,12 @@ public function testPhpCsCodestyle() isSame(Fixtures::getExpectedFileContent('txt'), $actual); } - public function testPhanCodeStyle() + public function testPhanCodeStyle(): void { $pathPrefix = '/Users/smetdenis/Work/projects/jbzoo-ci-report-converter'; - $source = (new CheckStyleConverter()) + $source = (new CheckStyleConverter()) ->setRootPath($pathPrefix) - ->toInternal(file_get_contents(Fixtures::PHAN_CHECKSTYLE)); + ->toInternal(\file_get_contents(Fixtures::PHAN_CHECKSTYLE)); $actual = (new TeamCityInspectionsConverter(['show-datetime' => false])) ->setFlowId(1) @@ -56,11 +50,11 @@ public function testPhanCodeStyle() isSame(Fixtures::getExpectedFileContent('txt'), $actual); } - public function testJUnitSimple() + public function testJUnitSimple(): void { $source = (new JUnitConverter()) ->setRootPath('/Users/smetdenis/Work/projects/jbzoo-ci-report-converter') - ->toInternal(file_get_contents(Fixtures::PHPUNIT_JUNIT_SIMPLE)); + ->toInternal(\file_get_contents(Fixtures::PHPUNIT_JUNIT_SIMPLE)); $actual = (new TeamCityInspectionsConverter(['show-datetime' => false])) ->setFlowId(1) @@ -69,11 +63,11 @@ public function testJUnitSimple() isSame(Fixtures::getExpectedFileContent('txt'), $actual); } - public function testJUnitNested() + public function testJUnitNested(): void { $source = (new JUnitConverter()) ->setRootPath('/Users/smetdenis/Work/projects/jbzoo-ci-report-converter') - ->toInternal(file_get_contents(Fixtures::PHPUNIT_JUNIT_NESTED)); + ->toInternal(\file_get_contents(Fixtures::PHPUNIT_JUNIT_NESTED)); $actual = (new TeamCityInspectionsConverter(['show-datetime' => false])) ->setFlowId(1) diff --git a/tests/ConverterTeamCityStatsTest.php b/tests/ConverterTeamCityStatsTest.php new file mode 100644 index 0000000..12fc2aa --- /dev/null +++ b/tests/ConverterTeamCityStatsTest.php @@ -0,0 +1,76 @@ + false], 1)); + + $sourceCode = $converter->toInternalMetric(\file_get_contents(Fixtures::PHPLOC_JSON)); + $output = $converter->fromInternalMetric($sourceCode); + + isSame(Fixtures::getExpectedFileContent('txt'), $output); + } + + public function testPhpDependXml(): void + { + $converter = (new PhpDependStatsTcConverter(['show-datetime' => false], 1)); + + $sourceCode = $converter->toInternalMetric(\file_get_contents(Fixtures::PHP_DEPEND_XML)); + $output = $converter->fromInternalMetric($sourceCode); + + isSame(Fixtures::getExpectedFileContent('txt'), $output); + } + + public function testPhpMetricsXml(): void + { + $converter = (new PhpMetricsStatsTcConverter(['show-datetime' => false], 1)); + + $sourceCode = $converter->toInternalMetric(\file_get_contents(Fixtures::PHP_METRICS_XML)); + $output = $converter->fromInternalMetric($sourceCode); + + isSame(Fixtures::getExpectedFileContent('txt'), $output); + } + + public function testPhpUnitCloverXml(): void + { + $converter = (new PhpUnitCloverStatsTcConverter(['show-datetime' => false], 1)); + + $sourceCode = $converter->toInternalMetric(\file_get_contents(Fixtures::PHPUNIT_CLOVER)); + $output = $converter->fromInternalMetric($sourceCode); + + isSame(Fixtures::getExpectedFileContent('txt'), $output); + } + + public function testJUnitXml(): void + { + $converter = (new JUnitStatsTcConverter(['show-datetime' => false], 1)); + + $sourceCode = $converter->toInternalMetric(\file_get_contents(Fixtures::PHPUNIT_JUNIT_NESTED)); + $output = $converter->fromInternalMetric($sourceCode); + + isSame(Fixtures::getExpectedFileContent('txt'), $output); + } +} diff --git a/tests/GeneralSuite/ConverterTeamCityTest.php b/tests/ConverterTeamCityTest.php similarity index 63% rename from tests/GeneralSuite/ConverterTeamCityTest.php rename to tests/ConverterTeamCityTest.php index 6940c79..585f675 100644 --- a/tests/GeneralSuite/ConverterTeamCityTest.php +++ b/tests/ConverterTeamCityTest.php @@ -1,49 +1,44 @@ toInternal(file_get_contents(Fixtures::PHPUNIT_JUNIT_NESTED)); - $converter = (new TeamCityTestsConverter(['show-datetime' => false], $flowId)); + $flowId = 159753; + $sourceCode = (new JUnitConverter())->toInternal(\file_get_contents(Fixtures::PHPUNIT_JUNIT_NESTED)); + $converter = (new TeamCityTestsConverter(['show-datetime' => false], $flowId)); isSame(Fixtures::getExpectedFileContent('txt'), $converter->fromInternal($sourceCode)); } - public function testSimpleSources() + public function testSimpleSources(): void { $source = new SourceSuite('All'); - $suite = $source->addSuite('Tests'); + $suite = $source->addSuite('Tests'); $suite->addTestCase('Test Case'); $converter = (new TeamCityTestsConverter(['show-datetime' => false], 1)); - isSame(implode('', [ + isSame(\implode('', [ "\n##teamcity[testCount count='1' flowId='1']\n", "\n##teamcity[testSuiteStarted name='All' flowId='1']\n", "\n##teamcity[testSuiteStarted name='Tests' flowId='1']\n", @@ -57,7 +52,7 @@ public function testSimpleSources() $source->addTestCase('Test Case'); $converter = (new TeamCityTestsConverter(['show-datetime' => false], 1)); - isSame(implode('', [ + isSame(\implode('', [ "\n##teamcity[testCount count='1' flowId='1']\n", "\n##teamcity[testSuiteStarted name='All' flowId='1']\n", "\n##teamcity[testStarted name='Test Case' flowId='1']\n", @@ -66,78 +61,77 @@ public function testSimpleSources() ]), $converter->fromInternal($source)); } - public function testShowDatetime() + public function testShowDatetime(): void { - $source = new SourceSuite('All'); + $source = new SourceSuite('All'); $converter = (new TeamCityTestsConverter(['show-datetime' => true], 1)); isContain("timestamp='202", $converter->fromInternal($source)); } - public function testFlowId() + public function testFlowId(): void { - $source = new SourceSuite('All'); + $source = new SourceSuite('All'); $converter = new TeamCityTestsConverter(); - $flowId = getmypid(); + $flowId = \getmypid(); isTrue($flowId > 0); isContain("flowId='{$flowId}'", $converter->fromInternal($source)); - - $source = new SourceSuite('All'); + $source = new SourceSuite('All'); $converter = new TeamCityTestsConverter(['show-datetime' => true], 1); isContain("flowId='1'", $converter->fromInternal($source)); - $source = new SourceSuite('All'); + $source = new SourceSuite('All'); $converter = new TeamCityTestsConverter(['show-datetime' => true], 0); isNotContain("flowId='0'", $converter->fromInternal($source)); } - public function testJUnit2() + public function testJUnit2(): void { - $flowId = 159753; - $filepath = '/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/tests/ExampleTest.php'; - $junitConverter = (new JUnitConverter())->toInternal(file_get_contents(Fixtures::PHPUNIT_JUNIT_SIMPLE)); - $converter = (new TeamCityTestsConverter(['show-datetime' => false], $flowId)); + $flowId = 159753; + $filepath = '/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/tests/ExampleTest.php'; + $junitConverter = (new JUnitConverter())->toInternal(\file_get_contents(Fixtures::PHPUNIT_JUNIT_SIMPLE)); + $converter = (new TeamCityTestsConverter(['show-datetime' => false], $flowId)); - isSame(implode('', [ + isSame(\implode('', [ "\n##teamcity[testCount count='12' flowId='{$flowId}']\n", - "\n##teamcity[testSuiteStarted name='JBZoo\PHPUnit\ExampleTest' locationHint='php_qn://{$filepath}::\JBZoo\PHPUnit\ExampleTest' flowId='{$flowId}']\n", - "\n##teamcity[testStarted name='testValid' locationHint='php_qn://{$filepath}::\JBZoo\PHPUnit\ExampleTest::testValid' flowId='{$flowId}']\n", + "\n##teamcity[testSuiteStarted name='JBZoo\\PHPUnit\\ExampleTest' locationHint='php_qn://{$filepath}::\\JBZoo\\PHPUnit\\ExampleTest' flowId='{$flowId}']\n", + "\n##teamcity[testStarted name='testValid' locationHint='php_qn://{$filepath}::\\JBZoo\\PHPUnit\\ExampleTest::testValid' flowId='{$flowId}']\n", "\n##teamcity[testFinished name='testValid' duration='3' flowId='{$flowId}']\n", - "\n##teamcity[testStarted name='testInValid' locationHint='php_qn://{$filepath}::\JBZoo\PHPUnit\ExampleTest::testInValid' flowId='{$flowId}']\n", + "\n##teamcity[testStarted name='testInValid' locationHint='php_qn://{$filepath}::\\JBZoo\\PHPUnit\\ExampleTest::testInValid' flowId='{$flowId}']\n", "\n##teamcity[testFailed name='testInValid' message='Failed asserting that false is true.' details=' /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/vendor/jbzoo/phpunit/src/functions/aliases.php:107|n /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/tests/ExampleTest.php:35|n ' duration='2' flowId='{$flowId}']\n", "\n##teamcity[testFinished name='testInValid' duration='2' flowId='{$flowId}']\n", - "\n##teamcity[testStarted name='testSkipped' locationHint='php_qn://{$filepath}::\JBZoo\PHPUnit\ExampleTest::testSkipped' flowId='{$flowId}']\n", + "\n##teamcity[testStarted name='testSkipped' locationHint='php_qn://{$filepath}::\\JBZoo\\PHPUnit\\ExampleTest::testSkipped' flowId='{$flowId}']\n", "\n##teamcity[testIgnored name='testSkipped' duration='1' flowId='{$flowId}']\n", "\n##teamcity[testFinished name='testSkipped' duration='1' flowId='{$flowId}']\n", - "\n##teamcity[testStarted name='testIncomplete' locationHint='php_qn://{$filepath}::\JBZoo\PHPUnit\ExampleTest::testIncomplete' flowId='{$flowId}']\n", + "\n##teamcity[testStarted name='testIncomplete' locationHint='php_qn://{$filepath}::\\JBZoo\\PHPUnit\\ExampleTest::testIncomplete' flowId='{$flowId}']\n", "\n##teamcity[testIgnored name='testIncomplete' duration='1' flowId='{$flowId}']\n", "\n##teamcity[testFinished name='testIncomplete' duration='1' flowId='{$flowId}']\n", - "\n##teamcity[testStarted name='testFail' locationHint='php_qn://{$filepath}::\JBZoo\PHPUnit\ExampleTest::testFail' flowId='{$flowId}']\n", + "\n##teamcity[testStarted name='testFail' locationHint='php_qn://{$filepath}::\\JBZoo\\PHPUnit\\ExampleTest::testFail' flowId='{$flowId}']\n", "\n##teamcity[testFailed name='testFail' message='Some reason to fail' details=' /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/vendor/jbzoo/phpunit/src/functions/aliases.php:51|n /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/tests/ExampleTest.php:50|n ' duration='0' flowId='{$flowId}']\n", "\n##teamcity[testFinished name='testFail' duration='0' flowId='{$flowId}']\n", - "\n##teamcity[testStarted name='testEcho' locationHint='php_qn://{$filepath}::\JBZoo\PHPUnit\ExampleTest::testEcho' flowId='{$flowId}']\n", - "Some echo output", + "\n##teamcity[testStarted name='testEcho' locationHint='php_qn://{$filepath}::\\JBZoo\\PHPUnit\\ExampleTest::testEcho' flowId='{$flowId}']\n", + 'Some echo output', "\n##teamcity[testFinished name='testEcho' duration='0' flowId='{$flowId}']\n", - "\n##teamcity[testStarted name='testStdOutput' locationHint='php_qn://{$filepath}::\JBZoo\PHPUnit\ExampleTest::testStdOutput' flowId='{$flowId}']\n", + "\n##teamcity[testStarted name='testStdOutput' locationHint='php_qn://{$filepath}::\\JBZoo\\PHPUnit\\ExampleTest::testStdOutput' flowId='{$flowId}']\n", "\n##teamcity[testFinished name='testStdOutput' duration='1' flowId='{$flowId}']\n", - "\n##teamcity[testStarted name='testErrOutput' locationHint='php_qn://{$filepath}::\JBZoo\PHPUnit\ExampleTest::testErrOutput' flowId='{$flowId}']\n", + "\n##teamcity[testStarted name='testErrOutput' locationHint='php_qn://{$filepath}::\\JBZoo\\PHPUnit\\ExampleTest::testErrOutput' flowId='{$flowId}']\n", "\n##teamcity[testFinished name='testErrOutput' duration='0' flowId='{$flowId}']\n", - "\n##teamcity[testStarted name='testNoAssert' locationHint='php_qn://{$filepath}::\JBZoo\PHPUnit\ExampleTest::testNoAssert' flowId='{$flowId}']\n", + "\n##teamcity[testStarted name='testNoAssert' locationHint='php_qn://{$filepath}::\\JBZoo\\PHPUnit\\ExampleTest::testNoAssert' flowId='{$flowId}']\n", "\n##teamcity[testFailed name='testNoAssert' duration='0' flowId='{$flowId}']\n", "\n##teamcity[testFinished name='testNoAssert' duration='0' flowId='{$flowId}']\n", - "\n##teamcity[testStarted name='testNotice' locationHint='php_qn://{$filepath}::\JBZoo\PHPUnit\ExampleTest::testNotice' flowId='{$flowId}']\n", + "\n##teamcity[testStarted name='testNotice' locationHint='php_qn://{$filepath}::\\JBZoo\\PHPUnit\\ExampleTest::testNotice' flowId='{$flowId}']\n", "\n##teamcity[testFailed name='testNotice' message='Undefined variable: aaa' details=' /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/tests/ExampleTest.php:77|n ' duration='0' flowId='{$flowId}']\n", "\n##teamcity[testFinished name='testNotice' duration='0' flowId='{$flowId}']\n", - "\n##teamcity[testStarted name='testWarning' locationHint='php_qn://{$filepath}::\JBZoo\PHPUnit\ExampleTest::testWarning' flowId='{$flowId}']\n", + "\n##teamcity[testStarted name='testWarning' locationHint='php_qn://{$filepath}::\\JBZoo\\PHPUnit\\ExampleTest::testWarning' flowId='{$flowId}']\n", "\n##teamcity[testFailed name='testWarning' message='Some warning' details=' /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/tests/ExampleTest.php:82|n ' duration='0' flowId='{$flowId}']\n", "\n##teamcity[testFinished name='testWarning' duration='0' flowId='{$flowId}']\n", - "\n##teamcity[testSuiteFinished name='JBZoo\PHPUnit\ExampleTest' flowId='{$flowId}']\n", - "\n##teamcity[testSuiteStarted name='JBZoo\PHPUnit\ExampleTest-2' locationHint='php_qn://{$filepath}::\JBZoo\PHPUnit\ExampleTest-2' flowId='{$flowId}']\n", - "\n##teamcity[testStarted name='testException' locationHint='php_qn://{$filepath}::\JBZoo\PHPUnit\ExampleTest::testException' flowId='{$flowId}']\n", - "\n##teamcity[testFailed name='testException' message='JBZoo\PHPUnit\Exception: Exception message' details=' /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/tests/ExampleTest.php:88|n ' duration='5001' flowId='{$flowId}']\n", - "Some echo output", + "\n##teamcity[testSuiteFinished name='JBZoo\\PHPUnit\\ExampleTest' flowId='{$flowId}']\n", + "\n##teamcity[testSuiteStarted name='JBZoo\\PHPUnit\\ExampleTest-2' locationHint='php_qn://{$filepath}::\\JBZoo\\PHPUnit\\ExampleTest-2' flowId='{$flowId}']\n", + "\n##teamcity[testStarted name='testException' locationHint='php_qn://{$filepath}::\\JBZoo\\PHPUnit\\ExampleTest::testException' flowId='{$flowId}']\n", + "\n##teamcity[testFailed name='testException' message='JBZoo\\PHPUnit\\Exception: Exception message' details=' /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/tests/ExampleTest.php:88|n ' duration='5001' flowId='{$flowId}']\n", + 'Some echo output', "\n##teamcity[testFinished name='testException' duration='5001' flowId='{$flowId}']\n", - "\n##teamcity[testSuiteFinished name='JBZoo\PHPUnit\ExampleTest-2' flowId='{$flowId}']\n", + "\n##teamcity[testSuiteFinished name='JBZoo\\PHPUnit\\ExampleTest-2' flowId='{$flowId}']\n", ]), $converter->fromInternal($junitConverter)); } } diff --git a/tests/Tools/ExampleTestClass.php b/tests/ExampleTest.php similarity index 62% rename from tests/Tools/ExampleTestClass.php rename to tests/ExampleTest.php index 92744e5..36d525c 100644 --- a/tests/Tools/ExampleTestClass.php +++ b/tests/ExampleTest.php @@ -1,16 +1,15 @@ addCase('testInValid')->setFile($filename)->setClass($class)->setClassname($className) ->setLine(33)->setAssertions(1)->setTime(0.001824) - ->addFailure(ExpectationFailedException::class, null, implode("\n", [ + ->addFailure(ExpectationFailedException::class, null, \implode("\n", [ 'JBZoo\PHPUnit\ExampleTest::testInValid', 'Failed asserting that false is true.', '', @@ -64,7 +58,7 @@ public function testJunitBuilder() $suite->addCase('testFail')->setFile($filename)->setClass($class)->setClassname($className) ->setLine(48)->setAssertions(1)->setTime(0.000142) - ->addFailure(AssertionFailedError::class, null, implode("\n", [ + ->addFailure(AssertionFailedError::class, null, \implode("\n", [ 'JBZoo\PHPUnit\ExampleTest::testFail', 'Some reason to fail', '', @@ -89,7 +83,7 @@ public function testJunitBuilder() $suite->addCase('testNotice')->setFile($filename)->setClass($class)->setClassname($className) ->setLine(75)->setAssertions(0)->setTime(0.000370) - ->addError(Notice::class, null, implode("\n", [ + ->addError(Notice::class, null, \implode("\n", [ 'JBZoo\PHPUnit\ExampleTest::testNotice', 'Undefined variable: aaa', '', @@ -99,7 +93,7 @@ public function testJunitBuilder() $suite->addCase('testWarning')->setFile($filename)->setClass($class)->setClassname($className) ->setLine(80)->setAssertions(0)->setTime(0.000317) - ->addWarning(Warning::class, null, implode("\n", [ + ->addWarning(Warning::class, null, \implode("\n", [ 'JBZoo\PHPUnit\ExampleTest::testWarning', 'Some warning', '', @@ -107,11 +101,10 @@ public function testJunitBuilder() '', ])); - $anotherSuite = $junit->addSuite($class . '-2')->setFile($filename); $anotherSuite->addCase('testException')->setFile($filename)->setClass($class)->setClassname($className) ->setLine(85)->setAssertions(0)->setTime(5.000593) - ->addError(Exception::class, null, implode("\n", [ + ->addError(Exception::class, null, \implode("\n", [ 'JBZoo\PHPUnit\ExampleTest::testException', 'JBZoo\PHPUnit\Exception: Exception message', '', @@ -120,12 +113,11 @@ public function testJunitBuilder() ])) ->addSystemOut('Some echo output'); - // validate Aliases::isValidXml((string)$junit); $expectedXml = new \DOMDocument(); - $expectedXml->loadXML(file_get_contents(Fixtures::PHPUNIT_JUNIT_SIMPLE)); + $expectedXml->loadXML(\file_get_contents(Fixtures::PHPUNIT_JUNIT_SIMPLE)); isSame($expectedXml->saveXML(), (string)$junit); } diff --git a/tests/GeneralSuite/FormatSourceTest.php b/tests/FormatSourceTest.php similarity index 58% rename from tests/GeneralSuite/FormatSourceTest.php rename to tests/FormatSourceTest.php index 13a0126..1887159 100644 --- a/tests/GeneralSuite/FormatSourceTest.php +++ b/tests/FormatSourceTest.php @@ -1,48 +1,44 @@ hasSubSuites()); - $suite->addTestCase('Case #1')->time = 11; - $suite->addTestCase('Case #2')->time = '2.2'; - $suite->addTestCase('Case #3')->failure = 'Failed'; + $suite->addTestCase('Case #1')->time = 11; + $suite->addTestCase('Case #2')->time = 2.2; + $suite->addTestCase('Case #3')->failure = new SourceCaseOutput('Failed'); isFalse($suite->hasSubSuites()); $suite->file = __FILE__; $subSuite = $suite->addSuite('Sub Suite'); + $subSuite->addTestCase('Case #3')->time = 0; isTrue($suite->hasSubSuites()); isSame([ - "data" => [ + 'data' => [ '_node' => 'SourceSuite', 'name' => 'Suite', 'file' => __FILE__, @@ -50,44 +46,42 @@ public function testCollection() 'tests' => 4, 'failure' => 1, ], - "cases" => [ - ['_node' => 'SourceCase', "name" => "Case #1", 'time' => 11.0], - ['_node' => 'SourceCase', "name" => "Case #2", 'time' => 2.2], - ['_node' => 'SourceCase', "name" => "Case #3", 'failure' => 'Failed'] + 'cases' => [ + ['_node' => 'SourceCase', 'name' => 'Case #1', 'time' => 11.0], + ['_node' => 'SourceCase', 'name' => 'Case #2', 'time' => 2.2], + ['_node' => 'SourceCase', 'name' => 'Case #3', 'failure' => ['type' => 'Failed']], ], - "suites" => [ + 'suites' => [ [ - "data" => ['_node' => 'SourceSuite', "name" => "Sub Suite", 'tests' => 1], - "cases" => [['_node' => 'SourceCase', "name" => "Case #3", 'time' => 0.0]], - "suites" => [], - ] + 'data' => ['_node' => 'SourceSuite', 'name' => 'Sub Suite', 'tests' => 1], + 'cases' => [['_node' => 'SourceCase', 'name' => 'Case #3', 'time' => 0.0]], + 'suites' => [], + ], ], ], $suite->toArray()); } - public function testSuiteAggregationUtilities() + public function testSuiteAggregationUtilities(): void { $suite = new SourceSuite('Suite'); $suite->addTestCase('Case #1'); isSame(null, $suite->getTime()); - - $suite = new SourceSuite('Suite'); + $suite = new SourceSuite('Suite'); $suite->addTestCase('Case #1')->time = 11; $suite->addTestCase('Case #2'); - $suite->addTestCase('Case #3')->time = '2.2'; + $suite->addTestCase('Case #3')->time = 2.2; isSame(13.2, $suite->getTime()); - - $suite = new SourceSuite('Suite'); - $subSuite = $suite->addSuite('Suite 2'); - $suite->addTestCase('Case #1')->time = 1; - $suite->addTestCase('Case #2')->time = 2; + $suite = new SourceSuite('Suite'); + $subSuite = $suite->addSuite('Suite 2'); + $suite->addTestCase('Case #1')->time = 1; + $suite->addTestCase('Case #2')->time = 2; $subSuite->addTestCase('Case #3')->time = 0.0001; isSame(3.0001, $suite->getTime()); } - public function testSuiteObject() + public function testSuiteObject(): void { $suite = new SourceSuite(' Suite '); isSame('Suite', $suite->name); @@ -100,10 +94,10 @@ public function testSuiteObject() ], $suite->toArray()); $suite->class = self::class; - $suite->file = '/some/file/name.php'; + $suite->file = '/some/file/name.php'; isSame([ - 'data' => [ + 'data' => [ '_node' => 'SourceSuite', 'name' => 'Suite', 'file' => '/some/file/name.php', @@ -114,25 +108,25 @@ public function testSuiteObject() ], $suite->toArray()); } - public function testAllProperties() + public function testAllProperties(): void { - $suite = new SourceSuite('Suite'); - $case = $suite->addTestCase('Test Name'); - $case->time = 0.001824; - $case->file = '/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/tests/ExampleTest.php'; - $case->line = 28; - $case->class = ExampleTest::class; - $case->classname = str_replace('\\', '.', ExampleTest::class); + $suite = new SourceSuite('Suite'); + $case = $suite->addTestCase('Test Name'); + $case->time = 0.001824; + $case->file = '/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/tests/ExampleTest.php'; + $case->line = 28; + $case->class = ExampleTest::class; + $case->classname = \str_replace('\\', '.', ExampleTest::class); $case->assertions = 5; - $case->stdOut = 'Some std output'; - $case->errOut = 'Some err output'; - $case->failure = new SourceCaseOutput('Failure', 'Failure Message', 'Failure Details'); - $case->warning = new SourceCaseOutput('Warning', 'Warning Message', 'Warning Details'); - $case->error = new SourceCaseOutput('Error', 'Error Message', 'Error Details'); - $case->skipped = new SourceCaseOutput('Skipped', 'Skipped Message', 'Skipped Details'); + $case->stdOut = 'Some std output'; + $case->errOut = 'Some err output'; + $case->failure = new SourceCaseOutput('Failure', 'Failure Message', 'Failure Details'); + $case->warning = new SourceCaseOutput('Warning', 'Warning Message', 'Warning Details'); + $case->error = new SourceCaseOutput('Error', 'Error Message', 'Error Details'); + $case->skipped = new SourceCaseOutput('Skipped', 'Skipped Message', 'Skipped Details'); isSame([ - 'data' => [ + 'data' => [ '_node' => 'SourceSuite', 'name' => 'Suite', 'time' => 0.001824, @@ -143,7 +137,7 @@ public function testAllProperties() 'failure' => 1, 'skipped' => 1, ], - 'cases' => [ + 'cases' => [ [ '_node' => 'SourceCase', 'name' => 'Test Name', @@ -160,38 +154,38 @@ public function testAllProperties() 'message' => 'Failure Message', 'details' => 'Failure Details', ], - 'error' => [ + 'error' => [ 'type' => 'Error', 'message' => 'Error Message', 'details' => 'Error Details', ], - 'warning' => [ + 'warning' => [ 'type' => 'Warning', 'message' => 'Warning Message', 'details' => 'Warning Details', ], - 'skipped' => [ + 'skipped' => [ 'type' => 'Skipped', 'message' => 'Skipped Message', 'details' => 'Skipped Details', - ] - ] + ], + ], ], 'suites' => [], ], $suite->toArray()); } - public function testCaseObject() + public function testCaseObject(): void { $case = new SourceCase(' Case '); isSame(['_node' => 'SourceCase', 'name' => 'Case'], $case->toArray()); - $case->class = self::class; - $case->line = 100; - $case->file = '/some/file/name.php'; + $case->class = self::class; + $case->line = 100; + $case->file = '/some/file/name.php'; $case->assertions = 10; - $case->actual = 20; - $case->expected = 30; + $case->actual = '20'; + $case->expected = '30'; isSame([ '_node' => 'SourceCase', @@ -205,33 +199,19 @@ public function testCaseObject() ], $case->toArray()); isSame(null, $case->getTime()); - $case->time = '123.456789'; + $case->time = 123.456789; isSame(123.456789, $case->time); isSame('123', $case->getTime(0)); isSame('123.457', $case->getTime(3)); isSame('123.456789', $case->getTime()); } - public function testUsingProperties() + public function testUsingProperties(): void { $suite = new SourceCase('Case'); - isSame(null, $suite->invalid_prop); - isFalse(isset($suite->invalid_prop)); isTrue(isset($suite->name)); - isFalse(isset($suite->time)); isSame(null, $suite->time); - $suite->time = '1'; - isSame(1.0, $suite->time); - } - - public function testSettingInvalidProperty() - { - $this->expectException(\JBZoo\CiReportConverter\Formats\Source\Exception::class); - $this->expectExceptionMessage('Undefined property "invalid_prop"'); - - $suite = new SourceCase('Case'); - $suite->invalid_prop = 100; } } diff --git a/tests/GeneralSuite/ConverterJUnitTest.php b/tests/GeneralSuite/ConverterJUnitTest.php deleted file mode 100644 index c3e3b73..0000000 --- a/tests/GeneralSuite/ConverterJUnitTest.php +++ /dev/null @@ -1,148 +0,0 @@ -addSuite('All'); - $suite1 = $suiteAll->addSuite('Suite #1'); - $suite1->addCase('Test #1.1')->setTime(1); - $suite1->addCase('Test #1.2')->setTime(2); - $suite2 = $suiteAll->addSuite('Suite #2'); - $suite2->addCase('Test #2.1')->setTime(3); - $suite2->addCase('Test #2.2')->setTime(4); - $suite2->addCase('Test #2.3')->setTime(5); - $actual = (new JUnitConverter())->toInternal((string)$junit)->toArray(); - - - $collection = new SourceSuite(); - $suiteAll = $collection->addSuite('All'); - $suite1 = $suiteAll->addSuite('Suite #1'); - $suite1->addTestCase('Test #1.1')->time = 1; - $suite1->addTestCase('Test #1.2')->time = 2; - $suite2 = $suiteAll->addSuite('Suite #2'); - $suite2->addTestCase('Test #2.1')->time = 3; - $suite2->addTestCase('Test #2.2')->time = 4; - $suite2->addTestCase('Test #2.3')->time = 5; - $expected = $suiteAll->toArray(); - - isSame($expected, $actual['suites'][0]['suites'][0]); - } - - public function testConvertToInternalReal() - { - $suiteAll = new SourceSuite('All'); - $suite1 = $suiteAll->addSuite('Suite #1'); - $suite1->addTestCase('Test #1.1')->time = 1; - $suite1->addTestCase('Test #1.2')->time = 2; - $suite2 = $suiteAll->addSuite('Suite #2'); - $suite2->addTestCase('Test #2.1')->time = 3; - $suite2->addTestCase('Test #2.2')->time = 4; - $suite2->addTestCase('Test #2.3')->time = 5; - $junitActual = (new JUnitConverter())->fromInternal($suiteAll); - - - $junitExpected = new JUnit(); - $suiteAll = $junitExpected->addSuite('All'); - $suite1 = $suiteAll->addSuite('Suite #1'); - $suite1->addCase('Test #1.1')->time = 1; - $suite1->addCase('Test #1.2')->time = 2; - $suite2 = $suiteAll->addSuite('Suite #2'); - $suite2->addCase('Test #2.1')->time = 3; - $suite2->addCase('Test #2.2')->time = 4; - $suite2->addCase('Test #2.3')->time = 5; - - isSame((string)$junitExpected, $junitActual); - } - - public function testConvertToInternalRealFull() - { - // Fixtures - $class = ExampleTest::class; - $className = str_replace('\\', '.', $class); - $filename = './tests/ExampleTest.php'; - $line = 28; - - $suite = new SourceSuite('Suite'); - $case = $suite->addTestCase('Test Name'); - $case->time = 0.001824; - $case->file = $filename; - $case->line = $line; - $case->class = $class; - $case->classname = $className; - $case->assertions = 5; - $case->stdOut = 'Some std output'; - $case->errOut = 'Some err output'; - $case->failure = new SourceCaseOutput('Failure', 'Failure Message', 'Failure Details'); - $case->error = new SourceCaseOutput('Error', 'Error Message', 'Error Details'); - $case->warning = new SourceCaseOutput('Warning', 'Warning Message', 'Warning Details'); - $case->skipped = new SourceCaseOutput('Skipped', 'Skipped Message', 'Skipped Details'); - - isSame(implode("\n", [ - '', - '', - ' ', - ' ', - ' Failure Details', - ' Warning Details', - ' Error Details', - ' Some std output', - 'Some err output', - ' ', - ' ', - ' ', - '', - '', - ]), (new JUnitConverter())->fromInternal($suite)); - } - - public function testComplex() - { - $junitFiles = [ - Fixtures::PHPUNIT_JUNIT_NESTED, - Fixtures::PHPUNIT_JUNIT_SIMPLE, - //Fixtures::PHPCS_JUNIT, - //Fixtures::PHPSTAN_JUNIT, - //Fixtures::PSALM_JUNIT, - ]; - - foreach ($junitFiles as $junitFile) { - $expectedXmlCode = file_get_contents($junitFile); - - $converter = new JUnitConverter(); - $source = $converter->toInternal($expectedXmlCode); - $junit = $converter->fromInternal($source); - - Aliases::isValidXml($expectedXmlCode); - Aliases::isValidXml($junit); - Aliases::isSameXml($expectedXmlCode, $junit); - } - } -} diff --git a/tests/GeneralSuite/ConverterTeamCityStatsTest.php b/tests/GeneralSuite/ConverterTeamCityStatsTest.php deleted file mode 100644 index bf2df13..0000000 --- a/tests/GeneralSuite/ConverterTeamCityStatsTest.php +++ /dev/null @@ -1,81 +0,0 @@ - false], 1)); - - $sourceCode = $converter->toInternalMetric(file_get_contents(Fixtures::PHPLOC_JSON)); - $output = $converter->fromInternalMetric($sourceCode); - - isSame(Fixtures::getExpectedFileContent('txt'), $output); - } - - public function testPhpDependXml() - { - $converter = (new PhpDependStatsTcConverter(['show-datetime' => false], 1)); - - $sourceCode = $converter->toInternalMetric(file_get_contents(Fixtures::PHP_DEPEND_XML)); - $output = $converter->fromInternalMetric($sourceCode); - - isSame(Fixtures::getExpectedFileContent('txt'), $output); - } - - public function testPhpMetricsXml() - { - $converter = (new PhpMetricsStatsTcConverter(['show-datetime' => false], 1)); - - $sourceCode = $converter->toInternalMetric(file_get_contents(Fixtures::PHP_METRICS_XML)); - $output = $converter->fromInternalMetric($sourceCode); - - isSame(Fixtures::getExpectedFileContent('txt'), $output); - } - - public function testPhpUnitCloverXml() - { - $converter = (new PhpUnitCloverStatsTcConverter(['show-datetime' => false], 1)); - - $sourceCode = $converter->toInternalMetric(file_get_contents(Fixtures::PHPUNIT_CLOVER)); - $output = $converter->fromInternalMetric($sourceCode); - - isSame(Fixtures::getExpectedFileContent('txt'), $output); - } - - public function testJUnitXml() - { - $converter = (new JUnitStatsTcConverter(['show-datetime' => false], 1)); - - $sourceCode = $converter->toInternalMetric(file_get_contents(Fixtures::PHPUNIT_JUNIT_NESTED)); - $output = $converter->fromInternalMetric($sourceCode); - - isSame(Fixtures::getExpectedFileContent('txt'), $output); - } -} diff --git a/tests/PackageTest.php b/tests/PackageTest.php new file mode 100644 index 0000000..f2d7913 --- /dev/null +++ b/tests/PackageTest.php @@ -0,0 +1,83 @@ +excludePaths[] = 'assets'; + parent::setUp(); + } + + public function testBuildGraphManually(): void + { + $sources = []; + + foreach (Map::MAP_TESTS as $handler => $directions) { + if ($directions[Map::INPUT]) { + $sources[$handler::TYPE] = $handler::NAME; + } + } + + $targets = []; + + foreach (Map::MAP_TESTS as $handler => $directions) { + if ($directions[Map::OUTPUT]) { + $targets[$handler::TYPE] = $handler::NAME; + } + } + + $graph = (new Graph([ + 'abc_order' => true, + 'title' => 'Direction Graph', + 'direction' => Graph::LEFT_RIGHT, + ])) + ->addStyle('linkStyle default interpolate basis'); + + $graph->addNode($toolbox = new Node('ci-report-converter', 'CI-Report
Converter', Node::CIRCLE)); + + foreach ($sources as $sourceType => $sourceName) { + $node = new Node($sourceType . '_src', $sourceName); + $graph->addNode($node); + $graph->addLink(new Link($node, $toolbox, '', Link::THICK)); + } + + foreach ($targets as $targetType => $targetName) { + $node = new Node($targetType . '_target', $targetName); + $graph->addNode($node); + $graph->addLink(new Link($toolbox, $node, '', Link::THICK)); + } + + \file_put_contents(PROJECT_ROOT . '/build/directions.html', $graph->renderHtml(['version' => '8.9.2'])); + + $tmpl = \implode("\n", [ + '```mermaid', + $graph->render(), + '```', + ]); + + isFileContains($tmpl, PROJECT_ROOT . '/README.md'); + } +} diff --git a/tests/UtilitySuite/CiReportConverterComposerTest.php b/tests/PhpStormProxyTest.php similarity index 54% rename from tests/UtilitySuite/CiReportConverterComposerTest.php rename to tests/PhpStormProxyTest.php index 8c5705a..53fc8a8 100644 --- a/tests/UtilitySuite/CiReportConverterComposerTest.php +++ b/tests/PhpStormProxyTest.php @@ -1,27 +1,21 @@ 'QWERTY', @@ -38,7 +33,7 @@ public function testDescAsList() 'qweqwerty 1234' => '', ]); - isSame(implode("\n", [ + isSame(\implode("\n", [ '', 'QWERTY', 'QWERTY123', @@ -49,55 +44,55 @@ public function testDescAsList() ]), $result); } - public function testCheckstyleSchema() + public function testCheckstyleSchema(): void { - $xmlFiles = glob(realpath(Fixtures::ROOT) . '/**/**/checkstyle.xml'); + $xmlFiles = \glob(\realpath(Fixtures::ROOT) . '/**/**/checkstyle.xml'); foreach ($xmlFiles as $junitXmlFile) { - Aliases::isValidXml(file_get_contents($junitXmlFile), Fixtures::XSD_CHECKSTYLE); + Aliases::isValidXml(\file_get_contents($junitXmlFile), Fixtures::XSD_CHECKSTYLE); } } - public function testPmdSchema() + public function testPmdSchema(): void { - $xmlFiles = glob(realpath(Fixtures::ROOT) . '/**/**/pmd.xml'); + $xmlFiles = \glob(\realpath(Fixtures::ROOT) . '/**/**/pmd.xml'); foreach ($xmlFiles as $xmlFile) { - Aliases::isValidXml(file_get_contents($xmlFile), Fixtures::XSD_PMD); + Aliases::isValidXml(\file_get_contents($xmlFile), Fixtures::XSD_PMD); } } - public function testJUnitSchema() + public function testJUnitSchema(): void { - $xmlFiles = glob(realpath(Fixtures::ROOT) . '/**/**/junit.xml'); + $xmlFiles = \glob(\realpath(Fixtures::ROOT) . '/**/**/junit.xml'); foreach ($xmlFiles as $xmlFile) { - Aliases::isValidXml(file_get_contents($xmlFile)); + Aliases::isValidXml(\file_get_contents($xmlFile)); } } - public function testFixturesExists() + public function testFixturesExists(): void { $oClass = new \ReflectionClass(Fixtures::class); foreach ($oClass->getConstants() as $name => $path) { - if (in_array($name, ['ROOT', 'ROOT_ORIG'], true)) { + if (\in_array($name, ['ROOT', 'ROOT_ORIG'], true)) { continue; } - isTrue((bool)realpath($path), "{$name} => {$path}"); + isTrue((bool)\realpath($path), "{$name} => {$path}"); isFile($path, $name); } } - public function testDom2Array() + public function testDom2Array(): void { isSame([ '_node' => '#document', '_text' => null, '_cdata' => null, '_attrs' => [], - '_children' => [] + '_children' => [], ], Xml::dom2Array(new \DOMDocument())); isSame([ @@ -111,9 +106,9 @@ public function testDom2Array() '_text' => null, '_cdata' => null, '_attrs' => [], - '_children' => [] - ] - ] + '_children' => [], + ], + ], ], Xml::dom2Array((new JUnit())->getDom())); isSame([ @@ -129,10 +124,10 @@ public function testDom2Array() '_attrs' => [], '_children' => [ [ - '_node' => 'testsuite', - '_text' => null, - '_cdata' => null, - '_attrs' => [ + '_node' => 'testsuite', + '_text' => null, + '_cdata' => null, + '_attrs' => [ 'name' => 'Package #1', 'tests' => '2', 'failures' => '1', @@ -143,19 +138,18 @@ public function testDom2Array() '_text' => null, '_cdata' => null, '_attrs' => ['name' => 'Test case 1'], - '_children' => + '_children' => [ [ - [ - '_node' => 'failure', - '_text' => null, - '_cdata' => null, - '_attrs' => [ - 'type' => 'TypeOfFailure', - 'message' => 'Message', - ], - '_children' => [], + '_node' => 'failure', + '_text' => null, + '_cdata' => null, + '_attrs' => [ + 'type' => 'TypeOfFailure', + 'message' => 'Message', ], + '_children' => [], ], + ], ], [ '_node' => 'testcase', @@ -187,10 +181,10 @@ public function testDom2Array() '_attrs' => ['name' => 'Test case 3'], '_children' => [ [ - '_node' => 'error', - '_text' => null, - '_cdata' => null, - '_attrs' => [ + '_node' => 'error', + '_text' => null, + '_cdata' => null, + '_attrs' => [ 'type' => 'TypeOfError', 'message' => 'Error message', ], @@ -228,9 +222,10 @@ public function testDom2Array() ], Xml::dom2Array($this->getXmlFixture()->getDom())); } - public function testArray2Dom() + public function testArray2Dom(): void { - isSame((string)$this->getXmlFixture(), + isSame( + (string)$this->getXmlFixture(), Xml::array2Dom([ '_node' => '#document', '_text' => null, @@ -329,7 +324,7 @@ public function testArray2Dom() ], ], ], - ])->saveXML() + ])->saveXML(), ); } @@ -338,7 +333,7 @@ public function testArray2Dom() */ public function getXmlFixture() { - $junit = new JUnit(); + $junit = new JUnit(); $suite1 = $junit->addSuite('Package #1'); $suite1->addCase('Test case 1')->addFailure('TypeOfFailure', 'Message'); $suite1->addCase('Test case 2')->addSystemOut('Custom message'); @@ -350,17 +345,17 @@ public function getXmlFixture() return $junit; } - public function testArrayToXmlComplex() + public function testArrayToXmlComplex(): void { - $xmlExamples = glob(realpath(Fixtures::ROOT) . '/**/**/*.xml'); + $xmlExamples = \glob(\realpath(Fixtures::ROOT) . '/**/**/*.xml'); foreach ($xmlExamples as $xmlFile) { - $originalXml = new \DOMDocument(); + $originalXml = new \DOMDocument(); $originalXml->preserveWhiteSpace = false; - $originalXml->loadXML(file_get_contents($xmlFile)); + $originalXml->loadXML(\file_get_contents($xmlFile)); $originalXml->formatOutput = true; - $originalXml->encoding = 'UTF-8'; - $originalXml->version = '1.0'; + $originalXml->encoding = 'UTF-8'; + $originalXml->version = '1.0'; $actualXml = Xml::array2Dom(Xml::dom2Array($originalXml)); diff --git a/tests/UtilitySuite/CiReportConverterCodestyleTest.php b/tests/UtilitySuite/CiReportConverterCodestyleTest.php deleted file mode 100644 index fcac595..0000000 --- a/tests/UtilitySuite/CiReportConverterCodestyleTest.php +++ /dev/null @@ -1,27 +0,0 @@ -getPreparedBadge($this->getBadge( - 'CI', - 'https://github.com/__VENDOR_ORIG__/__PACKAGE_ORIG__/actions/workflows/main.yml/badge.svg?branch=master', - 'https://github.com/__VENDOR_ORIG__/__PACKAGE_ORIG__/actions/workflows/main.yml?query=branch%3Amaster' - )); - } - - /** - * @return string|null - */ - protected function checkBadgePhpVersion(): ?string - { - return $this->getPreparedBadge($this->getBadge( - 'PHP Version', - 'https://img.shields.io/packagist/php-v/__VENDOR__/__PACKAGE__', - 'https://github.com/__VENDOR_ORIG__/__PACKAGE_ORIG__/blob/master/composer.json' - )); - } - - /** - * @return string|null - */ - protected function checkBadgeCodecov(): ?string - { - return $this->getPreparedBadge($this->getBadge( - 'codecov', - 'https://codecov.io/gh/__VENDOR_ORIG__/__PACKAGE_ORIG__/branch/master/graph/badge.svg', - 'https://codecov.io/gh/__VENDOR_ORIG__/__PACKAGE_ORIG__' - )); - } - - public function testBuildGraphManually() - { - $sources = []; - foreach (Map::MAP_TESTS as $handler => $directions) { - if ($directions[Map::INPUT]) { - $sources[$handler::TYPE] = $handler::NAME; - } - } - - $targets = []; - foreach (Map::MAP_TESTS as $handler => $directions) { - if ($directions[Map::OUTPUT]) { - $targets[$handler::TYPE] = $handler::NAME; - } - } - - $graph = (new Graph([ - 'abc_order' => true, - 'title' => 'Direction Graph', - 'direction' => Graph::LEFT_RIGHT, - ])) - ->addStyle('linkStyle default interpolate basis'); - - $graph->addNode($toolbox = new Node('ci-report-converter', 'CI-Report
Converter', Node::CIRCLE)); - - foreach ($sources as $sourceType => $sourceName) { - $node = new Node($sourceType . "_src", $sourceName); - $graph->addNode($node); - $graph->addLink(new Link($node, $toolbox, '', Link::THICK)); - } - - foreach ($targets as $targetType => $targetName) { - $node = new Node($targetType . "_target", $targetName); - $graph->addNode($node); - $graph->addLink(new Link($toolbox, $node, '', Link::THICK)); - } - - file_put_contents(PROJECT_ROOT . '/build/directions.html', $graph->renderHtml(['version' => '8.9.2'])); - - $tmpl = implode("\n", [ - '```mermaid', - $graph->render(), - '```', - ]); - - isFileContains($tmpl, PROJECT_ROOT . '/README.md'); - } -} diff --git a/tests/autoload.php b/tests/autoload.php index 740843d..475aa5e 100644 --- a/tests/autoload.php +++ b/tests/autoload.php @@ -1,24 +1,23 @@ 0, 'xml' => 1, 'cov' => 1, diff --git a/tests/examples/CheckStyleExamples.php b/tests/examples/CheckStyleExamples.php index 5da1753..143d5cc 100644 --- a/tests/examples/CheckStyleExamples.php +++ b/tests/examples/CheckStyleExamples.php @@ -1,16 +1,15 @@ /dev/null' # Lol, we are very self-confident. Actually, we need only XML file, that's it. + \shell_exec( // Execute command via shell and return the complete output as a string. + 'php ./vendor/bin/phpcs' . // Path to bin of third-party tool (PHP Code Sniffer is just example). + ' --report=checkstyle' . // Output format of PHPcs. ci-report-converter expects it by default as `--input-format` option. + ' --report-file=./build/phpcs-report.xml' . // Save result of phpcs work in XML file in "checkstyle" format. + ' --standard=PSR12 -q ./src' . // The custom tool options. For phpcs `-q` is important! + ' || true' . // We don't expect any output of phpcs and ignore error exit codes. + ' > /dev/null', // Lol, we are very self-confident. Actually, we need only XML file, that's it. ); - echo shell_exec( - 'php ./ci-report-converter' . # The path to bin file of CI-Report-Converter. It depends of your installation way. - ' --input-format=checkstyle' . # Source reporting format. Default value is "checkstyle". I put it here just to show the option, - ' --input-file=./build/phpcs-report.xml' . # Using prepared file on previous step as source. - ' --output-format=tc-tests' . # Target reporting format. Default value is "tc-tests". I put it here just to show the option, - ' --suite-name=PHPcs' . # Define the name of group. See screenshot below. - ' --root-path=`pwd`' # Specify the root project path for pretty printing in UI. Default value is "." (dot, current dir). + echo \shell_exec( + 'php ./ci-report-converter' . // The path to bin file of CI-Report-Converter. It depends of your installation way. + ' --input-format=checkstyle' . // Source reporting format. Default value is "checkstyle". I put it here just to show the option, + ' --input-file=./build/phpcs-report.xml' . // Using prepared file on previous step as source. + ' --output-format=tc-tests' . // Target reporting format. Default value is "tc-tests". I put it here just to show the option, + ' --suite-name=PHPcs' . // Define the name of group. See screenshot below. + ' --root-path=`pwd`', // Specify the root project path for pretty printing in UI. Default value is "." (dot, current dir). ); Assert::assertTrue(true); @@ -70,11 +66,11 @@ public function testXmlFileWay(): void public function testPhpMd(): void { - echo shell_exec( + echo \shell_exec( 'php ./vendor/bin/phpmd ./src json' . ' cleancode,codesize,controversial,design,naming,unusedcode' . ' | ' . - ' ./ci-report-converter --input-format=phpmd-json' + ' ./ci-report-converter --input-format=phpmd-json', ); Assert::assertTrue(true); @@ -82,12 +78,12 @@ public function testPhpMd(): void public function testMagicNumberDetector(): void { - shell_exec('php ./vendor/bin/phpmnd ./src --hint --xml-output=./build/phpmnd-report.xml --quiet'); - echo shell_exec( + \shell_exec('php ./vendor/bin/phpmnd ./src --hint --xml-output=./build/phpmnd-report.xml --quiet'); + echo \shell_exec( 'php ./ci-report-converter' . ' --input-file=./build/phpmnd-report.xml' . ' --input-format=phpmnd' . - ' --suite-name="Magic Number Detector"' + ' --suite-name="Magic Number Detector"', ); Assert::assertTrue(true); @@ -95,12 +91,12 @@ public function testMagicNumberDetector(): void public function testPmdCpd(): void { - shell_exec('php ./vendor/bin/phpcpd.phar --min-tokens=20 ./src --log-pmd=./build/phpcpd-report.xml'); - echo shell_exec( + \shell_exec('php ./vendor/bin/phpcpd.phar --min-tokens=20 ./src --log-pmd=./build/phpcpd-report.xml'); + echo \shell_exec( 'php ./ci-report-converter' . ' --input-file=./build/phpcpd-report.xml' . ' --input-format=pmd-cpd' . - ' --suite-name="Copy&Paste Detector"' + ' --suite-name="Copy&Paste Detector"', ); Assert::assertTrue(true); @@ -108,9 +104,9 @@ public function testPmdCpd(): void public function testPhpStan(): void { - echo shell_exec( + echo \shell_exec( 'php ./vendor/bin/phpstan analyse --error-format=checkstyle --no-progress ./vendor/jbzoo' . - ' | ./ci-report-converter.phar --suite-name="PHPstan"' + ' | ./ci-report-converter.phar --suite-name="PHPstan"', ); Assert::assertTrue(true); @@ -118,12 +114,12 @@ public function testPhpStan(): void public function testPsalm(): void { - echo shell_exec( + echo \shell_exec( 'php ./vendor/bin/psalm.phar' . ' --config=./vendor/jbzoo/codestyle/psalm.xml' . ' --output-format=json' . ' ./vendor/jbzoo/jbdump/class.jbdump.php' . - ' | ./ci-report-converter.phar --input-format=psalm-json' + ' | ./ci-report-converter.phar --input-format=psalm-json', ); Assert::assertTrue(true); @@ -131,9 +127,9 @@ public function testPsalm(): void public function testPhan(): void { - echo shell_exec( + echo \shell_exec( 'php ./vendor/bin/phan.phar --allow-polyfill-parser --directory=./vendor/jbzoo/jbdump --output-mode=checkstyle' . - ' | ./ci-report-converter.phar' + ' | ./ci-report-converter.phar', ); Assert::assertTrue(true); diff --git a/tests/fixtures/origin/pdepend/dependency.xml b/tests/fixtures/origin/pdepend/dependency.xml index 23850a8..7684a14 100644 --- a/tests/fixtures/origin/pdepend/dependency.xml +++ b/tests/fixtures/origin/pdepend/dependency.xml @@ -452,7 +452,7 @@ - + @@ -467,7 +467,7 @@ - + @@ -484,7 +484,7 @@ - + @@ -499,7 +499,7 @@ - + @@ -664,13 +664,13 @@ - - + + - - - + + + @@ -682,9 +682,9 @@ - + - + @@ -693,11 +693,11 @@ - - - + + + - + @@ -707,9 +707,9 @@ - + - + @@ -718,10 +718,10 @@ - + - - + + @@ -729,11 +729,11 @@ - + - - - + + + @@ -741,10 +741,10 @@ - + - - + + @@ -753,7 +753,7 @@ - + @@ -770,49 +770,49 @@ - + - - - + + + - + - + - + - + - + - + - + - + - + - + @@ -855,13 +855,13 @@ - + - + - + @@ -1212,11 +1212,11 @@ - - - - - + + + + + @@ -1369,29 +1369,29 @@ - + - + - - - + + + - - + + - - + + @@ -1400,8 +1400,8 @@ - - + + @@ -1410,22 +1410,22 @@ - + - - - + + + - - + + - - + + @@ -1433,50 +1433,50 @@ - + - - + + - - - - - - - + + + + + + + - - - - - - - + + + + + + + - - - - - + + + + + - - - - + + + + - + @@ -1486,33 +1486,33 @@ - + - - - + + + - + - - + + - - - - - - + + + + + + @@ -1526,26 +1526,26 @@ - - - - + + + + - - - - - + + + + + - - - - + + + + @@ -1554,9 +1554,9 @@ - - - + + + @@ -1565,11 +1565,11 @@ - - - + + + - + @@ -1578,10 +1578,10 @@ - - - - + + + + @@ -1590,10 +1590,10 @@ - - + + - + @@ -1602,11 +1602,11 @@ - - - + + + - + @@ -1615,12 +1615,12 @@ - - - - - - + + + + + + @@ -1629,16 +1629,16 @@ - + - - - - + + + + @@ -1648,48 +1648,48 @@ - - - + + + - + - + - + - - + + - - - - - - + + + + + + - + - - - + + + @@ -1702,225 +1702,225 @@ - - - - - + + + + + - + - - - - - - + + + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - + + + + + + - + - + - + - + - - + + - + - + - + - - - + + + - - - - - + + + + + - + - - - - - - + + + + + + - + - + - + - + - + - + - + - + - + - + - + - + - - + + @@ -1931,114 +1931,114 @@ - - - - - + + + + + - - + + - - - - - - + + + + + + - + - + - - - + + + - + - + - + - - + + - - + + - + - - - - - - - + + + + + + + - + - - + + - - + + - + - - + + - + @@ -2046,8 +2046,8 @@ - - + + @@ -2087,7 +2087,7 @@ - + @@ -2278,8 +2278,8 @@ - - + + @@ -2304,7 +2304,7 @@ - + diff --git a/tests/fixtures/origin/pdepend/jdepend.xml b/tests/fixtures/origin/pdepend/jdepend.xml index c37c408..f65cf46 100644 --- a/tests/fixtures/origin/pdepend/jdepend.xml +++ b/tests/fixtures/origin/pdepend/jdepend.xml @@ -172,10 +172,10 @@ ConverterTeamCityTest FormatJUnitTest FormatSourceTest - CiReportConverterCodestyleTest - CiReportConverterComposerTest - CiReportConverterCopyrightTest - CiReportConverterReadmeTest + CIReportConverterCodestyleTest + CIReportConverterComposerTest + CIReportConverterCopyrightTest + CIReportConverterReadmeTest Aliases ExampleTest Fixtures @@ -224,12 +224,12 @@ JBZoo\Data JBZoo\HttpClient JBZoo\MermaidPHP - JBZoo\CiReportConverter - JBZoo\CiReportConverter\Commands - JBZoo\CiReportConverter\Converters - JBZoo\CiReportConverter\Formats - JBZoo\CiReportConverter\Formats\JUnit - JBZoo\CiReportConverter\Formats\Source + JBZoo\CIReportConverter + JBZoo\CIReportConverter\Commands + JBZoo\CIReportConverter\Converters + JBZoo\CIReportConverter\Formats + JBZoo\CIReportConverter\Formats\JUnit + JBZoo\CIReportConverter\Formats\Source JBZoo\Utils PHPUnit\Framework PHPUnit\Framework\Error @@ -308,9 +308,9 @@ JBZoo\ComposerDiff\Renders JBZoo\ComposerGraph JBZoo\PHPUnit - JBZoo\CiReportConverter\Converters - JBZoo\CiReportConverter\Formats - JBZoo\CiReportConverter\Formats\Source + JBZoo\CIReportConverter\Converters + JBZoo\CIReportConverter\Formats + JBZoo\CIReportConverter\Formats\Source JBZoo\Utils @@ -365,7 +365,7 @@ JBZoo\PHPUnit - + 5 4 @@ -386,8 +386,8 @@ AbstractCommand - JBZoo\CiReportConverter - JBZoo\CiReportConverter\Converters + JBZoo\CIReportConverter + JBZoo\CIReportConverter\Converters Symfony\Component\Console\Command Symfony\Component\Console\Input Symfony\Component\Console\Output @@ -396,7 +396,7 @@ JBZoo\PHPUnit - + 14 12 @@ -428,21 +428,21 @@ JBZoo\Data - JBZoo\CiReportConverter - JBZoo\CiReportConverter\Formats - JBZoo\CiReportConverter\Formats\JUnit - JBZoo\CiReportConverter\Formats\Metric - JBZoo\CiReportConverter\Formats\MetricMaps - JBZoo\CiReportConverter\Formats\Source - JBZoo\CiReportConverter\Formats\TeamCity - JBZoo\CiReportConverter\Formats\TeamCity\Writers + JBZoo\CIReportConverter + JBZoo\CIReportConverter\Formats + JBZoo\CIReportConverter\Formats\JUnit + JBZoo\CIReportConverter\Formats\Metric + JBZoo\CIReportConverter\Formats\MetricMaps + JBZoo\CIReportConverter\Formats\Source + JBZoo\CIReportConverter\Formats\TeamCity + JBZoo\CIReportConverter\Formats\TeamCity\Writers JBZoo\PHPUnit - JBZoo\CiReportConverter\Commands + JBZoo\CIReportConverter\Commands - + 3 3 @@ -465,12 +465,12 @@ JBZoo\PHPUnit - JBZoo\CiReportConverter\Commands - JBZoo\CiReportConverter\Converters - JBZoo\CiReportConverter\Formats + JBZoo\CIReportConverter\Commands + JBZoo\CIReportConverter\Converters + JBZoo\CIReportConverter\Formats - + 3 3 @@ -490,20 +490,20 @@ JBZoo\Data - JBZoo\CiReportConverter - JBZoo\CiReportConverter\Formats\Source + JBZoo\CIReportConverter + JBZoo\CIReportConverter\Formats\Source JBZoo\Utils JBZoo\PHPUnit - JBZoo\CiReportConverter\Converters - JBZoo\CiReportConverter\Formats\JUnit - JBZoo\CiReportConverter\Formats\Metric - JBZoo\CiReportConverter\Formats\Source - JBZoo\CiReportConverter\Formats\TeamCity + JBZoo\CIReportConverter\Converters + JBZoo\CIReportConverter\Formats\JUnit + JBZoo\CIReportConverter\Formats\Metric + JBZoo\CIReportConverter\Formats\Source + JBZoo\CIReportConverter\Formats\TeamCity - + 6 5 @@ -528,10 +528,10 @@ - JBZoo\CiReportConverter\Formats\JUnit + JBZoo\CIReportConverter\Formats\JUnit - + 4 4 @@ -551,15 +551,15 @@ - JBZoo\CiReportConverter\Formats - JBZoo\CiReportConverter\Formats\JUnit\CaseOutput + JBZoo\CIReportConverter\Formats + JBZoo\CIReportConverter\Formats\JUnit\CaseOutput JBZoo\PHPUnit - JBZoo\CiReportConverter\Converters + JBZoo\CIReportConverter\Converters - + 2 2 @@ -576,14 +576,14 @@ - JBZoo\CiReportConverter\Formats - JBZoo\CiReportConverter\Formats\MetricMaps + JBZoo\CIReportConverter\Formats + JBZoo\CIReportConverter\Formats\MetricMaps - JBZoo\CiReportConverter\Converters + JBZoo\CIReportConverter\Converters - + 5 4 @@ -605,11 +605,11 @@ - JBZoo\CiReportConverter\Converters - JBZoo\CiReportConverter\Formats\Metric + JBZoo\CIReportConverter\Converters + JBZoo\CIReportConverter\Formats\Metric - + 4 4 @@ -629,15 +629,15 @@ JBZoo\Data - JBZoo\CiReportConverter\Formats + JBZoo\CIReportConverter\Formats JBZoo\PHPUnit - JBZoo\CiReportConverter\Converters - JBZoo\CiReportConverter\Formats + JBZoo\CIReportConverter\Converters + JBZoo\CIReportConverter\Formats - + 3 3 @@ -656,16 +656,16 @@ - JBZoo\CiReportConverter\Formats - JBZoo\CiReportConverter\Formats\TeamCity\Writers + JBZoo\CIReportConverter\Formats + JBZoo\CIReportConverter\Formats\TeamCity\Writers JBZoo\Utils - JBZoo\CiReportConverter\Converters - JBZoo\CiReportConverter\Formats\TeamCity\Writers + JBZoo\CIReportConverter\Converters + JBZoo\CIReportConverter\Formats\TeamCity\Writers - + 6 5 @@ -687,13 +687,13 @@ AbstractWriter - JBZoo\CiReportConverter\Formats\TeamCity + JBZoo\CIReportConverter\Formats\TeamCity JBZoo\Utils Symfony\Component\Console\Output - JBZoo\CiReportConverter\Converters - JBZoo\CiReportConverter\Formats\TeamCity + JBZoo\CIReportConverter\Converters + JBZoo\CIReportConverter\Formats\TeamCity @@ -743,10 +743,10 @@ JBZoo\ComposerGraph JBZoo\Data JBZoo\PHPUnit - JBZoo\CiReportConverter - JBZoo\CiReportConverter\Formats - JBZoo\CiReportConverter\Formats\TeamCity - JBZoo\CiReportConverter\Formats\TeamCity\Writers + JBZoo\CIReportConverter + JBZoo\CIReportConverter\Formats + JBZoo\CIReportConverter\Formats\TeamCity + JBZoo\CIReportConverter\Formats\TeamCity\Writers @@ -795,62 +795,62 @@ JBZoo\Utils JBZoo\Data - - JBZoo\CiReportConverter\Commands - JBZoo\CiReportConverter + + JBZoo\CIReportConverter\Commands + JBZoo\CIReportConverter JBZoo\Utils JBZoo\Data JBZoo\Utils - - JBZoo\CiReportConverter\Converters + + JBZoo\CIReportConverter\Converters JBZoo\Data JBZoo\Utils JBZoo\Data - - JBZoo\CiReportConverter + + JBZoo\CIReportConverter JBZoo\Utils JBZoo\Data JBZoo\Utils - - JBZoo\CiReportConverter\Formats + + JBZoo\CIReportConverter\Formats JBZoo\Data JBZoo\Utils JBZoo\Data - - JBZoo\CiReportConverter\Formats\JUnit - JBZoo\CiReportConverter\Formats + + JBZoo\CIReportConverter\Formats\JUnit + JBZoo\CIReportConverter\Formats JBZoo\Data JBZoo\Utils JBZoo\Data - - JBZoo\CiReportConverter\Formats\Metric - JBZoo\CiReportConverter\Formats + + JBZoo\CIReportConverter\Formats\Metric + JBZoo\CIReportConverter\Formats JBZoo\Data JBZoo\Utils JBZoo\Data - - JBZoo\CiReportConverter\Formats\Source + + JBZoo\CIReportConverter\Formats\Source JBZoo\Data JBZoo\Utils JBZoo\Data - - JBZoo\CiReportConverter\Formats\TeamCity - JBZoo\CiReportConverter\Formats + + JBZoo\CIReportConverter\Formats\TeamCity + JBZoo\CIReportConverter\Formats JBZoo\Data JBZoo\Utils JBZoo\Data - - JBZoo\CiReportConverter\Formats\TeamCity\Writers - JBZoo\CiReportConverter\Formats\TeamCity - JBZoo\CiReportConverter\Formats + + JBZoo\CIReportConverter\Formats\TeamCity\Writers + JBZoo\CIReportConverter\Formats\TeamCity + JBZoo\CIReportConverter\Formats JBZoo\Data JBZoo\Utils JBZoo\Data diff --git a/tests/fixtures/origin/pdepend/summary.xml b/tests/fixtures/origin/pdepend/summary.xml index 6fd1c63..95bed0d 100644 --- a/tests/fixtures/origin/pdepend/summary.xml +++ b/tests/fixtures/origin/pdepend/summary.xml @@ -68,10 +68,10 @@ - - - - + + + + @@ -735,17 +735,17 @@ - - + + - - + + - - + + - - + + @@ -1471,8 +1471,8 @@ - - + + @@ -1481,29 +1481,29 @@ - + - + - + - + - - + + @@ -1513,34 +1513,34 @@ - + - + - + - + - + - + @@ -1550,34 +1550,34 @@ - + - + - + - + - + - + - + @@ -1585,15 +1585,15 @@ - - + + - + - + @@ -1605,8 +1605,8 @@ - - + + @@ -1615,51 +1615,51 @@ - + - + - - + + - + - + - + - + - + - - + + - + - + @@ -1674,7 +1674,7 @@ - + @@ -1688,11 +1688,11 @@ - - + + - + @@ -1700,30 +1700,30 @@ - - + + - + - + - + - + - - + + - + @@ -1732,13 +1732,13 @@ - + - + @@ -1756,18 +1756,18 @@ - - + + - + - + @@ -1783,25 +1783,25 @@ - - + + - + - + - + - + diff --git a/tests/fixtures/origin/phan/checkstyle.xml b/tests/fixtures/origin/phan/checkstyle.xml index f4088e7..e55ef0b 100644 --- a/tests/fixtures/origin/phan/checkstyle.xml +++ b/tests/fixtures/origin/phan/checkstyle.xml @@ -2,17 +2,17 @@ @@ -21,7 +21,7 @@ diff --git a/tests/fixtures/origin/phan/codeclimate.json b/tests/fixtures/origin/phan/codeclimate.json index fa69c55..dec1d2c 100644 Binary files a/tests/fixtures/origin/phan/codeclimate.json and b/tests/fixtures/origin/phan/codeclimate.json differ diff --git a/tests/fixtures/origin/phan/csv.csv b/tests/fixtures/origin/phan/csv.csv index 5daa07d..42e0bb0 100644 --- a/tests/fixtures/origin/phan/csv.csv +++ b/tests/fixtures/origin/phan/csv.csv @@ -1,11 +1,11 @@ filename,line,severity_ord,severity_name,category,check_name,message -src/JUnit/JUnitXml.php,37,5,normal,TypeError,PhanPossiblyFalseTypeMismatchProperty,"Assigning $this->rootElement of type \DOMElement|false to property but \JBZoo\CiReportConverter\JUnit\JUnitXml->rootElement is \DOMElement (false is incompatible)" -src/JUnit/JUnitXml.php,44,5,normal,Plugin,PhanPluginCanUseReturnType,"Can use \JBZoo\CiReportConverter\JUnit\TestSuiteElement as a return type of addTestSuite" +src/JUnit/JUnitXml.php,37,5,normal,TypeError,PhanPossiblyFalseTypeMismatchProperty,"Assigning $this->rootElement of type \DOMElement|false to property but \JBZoo\CIReportConverter\JUnit\JUnitXml->rootElement is \DOMElement (false is incompatible)" +src/JUnit/JUnitXml.php,44,5,normal,Plugin,PhanPluginCanUseReturnType,"Can use \JBZoo\CIReportConverter\JUnit\TestSuiteElement as a return type of addTestSuite" src/JUnit/TestCaseElement.php,34,5,normal,Plugin,PhanPluginCanUseParamType,"Can use string as the type of parameter $name of setName" -src/JUnit/TestCaseElement.php,36,5,normal,Plugin,PhanPluginSuspiciousParamPositionInternal,"Suspicious order for argument name - This is getting passed to parameter #1 (string $name) of \JBZoo\CiReportConverter\JUnit\TestCaseElement::setAttribute(string $name, string $value)" +src/JUnit/TestCaseElement.php,36,5,normal,Plugin,PhanPluginSuspiciousParamPositionInternal,"Suspicious order for argument name - This is getting passed to parameter #1 (string $name) of \JBZoo\CIReportConverter\JUnit\TestCaseElement::setAttribute(string $name, string $value)" src/JUnit/TestCaseElement.php,42,5,normal,Plugin,PhanPluginCanUseParamType,"Can use string as the type of parameter $classname of setClassname" src/JUnit/TestCaseElement.php,52,5,normal,Plugin,PhanPluginCanUseParamType,"Can use float as the type of parameter $time of setTime" -src/JUnit/TestCaseElement.php,54,5,normal,TypeError,PhanTypeMismatchArgumentInternal,"Argument 2 ($value) is $time of type float but \JBZoo\CiReportConverter\JUnit\TestCaseElement::setAttribute() takes string" +src/JUnit/TestCaseElement.php,54,5,normal,TypeError,PhanTypeMismatchArgumentInternal,"Argument 2 ($value) is $time of type float but \JBZoo\CIReportConverter\JUnit\TestCaseElement::setAttribute() takes string" src/JUnit/TestCaseElement.php,63,5,normal,Plugin,PhanPluginCanUseParamType,"Can use string as the type of parameter $error of addError" src/JUnit/TestCaseElement.php,63,5,normal,Plugin,PhanPluginCanUseParamType,"Can use string as the type of parameter $exceptionMessage of addError" src/JUnit/TestCaseElement.php,63,5,normal,Plugin,PhanPluginCanUseParamType,"Can use string as the type of parameter $type of addError" @@ -20,20 +20,20 @@ src/JUnit/TestCaseElement.php,86,5,normal,Plugin,PhanPluginCanUseReturnType,"Can src/JUnit/TestCaseElement.php,89,5,normal,TypeError,PhanPossiblyNonClassMethodCall,"Call to method setAttribute on type \DOMElement|false that could be a non-object" src/JUnit/TestCaseElement.php,92,5,normal,TypeError,PhanPossiblyNonClassMethodCall,"Call to method setAttribute on type \DOMElement|false that could be a non-object" src/JUnit/TestCaseElement.php,100,5,normal,TypeError,PhanPossiblyFalseTypeReturn,"Returning $failureElement of type \DOMElement|false but addFailure() is declared to return \DOMElement (false is incompatible)" -src/JUnit/TestCaseElement.php,109,5,normal,TypeError,PhanTypeMismatchArgumentInternal,"Argument 2 ($value) is ((int)($this->getAttribute('failures')) + 1) of type int but \JBZoo\CiReportConverter\JUnit\TestCaseElement::setAttribute() takes string" -src/JUnit/TestCaseElement.php,111,5,normal,TypeError,PhanTypeMismatchArgumentInternal,"Argument 2 ($value) is 1 of type 1 but \JBZoo\CiReportConverter\JUnit\TestCaseElement::setAttribute() takes string" -src/JUnit/TestCaseElement.php,121,5,normal,TypeError,PhanTypeMismatchArgumentInternal,"Argument 2 ($value) is ((int)($this->getAttribute('errors')) + 1) of type int but \JBZoo\CiReportConverter\JUnit\TestCaseElement::setAttribute() takes string" -src/JUnit/TestCaseElement.php,123,5,normal,TypeError,PhanTypeMismatchArgumentInternal,"Argument 2 ($value) is 1 of type 1 but \JBZoo\CiReportConverter\JUnit\TestCaseElement::setAttribute() takes string" +src/JUnit/TestCaseElement.php,109,5,normal,TypeError,PhanTypeMismatchArgumentInternal,"Argument 2 ($value) is ((int)($this->getAttribute('failures')) + 1) of type int but \JBZoo\CIReportConverter\JUnit\TestCaseElement::setAttribute() takes string" +src/JUnit/TestCaseElement.php,111,5,normal,TypeError,PhanTypeMismatchArgumentInternal,"Argument 2 ($value) is 1 of type 1 but \JBZoo\CIReportConverter\JUnit\TestCaseElement::setAttribute() takes string" +src/JUnit/TestCaseElement.php,121,5,normal,TypeError,PhanTypeMismatchArgumentInternal,"Argument 2 ($value) is ((int)($this->getAttribute('errors')) + 1) of type int but \JBZoo\CIReportConverter\JUnit\TestCaseElement::setAttribute() takes string" +src/JUnit/TestCaseElement.php,123,5,normal,TypeError,PhanTypeMismatchArgumentInternal,"Argument 2 ($value) is 1 of type 1 but \JBZoo\CIReportConverter\JUnit\TestCaseElement::setAttribute() takes string" src/JUnit/TestSuiteElement.php,35,5,normal,Plugin,PhanPluginCanUseParamType,"Can use string as the type of parameter $name of setName" -src/JUnit/TestSuiteElement.php,37,5,normal,Plugin,PhanPluginSuspiciousParamPositionInternal,"Suspicious order for argument name - This is getting passed to parameter #1 (string $name) of \JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute(string $name, string $value)" +src/JUnit/TestSuiteElement.php,37,5,normal,Plugin,PhanPluginSuspiciousParamPositionInternal,"Suspicious order for argument name - This is getting passed to parameter #1 (string $name) of \JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute(string $name, string $value)" src/JUnit/TestSuiteElement.php,55,5,normal,Plugin,PhanPluginCanUseParamType,"Can use float as the type of parameter $duration of setTime" -src/JUnit/TestSuiteElement.php,57,5,normal,TypeError,PhanTypeMismatchArgumentInternal,"Argument 2 ($value) is $duration of type float but \JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute() takes string" +src/JUnit/TestSuiteElement.php,57,5,normal,TypeError,PhanTypeMismatchArgumentInternal,"Argument 2 ($value) is $duration of type float but \JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute() takes string" src/JUnit/TestSuiteElement.php,65,5,normal,Plugin,PhanPluginCanUseParamType,"Can use string as the type of parameter $hostname of setHostname" -src/JUnit/TestSuiteElement.php,73,5,normal,Plugin,PhanPluginCanUseReturnType,"Can use \JBZoo\CiReportConverter\JUnit\TestCaseElement as a return type of addTestCase" +src/JUnit/TestSuiteElement.php,73,5,normal,Plugin,PhanPluginCanUseReturnType,"Can use \JBZoo\CIReportConverter\JUnit\TestCaseElement as a return type of addTestCase" src/JUnit/TestSuiteElement.php,86,5,normal,Plugin,PhanPluginCanUsePHP71Void,"Can use php 7.1's void as a return type of incrementTestCount" -src/JUnit/TestSuiteElement.php,89,5,normal,TypeError,PhanTypeMismatchArgumentInternal,"Argument 2 ($value) is ((int)($this->getAttribute('tests')) + 1) of type int but \JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute() takes string" -src/JUnit/TestSuiteElement.php,91,5,normal,TypeError,PhanTypeMismatchArgumentInternal,"Argument 2 ($value) is 1 of type 1 but \JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute() takes string" -src/JUnit/TestSuiteElement.php,101,5,normal,TypeError,PhanTypeMismatchArgumentInternal,"Argument 2 ($value) is ((int)($this->getAttribute('failures')) + 1) of type int but \JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute() takes string" -src/JUnit/TestSuiteElement.php,103,5,normal,TypeError,PhanTypeMismatchArgumentInternal,"Argument 2 ($value) is 1 of type 1 but \JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute() takes string" -src/JUnit/TestSuiteElement.php,113,5,normal,TypeError,PhanTypeMismatchArgumentInternal,"Argument 2 ($value) is ((int)($this->getAttribute('errors')) + 1) of type int but \JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute() takes string" -src/JUnit/TestSuiteElement.php,115,5,normal,TypeError,PhanTypeMismatchArgumentInternal,"Argument 2 ($value) is 1 of type 1 but \JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute() takes string" +src/JUnit/TestSuiteElement.php,89,5,normal,TypeError,PhanTypeMismatchArgumentInternal,"Argument 2 ($value) is ((int)($this->getAttribute('tests')) + 1) of type int but \JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute() takes string" +src/JUnit/TestSuiteElement.php,91,5,normal,TypeError,PhanTypeMismatchArgumentInternal,"Argument 2 ($value) is 1 of type 1 but \JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute() takes string" +src/JUnit/TestSuiteElement.php,101,5,normal,TypeError,PhanTypeMismatchArgumentInternal,"Argument 2 ($value) is ((int)($this->getAttribute('failures')) + 1) of type int but \JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute() takes string" +src/JUnit/TestSuiteElement.php,103,5,normal,TypeError,PhanTypeMismatchArgumentInternal,"Argument 2 ($value) is 1 of type 1 but \JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute() takes string" +src/JUnit/TestSuiteElement.php,113,5,normal,TypeError,PhanTypeMismatchArgumentInternal,"Argument 2 ($value) is ((int)($this->getAttribute('errors')) + 1) of type int but \JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute() takes string" +src/JUnit/TestSuiteElement.php,115,5,normal,TypeError,PhanTypeMismatchArgumentInternal,"Argument 2 ($value) is 1 of type 1 but \JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute() takes string" diff --git a/tests/fixtures/origin/phan/json.json b/tests/fixtures/origin/phan/json.json index a052c53..0da941d 100644 --- a/tests/fixtures/origin/phan/json.json +++ b/tests/fixtures/origin/phan/json.json @@ -3,7 +3,7 @@ "type" : "issue", "type_id" : 10065, "check_name" : "PhanPossiblyFalseTypeMismatchProperty", - "description" : "TypeError PhanPossiblyFalseTypeMismatchProperty Assigning \u001b[35m$this->rootElement\u001b[0m of type \u001b[90m\\DOMElement|false\u001b[0m to property but \u001b[36m\\JBZoo\\CiReportConverter\\JUnit\\JUnitXml->rootElement\u001b[0m is \u001b[90m\\DOMElement\u001b[0m (\u001b[90mfalse\u001b[0m is incompatible)", + "description" : "TypeError PhanPossiblyFalseTypeMismatchProperty Assigning \u001b[35m$this->rootElement\u001b[0m of type \u001b[90m\\DOMElement|false\u001b[0m to property but \u001b[36m\\JBZoo\\CIReportConverter\\JUnit\\JUnitXml->rootElement\u001b[0m is \u001b[90m\\DOMElement\u001b[0m (\u001b[90mfalse\u001b[0m is incompatible)", "severity" : 5, "location" : { "path" : "src/JUnit/JUnitXml.php", @@ -15,7 +15,7 @@ }, { "type" : "issue", "type_id" : 999, "check_name" : "PhanPluginCanUseReturnType", - "description" : "Plugin PhanPluginCanUseReturnType Can use \u001b[90m\\JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement\u001b[0m as a return type of \u001b[33maddTestSuite\u001b[0m", + "description" : "Plugin PhanPluginCanUseReturnType Can use \u001b[90m\\JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement\u001b[0m as a return type of \u001b[33maddTestSuite\u001b[0m", "severity" : 5, "location" : {"path" : "src/JUnit/JUnitXml.php", "lines" : {"begin" : 44, "end" : 44}} }, { "type" : "issue", "type_id" : 999, "check_name" : "PhanPluginCanUseParamType", @@ -23,7 +23,7 @@ "severity" : 5, "location" : {"path" : "src/JUnit/TestCaseElement.php", "lines" : {"begin" : 34, "end" : 34}} }, { "type" : "issue", "type_id" : 999, "check_name" : "PhanPluginSuspiciousParamPositionInternal", - "description" : "Plugin PhanPluginSuspiciousParamPositionInternal Suspicious order for argument \u001b[32mname\u001b[0m - This is getting passed to parameter \u001b[32m#1 (string $name)\u001b[0m of \u001b[33m\\JBZoo\\CiReportConverter\\JUnit\\TestCaseElement::setAttribute(string $name, string $value)\u001b[0m", + "description" : "Plugin PhanPluginSuspiciousParamPositionInternal Suspicious order for argument \u001b[32mname\u001b[0m - This is getting passed to parameter \u001b[32m#1 (string $name)\u001b[0m of \u001b[33m\\JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::setAttribute(string $name, string $value)\u001b[0m", "severity" : 5, "location" : {"path" : "src/JUnit/TestCaseElement.php", "lines" : {"begin" : 36, "end" : 36}} }, { "type" : "issue", "type_id" : 999, "check_name" : "PhanPluginCanUseParamType", @@ -35,7 +35,7 @@ "severity" : 5, "location" : {"path" : "src/JUnit/TestCaseElement.php", "lines" : {"begin" : 52, "end" : 52}} }, { "type" : "issue", "type_id" : 10004, "check_name" : "PhanTypeMismatchArgumentInternal", - "description" : "TypeError PhanTypeMismatchArgumentInternal Argument \u001b[35m2\u001b[0m (\u001b[36m$value\u001b[0m) is \u001b[35m$time\u001b[0m of type \u001b[90mfloat\u001b[0m but \u001b[33m\\JBZoo\\CiReportConverter\\JUnit\\TestCaseElement::setAttribute()\u001b[0m takes \u001b[90mstring\u001b[0m", + "description" : "TypeError PhanTypeMismatchArgumentInternal Argument \u001b[35m2\u001b[0m (\u001b[36m$value\u001b[0m) is \u001b[35m$time\u001b[0m of type \u001b[90mfloat\u001b[0m but \u001b[33m\\JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::setAttribute()\u001b[0m takes \u001b[90mstring\u001b[0m", "severity" : 5, "location" : {"path" : "src/JUnit/TestCaseElement.php", "lines" : {"begin" : 54, "end" : 54}} }, { "type" : "issue", "type_id" : 999, "check_name" : "PhanPluginCanUseParamType", @@ -95,19 +95,19 @@ "severity" : 5, "location" : {"path" : "src/JUnit/TestCaseElement.php", "lines" : {"begin" : 100, "end" : 100}} }, { "type" : "issue", "type_id" : 10004, "check_name" : "PhanTypeMismatchArgumentInternal", - "description" : "TypeError PhanTypeMismatchArgumentInternal Argument \u001b[35m2\u001b[0m (\u001b[36m$value\u001b[0m) is \u001b[35m((int)($this->getAttribute('failures')) + 1)\u001b[0m of type \u001b[90mint\u001b[0m but \u001b[33m\\JBZoo\\CiReportConverter\\JUnit\\TestCaseElement::setAttribute()\u001b[0m takes \u001b[90mstring\u001b[0m", + "description" : "TypeError PhanTypeMismatchArgumentInternal Argument \u001b[35m2\u001b[0m (\u001b[36m$value\u001b[0m) is \u001b[35m((int)($this->getAttribute('failures')) + 1)\u001b[0m of type \u001b[90mint\u001b[0m but \u001b[33m\\JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::setAttribute()\u001b[0m takes \u001b[90mstring\u001b[0m", "severity" : 5, "location" : {"path" : "src/JUnit/TestCaseElement.php", "lines" : {"begin" : 109, "end" : 109}} }, { "type" : "issue", "type_id" : 10004, "check_name" : "PhanTypeMismatchArgumentInternal", - "description" : "TypeError PhanTypeMismatchArgumentInternal Argument \u001b[35m2\u001b[0m (\u001b[36m$value\u001b[0m) is \u001b[35m1\u001b[0m of type \u001b[90m1\u001b[0m but \u001b[33m\\JBZoo\\CiReportConverter\\JUnit\\TestCaseElement::setAttribute()\u001b[0m takes \u001b[90mstring\u001b[0m", + "description" : "TypeError PhanTypeMismatchArgumentInternal Argument \u001b[35m2\u001b[0m (\u001b[36m$value\u001b[0m) is \u001b[35m1\u001b[0m of type \u001b[90m1\u001b[0m but \u001b[33m\\JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::setAttribute()\u001b[0m takes \u001b[90mstring\u001b[0m", "severity" : 5, "location" : {"path" : "src/JUnit/TestCaseElement.php", "lines" : {"begin" : 111, "end" : 111}} }, { "type" : "issue", "type_id" : 10004, "check_name" : "PhanTypeMismatchArgumentInternal", - "description" : "TypeError PhanTypeMismatchArgumentInternal Argument \u001b[35m2\u001b[0m (\u001b[36m$value\u001b[0m) is \u001b[35m((int)($this->getAttribute('errors')) + 1)\u001b[0m of type \u001b[90mint\u001b[0m but \u001b[33m\\JBZoo\\CiReportConverter\\JUnit\\TestCaseElement::setAttribute()\u001b[0m takes \u001b[90mstring\u001b[0m", + "description" : "TypeError PhanTypeMismatchArgumentInternal Argument \u001b[35m2\u001b[0m (\u001b[36m$value\u001b[0m) is \u001b[35m((int)($this->getAttribute('errors')) + 1)\u001b[0m of type \u001b[90mint\u001b[0m but \u001b[33m\\JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::setAttribute()\u001b[0m takes \u001b[90mstring\u001b[0m", "severity" : 5, "location" : {"path" : "src/JUnit/TestCaseElement.php", "lines" : {"begin" : 121, "end" : 121}} }, { "type" : "issue", "type_id" : 10004, "check_name" : "PhanTypeMismatchArgumentInternal", - "description" : "TypeError PhanTypeMismatchArgumentInternal Argument \u001b[35m2\u001b[0m (\u001b[36m$value\u001b[0m) is \u001b[35m1\u001b[0m of type \u001b[90m1\u001b[0m but \u001b[33m\\JBZoo\\CiReportConverter\\JUnit\\TestCaseElement::setAttribute()\u001b[0m takes \u001b[90mstring\u001b[0m", + "description" : "TypeError PhanTypeMismatchArgumentInternal Argument \u001b[35m2\u001b[0m (\u001b[36m$value\u001b[0m) is \u001b[35m1\u001b[0m of type \u001b[90m1\u001b[0m but \u001b[33m\\JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::setAttribute()\u001b[0m takes \u001b[90mstring\u001b[0m", "severity" : 5, "location" : {"path" : "src/JUnit/TestCaseElement.php", "lines" : {"begin" : 123, "end" : 123}} }, { "type" : "issue", "type_id" : 999, "check_name" : "PhanPluginCanUseParamType", @@ -115,7 +115,7 @@ "severity" : 5, "location" : {"path" : "src/JUnit/TestSuiteElement.php", "lines" : {"begin" : 35, "end" : 35}} }, { "type" : "issue", "type_id" : 999, "check_name" : "PhanPluginSuspiciousParamPositionInternal", - "description" : "Plugin PhanPluginSuspiciousParamPositionInternal Suspicious order for argument \u001b[32mname\u001b[0m - This is getting passed to parameter \u001b[32m#1 (string $name)\u001b[0m of \u001b[33m\\JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::setAttribute(string $name, string $value)\u001b[0m", + "description" : "Plugin PhanPluginSuspiciousParamPositionInternal Suspicious order for argument \u001b[32mname\u001b[0m - This is getting passed to parameter \u001b[32m#1 (string $name)\u001b[0m of \u001b[33m\\JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::setAttribute(string $name, string $value)\u001b[0m", "severity" : 5, "location" : {"path" : "src/JUnit/TestSuiteElement.php", "lines" : {"begin" : 37, "end" : 37}} }, { "type" : "issue", "type_id" : 999, "check_name" : "PhanPluginCanUseParamType", @@ -123,7 +123,7 @@ "severity" : 5, "location" : {"path" : "src/JUnit/TestSuiteElement.php", "lines" : {"begin" : 55, "end" : 55}} }, { "type" : "issue", "type_id" : 10004, "check_name" : "PhanTypeMismatchArgumentInternal", - "description" : "TypeError PhanTypeMismatchArgumentInternal Argument \u001b[35m2\u001b[0m (\u001b[36m$value\u001b[0m) is \u001b[35m$duration\u001b[0m of type \u001b[90mfloat\u001b[0m but \u001b[33m\\JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::setAttribute()\u001b[0m takes \u001b[90mstring\u001b[0m", + "description" : "TypeError PhanTypeMismatchArgumentInternal Argument \u001b[35m2\u001b[0m (\u001b[36m$value\u001b[0m) is \u001b[35m$duration\u001b[0m of type \u001b[90mfloat\u001b[0m but \u001b[33m\\JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::setAttribute()\u001b[0m takes \u001b[90mstring\u001b[0m", "severity" : 5, "location" : {"path" : "src/JUnit/TestSuiteElement.php", "lines" : {"begin" : 57, "end" : 57}} }, { "type" : "issue", "type_id" : 999, "check_name" : "PhanPluginCanUseParamType", @@ -131,7 +131,7 @@ "severity" : 5, "location" : {"path" : "src/JUnit/TestSuiteElement.php", "lines" : {"begin" : 65, "end" : 65}} }, { "type" : "issue", "type_id" : 999, "check_name" : "PhanPluginCanUseReturnType", - "description" : "Plugin PhanPluginCanUseReturnType Can use \u001b[90m\\JBZoo\\CiReportConverter\\JUnit\\TestCaseElement\u001b[0m as a return type of \u001b[33maddTestCase\u001b[0m", + "description" : "Plugin PhanPluginCanUseReturnType Can use \u001b[90m\\JBZoo\\CIReportConverter\\JUnit\\TestCaseElement\u001b[0m as a return type of \u001b[33maddTestCase\u001b[0m", "severity" : 5, "location" : {"path" : "src/JUnit/TestSuiteElement.php", "lines" : {"begin" : 73, "end" : 73}} }, { "type" : "issue", "type_id" : 999, "check_name" : "PhanPluginCanUsePHP71Void", @@ -139,27 +139,27 @@ "severity" : 5, "location" : {"path" : "src/JUnit/TestSuiteElement.php", "lines" : {"begin" : 86, "end" : 86}} }, { "type" : "issue", "type_id" : 10004, "check_name" : "PhanTypeMismatchArgumentInternal", - "description" : "TypeError PhanTypeMismatchArgumentInternal Argument \u001b[35m2\u001b[0m (\u001b[36m$value\u001b[0m) is \u001b[35m((int)($this->getAttribute('tests')) + 1)\u001b[0m of type \u001b[90mint\u001b[0m but \u001b[33m\\JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::setAttribute()\u001b[0m takes \u001b[90mstring\u001b[0m", + "description" : "TypeError PhanTypeMismatchArgumentInternal Argument \u001b[35m2\u001b[0m (\u001b[36m$value\u001b[0m) is \u001b[35m((int)($this->getAttribute('tests')) + 1)\u001b[0m of type \u001b[90mint\u001b[0m but \u001b[33m\\JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::setAttribute()\u001b[0m takes \u001b[90mstring\u001b[0m", "severity" : 5, "location" : {"path" : "src/JUnit/TestSuiteElement.php", "lines" : {"begin" : 89, "end" : 89}} }, { "type" : "issue", "type_id" : 10004, "check_name" : "PhanTypeMismatchArgumentInternal", - "description" : "TypeError PhanTypeMismatchArgumentInternal Argument \u001b[35m2\u001b[0m (\u001b[36m$value\u001b[0m) is \u001b[35m1\u001b[0m of type \u001b[90m1\u001b[0m but \u001b[33m\\JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::setAttribute()\u001b[0m takes \u001b[90mstring\u001b[0m", + "description" : "TypeError PhanTypeMismatchArgumentInternal Argument \u001b[35m2\u001b[0m (\u001b[36m$value\u001b[0m) is \u001b[35m1\u001b[0m of type \u001b[90m1\u001b[0m but \u001b[33m\\JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::setAttribute()\u001b[0m takes \u001b[90mstring\u001b[0m", "severity" : 5, "location" : {"path" : "src/JUnit/TestSuiteElement.php", "lines" : {"begin" : 91, "end" : 91}} }, { "type" : "issue", "type_id" : 10004, "check_name" : "PhanTypeMismatchArgumentInternal", - "description" : "TypeError PhanTypeMismatchArgumentInternal Argument \u001b[35m2\u001b[0m (\u001b[36m$value\u001b[0m) is \u001b[35m((int)($this->getAttribute('failures')) + 1)\u001b[0m of type \u001b[90mint\u001b[0m but \u001b[33m\\JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::setAttribute()\u001b[0m takes \u001b[90mstring\u001b[0m", + "description" : "TypeError PhanTypeMismatchArgumentInternal Argument \u001b[35m2\u001b[0m (\u001b[36m$value\u001b[0m) is \u001b[35m((int)($this->getAttribute('failures')) + 1)\u001b[0m of type \u001b[90mint\u001b[0m but \u001b[33m\\JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::setAttribute()\u001b[0m takes \u001b[90mstring\u001b[0m", "severity" : 5, "location" : {"path" : "src/JUnit/TestSuiteElement.php", "lines" : {"begin" : 101, "end" : 101}} }, { "type" : "issue", "type_id" : 10004, "check_name" : "PhanTypeMismatchArgumentInternal", - "description" : "TypeError PhanTypeMismatchArgumentInternal Argument \u001b[35m2\u001b[0m (\u001b[36m$value\u001b[0m) is \u001b[35m1\u001b[0m of type \u001b[90m1\u001b[0m but \u001b[33m\\JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::setAttribute()\u001b[0m takes \u001b[90mstring\u001b[0m", + "description" : "TypeError PhanTypeMismatchArgumentInternal Argument \u001b[35m2\u001b[0m (\u001b[36m$value\u001b[0m) is \u001b[35m1\u001b[0m of type \u001b[90m1\u001b[0m but \u001b[33m\\JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::setAttribute()\u001b[0m takes \u001b[90mstring\u001b[0m", "severity" : 5, "location" : {"path" : "src/JUnit/TestSuiteElement.php", "lines" : {"begin" : 103, "end" : 103}} }, { "type" : "issue", "type_id" : 10004, "check_name" : "PhanTypeMismatchArgumentInternal", - "description" : "TypeError PhanTypeMismatchArgumentInternal Argument \u001b[35m2\u001b[0m (\u001b[36m$value\u001b[0m) is \u001b[35m((int)($this->getAttribute('errors')) + 1)\u001b[0m of type \u001b[90mint\u001b[0m but \u001b[33m\\JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::setAttribute()\u001b[0m takes \u001b[90mstring\u001b[0m", + "description" : "TypeError PhanTypeMismatchArgumentInternal Argument \u001b[35m2\u001b[0m (\u001b[36m$value\u001b[0m) is \u001b[35m((int)($this->getAttribute('errors')) + 1)\u001b[0m of type \u001b[90mint\u001b[0m but \u001b[33m\\JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::setAttribute()\u001b[0m takes \u001b[90mstring\u001b[0m", "severity" : 5, "location" : {"path" : "src/JUnit/TestSuiteElement.php", "lines" : {"begin" : 113, "end" : 113}} }, { "type" : "issue", "type_id" : 10004, "check_name" : "PhanTypeMismatchArgumentInternal", - "description" : "TypeError PhanTypeMismatchArgumentInternal Argument \u001b[35m2\u001b[0m (\u001b[36m$value\u001b[0m) is \u001b[35m1\u001b[0m of type \u001b[90m1\u001b[0m but \u001b[33m\\JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::setAttribute()\u001b[0m takes \u001b[90mstring\u001b[0m", + "description" : "TypeError PhanTypeMismatchArgumentInternal Argument \u001b[35m2\u001b[0m (\u001b[36m$value\u001b[0m) is \u001b[35m1\u001b[0m of type \u001b[90m1\u001b[0m but \u001b[33m\\JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::setAttribute()\u001b[0m takes \u001b[90mstring\u001b[0m", "severity" : 5, "location" : {"path" : "src/JUnit/TestSuiteElement.php", "lines" : {"begin" : 115, "end" : 115}} } -] \ No newline at end of file +] diff --git a/tests/fixtures/origin/phpcpd/pmd-cpd.xml b/tests/fixtures/origin/phpcpd/pmd-cpd.xml index 14e53a5..85dfa0d 100644 --- a/tests/fixtures/origin/phpcpd/pmd-cpd.xml +++ b/tests/fixtures/origin/phpcpd/pmd-cpd.xml @@ -6,13 +6,13 @@ declare(strict_types=1); -namespace JBZoo\CiReportConverter; +namespace JBZoo\CIReportConverter; use JBZoo\Utils\Str; /** * Class Helper - * @package JBZoo\CiReportConverter + * @package JBZoo\CIReportConverter */ class Helper { diff --git a/tests/fixtures/origin/phpmd/ansi.log b/tests/fixtures/origin/phpmd/ansi.log index 411d3ab..fd3b22a 100644 --- a/tests/fixtures/origin/phpmd/ansi.log +++ b/tests/fixtures/origin/phpmd/ansi.log @@ -7,20 +7,20 @@ FILE: /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Commands/Abst FILE: /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Commands/Convert.php --------------------------------------------------------------------------------------- - 46 | VIOLATION | Avoid using static access to class '\JBZoo\CiReportConverter\Converters\Map' in method 'configure'. - 54 | VIOLATION | Avoid using static access to class '\JBZoo\CiReportConverter\Converters\Map' in method 'configure'. - 72 | VIOLATION | Avoid using static access to class '\JBZoo\CiReportConverter\Converters\Factory' in method 'executeAction'. - 91 | VIOLATION | Avoid using static access to class '\JBZoo\CiReportConverter\Converters\Map' in method 'getFormat'. + 46 | VIOLATION | Avoid using static access to class '\JBZoo\CIReportConverter\Converters\Map' in method 'configure'. + 54 | VIOLATION | Avoid using static access to class '\JBZoo\CIReportConverter\Converters\Map' in method 'configure'. + 72 | VIOLATION | Avoid using static access to class '\JBZoo\CIReportConverter\Converters\Factory' in method 'executeAction'. + 91 | VIOLATION | Avoid using static access to class '\JBZoo\CIReportConverter\Converters\Map' in method 'getFormat'. FILE: /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Commands/ConvertMap.php ------------------------------------------------------------------------------------------ - 43 | VIOLATION | Avoid using static access to class '\JBZoo\CiReportConverter\Converters\Map' in method 'executeAction'. + 43 | VIOLATION | Avoid using static access to class '\JBZoo\CIReportConverter\Converters\Map' in method 'executeAction'. FILE: /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Commands/TeamCityStats.php --------------------------------------------------------------------------------------------- - 37 | VIOLATION | Avoid using static access to class '\JBZoo\CiReportConverter\Converters\Map' in method 'configure'. - 54 | VIOLATION | Avoid using static access to class '\JBZoo\CiReportConverter\Converters\Factory' in method 'executeAction'. - 68 | VIOLATION | Avoid using static access to class '\JBZoo\CiReportConverter\Converters\Map' in method 'getFormat'. + 37 | VIOLATION | Avoid using static access to class '\JBZoo\CIReportConverter\Converters\Map' in method 'configure'. + 54 | VIOLATION | Avoid using static access to class '\JBZoo\CIReportConverter\Converters\Factory' in method 'executeAction'. + 68 | VIOLATION | Avoid using static access to class '\JBZoo\CIReportConverter\Converters\Map' in method 'getFormat'. FILE: /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/AbstractConverter.php --------------------------------------------------------------------------------------------------- @@ -34,13 +34,13 @@ FILE: /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/Ab FILE: /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/CheckStyleConverter.php ----------------------------------------------------------------------------------------------------- - 42 | VIOLATION | Avoid using static access to class '\JBZoo\CiReportConverter\Formats\Xml' in method 'toInternal'. - 43 | VIOLATION | Avoid using static access to class '\JBZoo\CiReportConverter\Formats\Xml' in method 'toInternal'. - 86 | VIOLATION | Avoid using static access to class '\JBZoo\CiReportConverter\Helper' in method 'getDetails'. + 42 | VIOLATION | Avoid using static access to class '\JBZoo\CIReportConverter\Formats\Xml' in method 'toInternal'. + 43 | VIOLATION | Avoid using static access to class '\JBZoo\CIReportConverter\Formats\Xml' in method 'toInternal'. + 86 | VIOLATION | Avoid using static access to class '\JBZoo\CIReportConverter\Helper' in method 'getDetails'. FILE: /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/Factory.php ----------------------------------------------------------------------------------------- - 72 | VIOLATION | Avoid using static access to class 'JBZoo\CiReportConverter\Converters\Map' in method 'convertMetric'. + 72 | VIOLATION | Avoid using static access to class 'JBZoo\CIReportConverter\Converters\Map' in method 'convertMetric'. FILE: /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/GitLabJsonConverter.php ----------------------------------------------------------------------------------------------------- @@ -53,8 +53,8 @@ FILE: /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/Gi FILE: /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/JUnitConverter.php ------------------------------------------------------------------------------------------------ - 42 | VIOLATION | Avoid using static access to class '\JBZoo\CiReportConverter\Formats\Xml' in method 'toInternal'. - 43 | VIOLATION | Avoid using static access to class '\JBZoo\CiReportConverter\Formats\Xml' in method 'toInternal'. + 42 | VIOLATION | Avoid using static access to class '\JBZoo\CIReportConverter\Formats\Xml' in method 'toInternal'. + 43 | VIOLATION | Avoid using static access to class '\JBZoo\CIReportConverter\Formats\Xml' in method 'toInternal'. 68 | VIOLATION | Avoid assigning values to variables in if clauses and the like (line '89', column '21'). 68 | VIOLATION | Avoid assigning values to variables in if clauses and the like (line '93', column '21'). 68 | VIOLATION | Avoid assigning values to variables in if clauses and the like (line '97', column '21'). @@ -63,23 +63,23 @@ FILE: /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/JU FILE: /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PhpDependStatsTcConverter.php ----------------------------------------------------------------------------------------------------------- - 40 | VIOLATION | Avoid using static access to class '\JBZoo\CiReportConverter\Formats\Xml' in method 'toInternalMetric'. - 40 | VIOLATION | Avoid using static access to class '\JBZoo\CiReportConverter\Formats\Xml' in method 'toInternalMetric'. + 40 | VIOLATION | Avoid using static access to class '\JBZoo\CIReportConverter\Formats\Xml' in method 'toInternalMetric'. + 40 | VIOLATION | Avoid using static access to class '\JBZoo\CIReportConverter\Formats\Xml' in method 'toInternalMetric'. FILE: /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PhpMdJsonConverter.php ---------------------------------------------------------------------------------------------------- - 99 | VIOLATION | Avoid using static access to class '\JBZoo\CiReportConverter\Helper' in method 'getDetails'. + 99 | VIOLATION | Avoid using static access to class '\JBZoo\CIReportConverter\Helper' in method 'getDetails'. FILE: /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PhpMetricsStatsTcConverter.php ------------------------------------------------------------------------------------------------------------ - 40 | VIOLATION | Avoid using static access to class '\JBZoo\CiReportConverter\Formats\Xml' in method 'toInternalMetric'. - 40 | VIOLATION | Avoid using static access to class '\JBZoo\CiReportConverter\Formats\Xml' in method 'toInternalMetric'. + 40 | VIOLATION | Avoid using static access to class '\JBZoo\CIReportConverter\Formats\Xml' in method 'toInternalMetric'. + 40 | VIOLATION | Avoid using static access to class '\JBZoo\CIReportConverter\Formats\Xml' in method 'toInternalMetric'. FILE: /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PhpMndConverter.php ------------------------------------------------------------------------------------------------- - 42 | VIOLATION | Avoid using static access to class '\JBZoo\CiReportConverter\Formats\Xml' in method 'toInternal'. - 43 | VIOLATION | Avoid using static access to class '\JBZoo\CiReportConverter\Formats\Xml' in method 'toInternal'. - 109 | VIOLATION | Avoid using static access to class '\JBZoo\CiReportConverter\Helper' in method 'getDetails'. + 42 | VIOLATION | Avoid using static access to class '\JBZoo\CIReportConverter\Formats\Xml' in method 'toInternal'. + 43 | VIOLATION | Avoid using static access to class '\JBZoo\CIReportConverter\Formats\Xml' in method 'toInternal'. + 109 | VIOLATION | Avoid using static access to class '\JBZoo\CIReportConverter\Helper' in method 'getDetails'. FILE: /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PhpUnitCloverStatsTcConverter.php --------------------------------------------------------------------------------------------------------------- @@ -87,15 +87,15 @@ FILE: /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/Ph FILE: /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PmdCpdConverter.php ------------------------------------------------------------------------------------------------- - 42 | VIOLATION | Avoid using static access to class '\JBZoo\CiReportConverter\Formats\Xml' in method 'toInternal'. - 42 | VIOLATION | Avoid using static access to class '\JBZoo\CiReportConverter\Formats\Xml' in method 'toInternal'. + 42 | VIOLATION | Avoid using static access to class '\JBZoo\CIReportConverter\Formats\Xml' in method 'toInternal'. + 42 | VIOLATION | Avoid using static access to class '\JBZoo\CIReportConverter\Formats\Xml' in method 'toInternal'. 132 | VIOLATION | Avoid assigning values to variables in if clauses and the like (line '152', column '13'). 157 | VIOLATION | The method getDetails uses an else expression. Else clauses are basically not necessary and you can simplify the code by not using them. FILE: /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PsalmJsonConverter.php ---------------------------------------------------------------------------------------------------- 69 | VIOLATION | The method toInternal uses an else expression. Else clauses are basically not necessary and you can simplify the code by not using them. - 85 | VIOLATION | Avoid using static access to class '\JBZoo\CiReportConverter\Helper' in method 'getDetails'. + 85 | VIOLATION | Avoid using static access to class '\JBZoo\CIReportConverter\Helper' in method 'getDetails'. FILE: /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/TeamCityTestsConverter.php -------------------------------------------------------------------------------------------------------- @@ -109,7 +109,7 @@ FILE: /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Formats/Abstr FILE: /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Formats/GithubActions/GithubCase.php ------------------------------------------------------------------------------------------------------- - 77 | VIOLATION | Avoid using static access to class 'JBZoo\CiReportConverter\Formats\GithubActions\GithubActions' in method '__toString'. + 77 | VIOLATION | Avoid using static access to class 'JBZoo\CIReportConverter\Formats\GithubActions\GithubActions' in method '__toString'. FILE: /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Formats/JUnit/CaseOutput/AbstractOutput.php -------------------------------------------------------------------------------------------------------------- @@ -118,7 +118,7 @@ FILE: /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Formats/JUnit FILE: /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Formats/JUnit/JUnit.php ------------------------------------------------------------------------------------------ - 49 | VIOLATION | Avoid using static access to class '\JBZoo\CiReportConverter\Formats\Xml' in method 'getDom'. + 49 | VIOLATION | Avoid using static access to class '\JBZoo\CIReportConverter\Formats\Xml' in method 'getDom'. FILE: /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Formats/JUnit/JUnitCase.php ---------------------------------------------------------------------------------------------- @@ -148,8 +148,8 @@ FILE: /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Formats/TeamC ------------------------------------------------------------------------------------------------ 69 | VIOLATION | Avoid using static access to class '\JBZoo\Utils\Sys' in method '__construct'. 71 | VIOLATION | The method __construct uses an else expression. Else clauses are basically not necessary and you can simplify the code by not using them. - 124 | VIOLATION | Avoid using static access to class 'JBZoo\CiReportConverter\Formats\TeamCity\Helper' in method 'write'. - 137 | VIOLATION | Avoid using static access to class 'JBZoo\CiReportConverter\Formats\TeamCity\Helper' in method 'write'. + 124 | VIOLATION | Avoid using static access to class 'JBZoo\CIReportConverter\Formats\TeamCity\Helper' in method 'write'. + 137 | VIOLATION | Avoid using static access to class 'JBZoo\CIReportConverter\Formats\TeamCity\Helper' in method 'write'. FILE: /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Formats/TeamCity/Writers/Stdout.php ------------------------------------------------------------------------------------------------------ diff --git a/tests/fixtures/origin/phpmd/github.log b/tests/fixtures/origin/phpmd/github.log index fd44cbb..d270098 100644 --- a/tests/fixtures/origin/phpmd/github.log +++ b/tests/fixtures/origin/phpmd/github.log @@ -1,55 +1,55 @@ โ€ฐ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Commands/AbstractCommand.php,line=77::Avoid assigning values to variables in if clauses and the like (line '79', column '13'). ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Commands/AbstractCommand.php,line=104::Avoid assigning values to variables in if clauses and the like (line '106', column '13'). ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Commands/AbstractCommand.php,line=109::The method saveResult uses an else expression. Else clauses are basically not necessary and you can simplify the code by not using them. -::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Commands/Convert.php,line=46::Avoid using static access to class '\JBZoo\CiReportConverter\Converters\Map' in method 'configure'. -::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Commands/Convert.php,line=54::Avoid using static access to class '\JBZoo\CiReportConverter\Converters\Map' in method 'configure'. -::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Commands/Convert.php,line=72::Avoid using static access to class '\JBZoo\CiReportConverter\Converters\Factory' in method 'executeAction'. -::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Commands/Convert.php,line=91::Avoid using static access to class '\JBZoo\CiReportConverter\Converters\Map' in method 'getFormat'. -::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Commands/ConvertMap.php,line=43::Avoid using static access to class '\JBZoo\CiReportConverter\Converters\Map' in method 'executeAction'. -::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Commands/TeamCityStats.php,line=37::Avoid using static access to class '\JBZoo\CiReportConverter\Converters\Map' in method 'configure'. -::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Commands/TeamCityStats.php,line=54::Avoid using static access to class '\JBZoo\CiReportConverter\Converters\Factory' in method 'executeAction'. -::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Commands/TeamCityStats.php,line=68::Avoid using static access to class '\JBZoo\CiReportConverter\Converters\Map' in method 'getFormat'. +::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Commands/Convert.php,line=46::Avoid using static access to class '\JBZoo\CIReportConverter\Converters\Map' in method 'configure'. +::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Commands/Convert.php,line=54::Avoid using static access to class '\JBZoo\CIReportConverter\Converters\Map' in method 'configure'. +::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Commands/Convert.php,line=72::Avoid using static access to class '\JBZoo\CIReportConverter\Converters\Factory' in method 'executeAction'. +::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Commands/Convert.php,line=91::Avoid using static access to class '\JBZoo\CIReportConverter\Converters\Map' in method 'getFormat'. +::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Commands/ConvertMap.php,line=43::Avoid using static access to class '\JBZoo\CIReportConverter\Converters\Map' in method 'executeAction'. +::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Commands/TeamCityStats.php,line=37::Avoid using static access to class '\JBZoo\CIReportConverter\Converters\Map' in method 'configure'. +::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Commands/TeamCityStats.php,line=54::Avoid using static access to class '\JBZoo\CIReportConverter\Converters\Factory' in method 'executeAction'. +::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Commands/TeamCityStats.php,line=68::Avoid using static access to class '\JBZoo\CIReportConverter\Converters\Map' in method 'getFormat'. ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/AbstractConverter.php,line=119::Avoid assigning values to variables in if clauses and the like (line '125', column '13'). ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/AbstractConverter.php,line=119::Avoid assigning values to variables in if clauses and the like (line '134', column '17'). ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/AbstractConverter.php,line=158::The method getFilePoint uses an else expression. Else clauses are basically not necessary and you can simplify the code by not using them. ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/AbstractStatsTcConverter.php,line=68::The method buildMetrics uses an else expression. Else clauses are basically not necessary and you can simplify the code by not using them. -::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/CheckStyleConverter.php,line=42::Avoid using static access to class '\JBZoo\CiReportConverter\Formats\Xml' in method 'toInternal'. -::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/CheckStyleConverter.php,line=43::Avoid using static access to class '\JBZoo\CiReportConverter\Formats\Xml' in method 'toInternal'. -::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/CheckStyleConverter.php,line=86::Avoid using static access to class '\JBZoo\CiReportConverter\Helper' in method 'getDetails'. -::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/Factory.php,line=72::Avoid using static access to class 'JBZoo\CiReportConverter\Converters\Map' in method 'convertMetric'. +::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/CheckStyleConverter.php,line=42::Avoid using static access to class '\JBZoo\CIReportConverter\Formats\Xml' in method 'toInternal'. +::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/CheckStyleConverter.php,line=43::Avoid using static access to class '\JBZoo\CIReportConverter\Formats\Xml' in method 'toInternal'. +::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/CheckStyleConverter.php,line=86::Avoid using static access to class '\JBZoo\CIReportConverter\Helper' in method 'getDetails'. +::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/Factory.php,line=72::Avoid using static access to class 'JBZoo\CIReportConverter\Converters\Map' in method 'convertMetric'. ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/GitLabJsonConverter.php,line=79::The method renderTestCase uses an else expression. Else clauses are basically not necessary and you can simplify the code by not using them. ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/GithubCliConverter.php,line=44::The method fromInternal uses an else expression. Else clauses are basically not necessary and you can simplify the code by not using them. ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/GithubCliConverter.php,line=84::The method renderTestCase uses an else expression. Else clauses are basically not necessary and you can simplify the code by not using them. -::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/JUnitConverter.php,line=42::Avoid using static access to class '\JBZoo\CiReportConverter\Formats\Xml' in method 'toInternal'. -::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/JUnitConverter.php,line=43::Avoid using static access to class '\JBZoo\CiReportConverter\Formats\Xml' in method 'toInternal'. +::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/JUnitConverter.php,line=42::Avoid using static access to class '\JBZoo\CIReportConverter\Formats\Xml' in method 'toInternal'. +::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/JUnitConverter.php,line=43::Avoid using static access to class '\JBZoo\CIReportConverter\Formats\Xml' in method 'toInternal'. ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/JUnitConverter.php,line=68::Avoid assigning values to variables in if clauses and the like (line '89', column '21'). ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/JUnitConverter.php,line=68::Avoid assigning values to variables in if clauses and the like (line '93', column '21'). ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/JUnitConverter.php,line=68::Avoid assigning values to variables in if clauses and the like (line '97', column '21'). ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/JUnitConverter.php,line=156::The method createSourceNodes uses an else expression. Else clauses are basically not necessary and you can simplify the code by not using them. ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/JUnitConverter.php,line=162::The method createSourceNodes uses an else expression. Else clauses are basically not necessary and you can simplify the code by not using them. -::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PhpDependStatsTcConverter.php,line=40::Avoid using static access to class '\JBZoo\CiReportConverter\Formats\Xml' in method 'toInternalMetric'. -::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PhpDependStatsTcConverter.php,line=40::Avoid using static access to class '\JBZoo\CiReportConverter\Formats\Xml' in method 'toInternalMetric'. -::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PhpMdJsonConverter.php,line=99::Avoid using static access to class '\JBZoo\CiReportConverter\Helper' in method 'getDetails'. -::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PhpMetricsStatsTcConverter.php,line=40::Avoid using static access to class '\JBZoo\CiReportConverter\Formats\Xml' in method 'toInternalMetric'. -::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PhpMetricsStatsTcConverter.php,line=40::Avoid using static access to class '\JBZoo\CiReportConverter\Formats\Xml' in method 'toInternalMetric'. -::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PhpMndConverter.php,line=42::Avoid using static access to class '\JBZoo\CiReportConverter\Formats\Xml' in method 'toInternal'. -::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PhpMndConverter.php,line=43::Avoid using static access to class '\JBZoo\CiReportConverter\Formats\Xml' in method 'toInternal'. -::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PhpMndConverter.php,line=109::Avoid using static access to class '\JBZoo\CiReportConverter\Helper' in method 'getDetails'. +::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PhpDependStatsTcConverter.php,line=40::Avoid using static access to class '\JBZoo\CIReportConverter\Formats\Xml' in method 'toInternalMetric'. +::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PhpDependStatsTcConverter.php,line=40::Avoid using static access to class '\JBZoo\CIReportConverter\Formats\Xml' in method 'toInternalMetric'. +::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PhpMdJsonConverter.php,line=99::Avoid using static access to class '\JBZoo\CIReportConverter\Helper' in method 'getDetails'. +::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PhpMetricsStatsTcConverter.php,line=40::Avoid using static access to class '\JBZoo\CIReportConverter\Formats\Xml' in method 'toInternalMetric'. +::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PhpMetricsStatsTcConverter.php,line=40::Avoid using static access to class '\JBZoo\CIReportConverter\Formats\Xml' in method 'toInternalMetric'. +::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PhpMndConverter.php,line=42::Avoid using static access to class '\JBZoo\CIReportConverter\Formats\Xml' in method 'toInternal'. +::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PhpMndConverter.php,line=43::Avoid using static access to class '\JBZoo\CIReportConverter\Formats\Xml' in method 'toInternal'. +::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PhpMndConverter.php,line=109::Avoid using static access to class '\JBZoo\CIReportConverter\Helper' in method 'getDetails'. ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PhpUnitCloverStatsTcConverter.php,line=41::Missing class import via use statement (line '41', column '26'). -::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PmdCpdConverter.php,line=42::Avoid using static access to class '\JBZoo\CiReportConverter\Formats\Xml' in method 'toInternal'. -::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PmdCpdConverter.php,line=42::Avoid using static access to class '\JBZoo\CiReportConverter\Formats\Xml' in method 'toInternal'. +::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PmdCpdConverter.php,line=42::Avoid using static access to class '\JBZoo\CIReportConverter\Formats\Xml' in method 'toInternal'. +::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PmdCpdConverter.php,line=42::Avoid using static access to class '\JBZoo\CIReportConverter\Formats\Xml' in method 'toInternal'. ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PmdCpdConverter.php,line=132::Avoid assigning values to variables in if clauses and the like (line '152', column '13'). ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PmdCpdConverter.php,line=157::The method getDetails uses an else expression. Else clauses are basically not necessary and you can simplify the code by not using them. ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PsalmJsonConverter.php,line=69::The method toInternal uses an else expression. Else clauses are basically not necessary and you can simplify the code by not using them. -::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PsalmJsonConverter.php,line=85::Avoid using static access to class '\JBZoo\CiReportConverter\Helper' in method 'getDetails'. +::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/PsalmJsonConverter.php,line=85::Avoid using static access to class '\JBZoo\CIReportConverter\Helper' in method 'getDetails'. ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/TeamCityTestsConverter.php,line=106::Avoid assigning values to variables in if clauses and the like (line '119', column '13'). ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Converters/TeamCityTestsConverter.php,line=121::The method renderTestCase uses an else expression. Else clauses are basically not necessary and you can simplify the code by not using them. ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Formats/AbstractNode.php,line=64::Avoid using static access to class '\JBZoo\Utils\Str' in method '__construct'. ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Formats/AbstractNode.php,line=163::The method toArray uses an else expression. Else clauses are basically not necessary and you can simplify the code by not using them. -::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Formats/GithubActions/GithubCase.php,line=77::Avoid using static access to class 'JBZoo\CiReportConverter\Formats\GithubActions\GithubActions' in method '__toString'. +::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Formats/GithubActions/GithubCase.php,line=77::Avoid using static access to class 'JBZoo\CIReportConverter\Formats\GithubActions\GithubActions' in method '__toString'. ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Formats/JUnit/CaseOutput/AbstractOutput.php,line=90::Avoid using static access to class '\JBZoo\Utils\Xml' in method 'toXML'. ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Formats/JUnit/CaseOutput/AbstractOutput.php,line=91::The method toXML uses an else expression. Else clauses are basically not necessary and you can simplify the code by not using them. -::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Formats/JUnit/JUnit.php,line=49::Avoid using static access to class '\JBZoo\CiReportConverter\Formats\Xml' in method 'getDom'. +::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Formats/JUnit/JUnit.php,line=49::Avoid using static access to class '\JBZoo\CIReportConverter\Formats\Xml' in method 'getDom'. ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Formats/JUnit/JUnitCase.php,line=110::The method addSystemOut uses an else expression. Else clauses are basically not necessary and you can simplify the code by not using them. ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Formats/JUnit/JUnitSuite.php,line=59::Avoid assigning values to variables in if clauses and the like (line '69', column '13'). ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Formats/JUnit/JUnitSuite.php,line=59::Avoid assigning values to variables in if clauses and the like (line '73', column '13'). @@ -64,8 +64,8 @@ ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Formats/TeamCity/Helper.php,line=110::Missing class import via use statement (line '110', column '38'). ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Formats/TeamCity/TeamCity.php,line=69::Avoid using static access to class '\JBZoo\Utils\Sys' in method '__construct'. ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Formats/TeamCity/TeamCity.php,line=71::The method __construct uses an else expression. Else clauses are basically not necessary and you can simplify the code by not using them. -::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Formats/TeamCity/TeamCity.php,line=124::Avoid using static access to class 'JBZoo\CiReportConverter\Formats\TeamCity\Helper' in method 'write'. -::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Formats/TeamCity/TeamCity.php,line=137::Avoid using static access to class 'JBZoo\CiReportConverter\Formats\TeamCity\Helper' in method 'write'. +::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Formats/TeamCity/TeamCity.php,line=124::Avoid using static access to class 'JBZoo\CIReportConverter\Formats\TeamCity\Helper' in method 'write'. +::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Formats/TeamCity/TeamCity.php,line=137::Avoid using static access to class 'JBZoo\CIReportConverter\Formats\TeamCity\Helper' in method 'write'. ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Formats/TeamCity/Writers/Stdout.php,line=34::Avoid using static access to class '\JBZoo\Utils\Cli' in method 'write'. ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Formats/Xml.php,line=35::Missing class import via use statement (line '35', column '25'). ::warning file=/Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Formats/Xml.php,line=102::Avoid assigning values to variables in if clauses and the like (line '121', column '44'). diff --git a/tests/fixtures/origin/phpmd/phpmd.html b/tests/fixtures/origin/phpmd/phpmd.html index e820d3c..2412596 100644 --- a/tests/fixtures/origin/phpmd/phpmd.html +++ b/tests/fixtures/origin/phpmd/phpmd.html @@ -9,7 +9,7 @@

PHPMD Report

on SmetBook16.local

72 problems found

Summary

By priority
Count%Priority
72 100.0 % Top (1)
-
By namespace
Count%PHP Namespace
7 41.2 % JBZoo\CiReportConverter\Formats\JUnit
7 41.2 % JBZoo\CiReportConverter\Converters
2 11.8 % JBZoo\CiReportConverter\Commands
1 5.9 % JBZoo\CiReportConverter\Formats
+
By namespace
Count%PHP Namespace
7 41.2 % JBZoo\CIReportConverter\Formats\JUnit
7 41.2 % JBZoo\CIReportConverter\Converters
2 11.8 % JBZoo\CIReportConverter\Commands
1 5.9 % JBZoo\CIReportConverter\Formats
By rule set
Count%Rule set
72 100.0 % Clean Code Rules
By name
Count%Rule name
34 47.2 % StaticAccess
18 25.0 % ElseExpression
17 23.6 % IfStatementAssignment
3 4.2 % MissingImport

Details

@@ -23,55 +23,55 @@

Details

\ No newline at end of file + diff --git a/tests/fixtures/origin/phpmd/sarif.json b/tests/fixtures/origin/phpmd/sarif.json index a79f5db..0b33a14 100644 --- a/tests/fixtures/origin/phpmd/sarif.json +++ b/tests/fixtures/origin/phpmd/sarif.json @@ -189,10 +189,10 @@ "message": { "id": "default", "arguments": [ - "\\JBZoo\\CiReportConverter\\Converters\\Map", + "\\JBZoo\\CIReportConverter\\Converters\\Map", "configure" ], - "text": "Avoid using static access to class \u0027\\JBZoo\\CiReportConverter\\Converters\\Map\u0027 in method \u0027configure\u0027." + "text": "Avoid using static access to class \u0027\\JBZoo\\CIReportConverter\\Converters\\Map\u0027 in method \u0027configure\u0027." }, "locations": [ { @@ -215,10 +215,10 @@ "message": { "id": "default", "arguments": [ - "\\JBZoo\\CiReportConverter\\Converters\\Map", + "\\JBZoo\\CIReportConverter\\Converters\\Map", "configure" ], - "text": "Avoid using static access to class \u0027\\JBZoo\\CiReportConverter\\Converters\\Map\u0027 in method \u0027configure\u0027." + "text": "Avoid using static access to class \u0027\\JBZoo\\CIReportConverter\\Converters\\Map\u0027 in method \u0027configure\u0027." }, "locations": [ { @@ -241,10 +241,10 @@ "message": { "id": "default", "arguments": [ - "\\JBZoo\\CiReportConverter\\Converters\\Factory", + "\\JBZoo\\CIReportConverter\\Converters\\Factory", "executeAction" ], - "text": "Avoid using static access to class \u0027\\JBZoo\\CiReportConverter\\Converters\\Factory\u0027 in method \u0027executeAction\u0027." + "text": "Avoid using static access to class \u0027\\JBZoo\\CIReportConverter\\Converters\\Factory\u0027 in method \u0027executeAction\u0027." }, "locations": [ { @@ -267,10 +267,10 @@ "message": { "id": "default", "arguments": [ - "\\JBZoo\\CiReportConverter\\Converters\\Map", + "\\JBZoo\\CIReportConverter\\Converters\\Map", "getFormat" ], - "text": "Avoid using static access to class \u0027\\JBZoo\\CiReportConverter\\Converters\\Map\u0027 in method \u0027getFormat\u0027." + "text": "Avoid using static access to class \u0027\\JBZoo\\CIReportConverter\\Converters\\Map\u0027 in method \u0027getFormat\u0027." }, "locations": [ { @@ -293,10 +293,10 @@ "message": { "id": "default", "arguments": [ - "\\JBZoo\\CiReportConverter\\Converters\\Map", + "\\JBZoo\\CIReportConverter\\Converters\\Map", "executeAction" ], - "text": "Avoid using static access to class \u0027\\JBZoo\\CiReportConverter\\Converters\\Map\u0027 in method \u0027executeAction\u0027." + "text": "Avoid using static access to class \u0027\\JBZoo\\CIReportConverter\\Converters\\Map\u0027 in method \u0027executeAction\u0027." }, "locations": [ { @@ -319,10 +319,10 @@ "message": { "id": "default", "arguments": [ - "\\JBZoo\\CiReportConverter\\Converters\\Map", + "\\JBZoo\\CIReportConverter\\Converters\\Map", "configure" ], - "text": "Avoid using static access to class \u0027\\JBZoo\\CiReportConverter\\Converters\\Map\u0027 in method \u0027configure\u0027." + "text": "Avoid using static access to class \u0027\\JBZoo\\CIReportConverter\\Converters\\Map\u0027 in method \u0027configure\u0027." }, "locations": [ { @@ -345,10 +345,10 @@ "message": { "id": "default", "arguments": [ - "\\JBZoo\\CiReportConverter\\Converters\\Factory", + "\\JBZoo\\CIReportConverter\\Converters\\Factory", "executeAction" ], - "text": "Avoid using static access to class \u0027\\JBZoo\\CiReportConverter\\Converters\\Factory\u0027 in method \u0027executeAction\u0027." + "text": "Avoid using static access to class \u0027\\JBZoo\\CIReportConverter\\Converters\\Factory\u0027 in method \u0027executeAction\u0027." }, "locations": [ { @@ -371,10 +371,10 @@ "message": { "id": "default", "arguments": [ - "\\JBZoo\\CiReportConverter\\Converters\\Map", + "\\JBZoo\\CIReportConverter\\Converters\\Map", "getFormat" ], - "text": "Avoid using static access to class \u0027\\JBZoo\\CiReportConverter\\Converters\\Map\u0027 in method \u0027getFormat\u0027." + "text": "Avoid using static access to class \u0027\\JBZoo\\CIReportConverter\\Converters\\Map\u0027 in method \u0027getFormat\u0027." }, "locations": [ { @@ -499,10 +499,10 @@ "message": { "id": "default", "arguments": [ - "\\JBZoo\\CiReportConverter\\Formats\\Xml", + "\\JBZoo\\CIReportConverter\\Formats\\Xml", "toInternal" ], - "text": "Avoid using static access to class \u0027\\JBZoo\\CiReportConverter\\Formats\\Xml\u0027 in method \u0027toInternal\u0027." + "text": "Avoid using static access to class \u0027\\JBZoo\\CIReportConverter\\Formats\\Xml\u0027 in method \u0027toInternal\u0027." }, "locations": [ { @@ -525,10 +525,10 @@ "message": { "id": "default", "arguments": [ - "\\JBZoo\\CiReportConverter\\Formats\\Xml", + "\\JBZoo\\CIReportConverter\\Formats\\Xml", "toInternal" ], - "text": "Avoid using static access to class \u0027\\JBZoo\\CiReportConverter\\Formats\\Xml\u0027 in method \u0027toInternal\u0027." + "text": "Avoid using static access to class \u0027\\JBZoo\\CIReportConverter\\Formats\\Xml\u0027 in method \u0027toInternal\u0027." }, "locations": [ { @@ -551,10 +551,10 @@ "message": { "id": "default", "arguments": [ - "\\JBZoo\\CiReportConverter\\Helper", + "\\JBZoo\\CIReportConverter\\Helper", "getDetails" ], - "text": "Avoid using static access to class \u0027\\JBZoo\\CiReportConverter\\Helper\u0027 in method \u0027getDetails\u0027." + "text": "Avoid using static access to class \u0027\\JBZoo\\CIReportConverter\\Helper\u0027 in method \u0027getDetails\u0027." }, "locations": [ { @@ -577,10 +577,10 @@ "message": { "id": "default", "arguments": [ - "JBZoo\\CiReportConverter\\Converters\\Map", + "JBZoo\\CIReportConverter\\Converters\\Map", "convertMetric" ], - "text": "Avoid using static access to class \u0027JBZoo\\CiReportConverter\\Converters\\Map\u0027 in method \u0027convertMetric\u0027." + "text": "Avoid using static access to class \u0027JBZoo\\CIReportConverter\\Converters\\Map\u0027 in method \u0027convertMetric\u0027." }, "locations": [ { @@ -678,10 +678,10 @@ "message": { "id": "default", "arguments": [ - "\\JBZoo\\CiReportConverter\\Formats\\Xml", + "\\JBZoo\\CIReportConverter\\Formats\\Xml", "toInternal" ], - "text": "Avoid using static access to class \u0027\\JBZoo\\CiReportConverter\\Formats\\Xml\u0027 in method \u0027toInternal\u0027." + "text": "Avoid using static access to class \u0027\\JBZoo\\CIReportConverter\\Formats\\Xml\u0027 in method \u0027toInternal\u0027." }, "locations": [ { @@ -704,10 +704,10 @@ "message": { "id": "default", "arguments": [ - "\\JBZoo\\CiReportConverter\\Formats\\Xml", + "\\JBZoo\\CIReportConverter\\Formats\\Xml", "toInternal" ], - "text": "Avoid using static access to class \u0027\\JBZoo\\CiReportConverter\\Formats\\Xml\u0027 in method \u0027toInternal\u0027." + "text": "Avoid using static access to class \u0027\\JBZoo\\CIReportConverter\\Formats\\Xml\u0027 in method \u0027toInternal\u0027." }, "locations": [ { @@ -858,10 +858,10 @@ "message": { "id": "default", "arguments": [ - "\\JBZoo\\CiReportConverter\\Formats\\Xml", + "\\JBZoo\\CIReportConverter\\Formats\\Xml", "toInternalMetric" ], - "text": "Avoid using static access to class \u0027\\JBZoo\\CiReportConverter\\Formats\\Xml\u0027 in method \u0027toInternalMetric\u0027." + "text": "Avoid using static access to class \u0027\\JBZoo\\CIReportConverter\\Formats\\Xml\u0027 in method \u0027toInternalMetric\u0027." }, "locations": [ { @@ -884,10 +884,10 @@ "message": { "id": "default", "arguments": [ - "\\JBZoo\\CiReportConverter\\Formats\\Xml", + "\\JBZoo\\CIReportConverter\\Formats\\Xml", "toInternalMetric" ], - "text": "Avoid using static access to class \u0027\\JBZoo\\CiReportConverter\\Formats\\Xml\u0027 in method \u0027toInternalMetric\u0027." + "text": "Avoid using static access to class \u0027\\JBZoo\\CIReportConverter\\Formats\\Xml\u0027 in method \u0027toInternalMetric\u0027." }, "locations": [ { @@ -910,10 +910,10 @@ "message": { "id": "default", "arguments": [ - "\\JBZoo\\CiReportConverter\\Helper", + "\\JBZoo\\CIReportConverter\\Helper", "getDetails" ], - "text": "Avoid using static access to class \u0027\\JBZoo\\CiReportConverter\\Helper\u0027 in method \u0027getDetails\u0027." + "text": "Avoid using static access to class \u0027\\JBZoo\\CIReportConverter\\Helper\u0027 in method \u0027getDetails\u0027." }, "locations": [ { @@ -936,10 +936,10 @@ "message": { "id": "default", "arguments": [ - "\\JBZoo\\CiReportConverter\\Formats\\Xml", + "\\JBZoo\\CIReportConverter\\Formats\\Xml", "toInternalMetric" ], - "text": "Avoid using static access to class \u0027\\JBZoo\\CiReportConverter\\Formats\\Xml\u0027 in method \u0027toInternalMetric\u0027." + "text": "Avoid using static access to class \u0027\\JBZoo\\CIReportConverter\\Formats\\Xml\u0027 in method \u0027toInternalMetric\u0027." }, "locations": [ { @@ -962,10 +962,10 @@ "message": { "id": "default", "arguments": [ - "\\JBZoo\\CiReportConverter\\Formats\\Xml", + "\\JBZoo\\CIReportConverter\\Formats\\Xml", "toInternalMetric" ], - "text": "Avoid using static access to class \u0027\\JBZoo\\CiReportConverter\\Formats\\Xml\u0027 in method \u0027toInternalMetric\u0027." + "text": "Avoid using static access to class \u0027\\JBZoo\\CIReportConverter\\Formats\\Xml\u0027 in method \u0027toInternalMetric\u0027." }, "locations": [ { @@ -988,10 +988,10 @@ "message": { "id": "default", "arguments": [ - "\\JBZoo\\CiReportConverter\\Formats\\Xml", + "\\JBZoo\\CIReportConverter\\Formats\\Xml", "toInternal" ], - "text": "Avoid using static access to class \u0027\\JBZoo\\CiReportConverter\\Formats\\Xml\u0027 in method \u0027toInternal\u0027." + "text": "Avoid using static access to class \u0027\\JBZoo\\CIReportConverter\\Formats\\Xml\u0027 in method \u0027toInternal\u0027." }, "locations": [ { @@ -1014,10 +1014,10 @@ "message": { "id": "default", "arguments": [ - "\\JBZoo\\CiReportConverter\\Formats\\Xml", + "\\JBZoo\\CIReportConverter\\Formats\\Xml", "toInternal" ], - "text": "Avoid using static access to class \u0027\\JBZoo\\CiReportConverter\\Formats\\Xml\u0027 in method \u0027toInternal\u0027." + "text": "Avoid using static access to class \u0027\\JBZoo\\CIReportConverter\\Formats\\Xml\u0027 in method \u0027toInternal\u0027." }, "locations": [ { @@ -1040,10 +1040,10 @@ "message": { "id": "default", "arguments": [ - "\\JBZoo\\CiReportConverter\\Helper", + "\\JBZoo\\CIReportConverter\\Helper", "getDetails" ], - "text": "Avoid using static access to class \u0027\\JBZoo\\CiReportConverter\\Helper\u0027 in method \u0027getDetails\u0027." + "text": "Avoid using static access to class \u0027\\JBZoo\\CIReportConverter\\Helper\u0027 in method \u0027getDetails\u0027." }, "locations": [ { @@ -1092,10 +1092,10 @@ "message": { "id": "default", "arguments": [ - "\\JBZoo\\CiReportConverter\\Formats\\Xml", + "\\JBZoo\\CIReportConverter\\Formats\\Xml", "toInternal" ], - "text": "Avoid using static access to class \u0027\\JBZoo\\CiReportConverter\\Formats\\Xml\u0027 in method \u0027toInternal\u0027." + "text": "Avoid using static access to class \u0027\\JBZoo\\CIReportConverter\\Formats\\Xml\u0027 in method \u0027toInternal\u0027." }, "locations": [ { @@ -1118,10 +1118,10 @@ "message": { "id": "default", "arguments": [ - "\\JBZoo\\CiReportConverter\\Formats\\Xml", + "\\JBZoo\\CIReportConverter\\Formats\\Xml", "toInternal" ], - "text": "Avoid using static access to class \u0027\\JBZoo\\CiReportConverter\\Formats\\Xml\u0027 in method \u0027toInternal\u0027." + "text": "Avoid using static access to class \u0027\\JBZoo\\CIReportConverter\\Formats\\Xml\u0027 in method \u0027toInternal\u0027." }, "locations": [ { @@ -1220,10 +1220,10 @@ "message": { "id": "default", "arguments": [ - "\\JBZoo\\CiReportConverter\\Helper", + "\\JBZoo\\CIReportConverter\\Helper", "getDetails" ], - "text": "Avoid using static access to class \u0027\\JBZoo\\CiReportConverter\\Helper\u0027 in method \u0027getDetails\u0027." + "text": "Avoid using static access to class \u0027\\JBZoo\\CIReportConverter\\Helper\u0027 in method \u0027getDetails\u0027." }, "locations": [ { @@ -1348,10 +1348,10 @@ "message": { "id": "default", "arguments": [ - "JBZoo\\CiReportConverter\\Formats\\GithubActions\\GithubActions", + "JBZoo\\CIReportConverter\\Formats\\GithubActions\\GithubActions", "__toString" ], - "text": "Avoid using static access to class \u0027JBZoo\\CiReportConverter\\Formats\\GithubActions\\GithubActions\u0027 in method \u0027__toString\u0027." + "text": "Avoid using static access to class \u0027JBZoo\\CIReportConverter\\Formats\\GithubActions\\GithubActions\u0027 in method \u0027__toString\u0027." }, "locations": [ { @@ -1425,10 +1425,10 @@ "message": { "id": "default", "arguments": [ - "\\JBZoo\\CiReportConverter\\Formats\\Xml", + "\\JBZoo\\CIReportConverter\\Formats\\Xml", "getDom" ], - "text": "Avoid using static access to class \u0027\\JBZoo\\CiReportConverter\\Formats\\Xml\u0027 in method \u0027getDom\u0027." + "text": "Avoid using static access to class \u0027\\JBZoo\\CIReportConverter\\Formats\\Xml\u0027 in method \u0027getDom\u0027." }, "locations": [ { @@ -1810,10 +1810,10 @@ "message": { "id": "default", "arguments": [ - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Helper", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Helper", "write" ], - "text": "Avoid using static access to class \u0027JBZoo\\CiReportConverter\\Formats\\TeamCity\\Helper\u0027 in method \u0027write\u0027." + "text": "Avoid using static access to class \u0027JBZoo\\CIReportConverter\\Formats\\TeamCity\\Helper\u0027 in method \u0027write\u0027." }, "locations": [ { @@ -1836,10 +1836,10 @@ "message": { "id": "default", "arguments": [ - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Helper", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Helper", "write" ], - "text": "Avoid using static access to class \u0027JBZoo\\CiReportConverter\\Formats\\TeamCity\\Helper\u0027 in method \u0027write\u0027." + "text": "Avoid using static access to class \u0027JBZoo\\CIReportConverter\\Formats\\TeamCity\\Helper\u0027 in method \u0027write\u0027." }, "locations": [ { diff --git a/tests/fixtures/origin/phpmetrics/phpmetrics.json b/tests/fixtures/origin/phpmetrics/phpmetrics.json index dfe734c..cfbcbf3 100644 --- a/tests/fixtures/origin/phpmetrics/phpmetrics.json +++ b/tests/fixtures/origin/phpmetrics/phpmetrics.json @@ -1135,8 +1135,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Markdown": { - "name": "JBZoo\\CiReportConverter\\Markdown", + "JBZoo\\CIReportConverter\\Markdown": { + "name": "JBZoo\\CIReportConverter\\Markdown", "interface": false, "abstract": false, "final": false, @@ -1208,7 +1208,7 @@ "ccn": 17, "ccnMethodMax": 6, "externals": [ - "JBZoo\\CiReportConverter\\Exception" + "JBZoo\\CIReportConverter\\Exception" ], "parents": [], "lcom": 3, @@ -1238,7 +1238,7 @@ "totalStructuralComplexity": 288, "totalDataComplexity": 11.86, "totalSystemComplexity": 299.86, - "package": "JBZoo\\CiReportConverter\\", + "package": "JBZoo\\CIReportConverter\\", "pageRank": 0, "afferentCoupling": 1, "efferentCoupling": 1, @@ -1246,26 +1246,26 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\": { - "name": "JBZoo\\CiReportConverter\\", + "JBZoo\\CIReportConverter\\": { + "name": "JBZoo\\CIReportConverter\\", "classes": [ - "JBZoo\\CiReportConverter\\Markdown", - "JBZoo\\CiReportConverter\\Helper", - "JBZoo\\CiReportConverter\\Exception" + "JBZoo\\CIReportConverter\\Markdown", + "JBZoo\\CIReportConverter\\Helper", + "JBZoo\\CIReportConverter\\Exception" ], "incoming_class_dependencies": [ - "JBZoo\\CiReportConverter\\Formats\\Exception", - "JBZoo\\CiReportConverter\\Converters\\PsalmJsonConverter", - "JBZoo\\CiReportConverter\\Converters\\Map", - "JBZoo\\CiReportConverter\\Converters\\CheckStyleConverter", - "JBZoo\\CiReportConverter\\Converters\\PhpMdJsonConverter", - "JBZoo\\CiReportConverter\\Converters\\Exception", - "JBZoo\\CiReportConverter\\Commands\\Exception" + "JBZoo\\CIReportConverter\\Formats\\Exception", + "JBZoo\\CIReportConverter\\Converters\\PsalmJsonConverter", + "JBZoo\\CIReportConverter\\Converters\\Map", + "JBZoo\\CIReportConverter\\Converters\\CheckStyleConverter", + "JBZoo\\CIReportConverter\\Converters\\PhpMdJsonConverter", + "JBZoo\\CIReportConverter\\Converters\\Exception", + "JBZoo\\CIReportConverter\\Commands\\Exception" ], "incoming_package_dependencies": [ - "JBZoo\\CiReportConverter\\Formats\\", - "JBZoo\\CiReportConverter\\Converters\\", - "JBZoo\\CiReportConverter\\Commands\\" + "JBZoo\\CIReportConverter\\Formats\\", + "JBZoo\\CIReportConverter\\Converters\\", + "JBZoo\\CIReportConverter\\Commands\\" ], "outgoing_class_dependencies": [ "JBZoo\\Utils\\Str", @@ -1285,8 +1285,8 @@ "violations": {}, "_type": "Hal\\Metric\\PackageMetric" }, - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\PhpDepend": { - "name": "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\PhpDepend", + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\PhpDepend": { + "name": "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\PhpDepend", "interface": false, "abstract": false, "final": false, @@ -1301,10 +1301,10 @@ "ccn": 1, "ccnMethodMax": 0, "externals": [ - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\AbstractMetricMap" + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\AbstractMetricMap" ], "parents": [ - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\AbstractMetricMap" + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\AbstractMetricMap" ], "lcom": 0, "length": 81, @@ -1333,7 +1333,7 @@ "totalStructuralComplexity": 0, "totalDataComplexity": 0, "totalSystemComplexity": 0, - "package": "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\", + "package": "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\", "pageRank": 0, "afferentCoupling": 1, "efferentCoupling": 1, @@ -1341,26 +1341,26 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\": { - "name": "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\", + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\": { + "name": "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\", "classes": [ - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\PhpDepend", - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\PhpLoc", - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\AbstractMetricMap", - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\PhpMetrics", - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\PhpUnitClover" + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\PhpDepend", + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\PhpLoc", + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\AbstractMetricMap", + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\PhpMetrics", + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\PhpUnitClover" ], "incoming_class_dependencies": [ - "JBZoo\\CiReportConverter\\Formats\\Metric\\Metrics", - "JBZoo\\CiReportConverter\\Converters\\PhpDependStatsTcConverter", - "JBZoo\\CiReportConverter\\Converters\\PhpLocStatsTcConverter", - "JBZoo\\CiReportConverter\\Converters\\AbstractStatsTcConverter", - "JBZoo\\CiReportConverter\\Converters\\PhpUnitCloverStatsTcConverter", - "JBZoo\\CiReportConverter\\Converters\\PhpMetricsStatsTcConverter" + "JBZoo\\CIReportConverter\\Formats\\Metric\\Metrics", + "JBZoo\\CIReportConverter\\Converters\\PhpDependStatsTcConverter", + "JBZoo\\CIReportConverter\\Converters\\PhpLocStatsTcConverter", + "JBZoo\\CIReportConverter\\Converters\\AbstractStatsTcConverter", + "JBZoo\\CIReportConverter\\Converters\\PhpUnitCloverStatsTcConverter", + "JBZoo\\CIReportConverter\\Converters\\PhpMetricsStatsTcConverter" ], "incoming_package_dependencies": [ - "JBZoo\\CiReportConverter\\Formats\\Metric\\", - "JBZoo\\CiReportConverter\\Converters\\" + "JBZoo\\CIReportConverter\\Formats\\Metric\\", + "JBZoo\\CIReportConverter\\Converters\\" ], "abstraction": 0.2, "instability": 0, @@ -1370,8 +1370,8 @@ "violations": {}, "_type": "Hal\\Metric\\PackageMetric" }, - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\PhpLoc": { - "name": "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\PhpLoc", + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\PhpLoc": { + "name": "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\PhpLoc", "interface": false, "abstract": false, "final": false, @@ -1386,10 +1386,10 @@ "ccn": 1, "ccnMethodMax": 0, "externals": [ - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\AbstractMetricMap" + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\AbstractMetricMap" ], "parents": [ - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\AbstractMetricMap" + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\AbstractMetricMap" ], "lcom": 0, "length": 109, @@ -1418,7 +1418,7 @@ "totalStructuralComplexity": 0, "totalDataComplexity": 0, "totalSystemComplexity": 0, - "package": "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\", + "package": "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\", "pageRank": 0, "afferentCoupling": 1, "efferentCoupling": 1, @@ -1426,8 +1426,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\AbstractMetricMap": { - "name": "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\AbstractMetricMap", + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\AbstractMetricMap": { + "name": "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\AbstractMetricMap", "interface": false, "abstract": true, "final": false, @@ -1481,7 +1481,7 @@ "totalStructuralComplexity": 0, "totalDataComplexity": 4, "totalSystemComplexity": 4, - "package": "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\", + "package": "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\", "pageRank": 0.01, "afferentCoupling": 6, "efferentCoupling": 0, @@ -1489,8 +1489,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\PhpMetrics": { - "name": "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\PhpMetrics", + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\PhpMetrics": { + "name": "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\PhpMetrics", "interface": false, "abstract": false, "final": false, @@ -1505,10 +1505,10 @@ "ccn": 1, "ccnMethodMax": 0, "externals": [ - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\AbstractMetricMap" + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\AbstractMetricMap" ], "parents": [ - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\AbstractMetricMap" + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\AbstractMetricMap" ], "lcom": 0, "length": 79, @@ -1537,7 +1537,7 @@ "totalStructuralComplexity": 0, "totalDataComplexity": 0, "totalSystemComplexity": 0, - "package": "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\", + "package": "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\", "pageRank": 0, "afferentCoupling": 1, "efferentCoupling": 1, @@ -1545,8 +1545,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\PhpUnitClover": { - "name": "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\PhpUnitClover", + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\PhpUnitClover": { + "name": "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\PhpUnitClover", "interface": false, "abstract": false, "final": false, @@ -1561,10 +1561,10 @@ "ccn": 1, "ccnMethodMax": 0, "externals": [ - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\AbstractMetricMap" + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\AbstractMetricMap" ], "parents": [ - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\AbstractMetricMap" + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\AbstractMetricMap" ], "lcom": 0, "length": 41, @@ -1593,7 +1593,7 @@ "totalStructuralComplexity": 0, "totalDataComplexity": 0, "totalSystemComplexity": 0, - "package": "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\", + "package": "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\", "pageRank": 0, "afferentCoupling": 1, "efferentCoupling": 1, @@ -1601,8 +1601,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\JUnit\\JUnitCase": { - "name": "JBZoo\\CiReportConverter\\Formats\\JUnit\\JUnitCase", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\JUnitCase": { + "name": "JBZoo\\CIReportConverter\\Formats\\JUnit\\JUnitCase", "interface": false, "abstract": false, "final": false, @@ -1698,22 +1698,22 @@ "ccn": 12, "ccnMethodMax": 8, "externals": [ - "JBZoo\\CiReportConverter\\Formats\\AbstractNode", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\JUnitCase", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\Failure", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\JUnitCase", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\Error", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\JUnitCase", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\Warning", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\SystemOut", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\SystemOut", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\JUnitCase", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\Skipped", + "JBZoo\\CIReportConverter\\Formats\\AbstractNode", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\JUnitCase", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\Failure", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\JUnitCase", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\Error", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\JUnitCase", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\Warning", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\SystemOut", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\SystemOut", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\JUnitCase", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\Skipped", "DOMNode", "DOMDocument" ], "parents": [ - "JBZoo\\CiReportConverter\\Formats\\AbstractNode" + "JBZoo\\CIReportConverter\\Formats\\AbstractNode" ], "lcom": 1, "length": 142, @@ -1742,7 +1742,7 @@ "totalStructuralComplexity": 300, "totalDataComplexity": 33.83, "totalSystemComplexity": 333.83, - "package": "JBZoo\\CiReportConverter\\Formats\\JUnit\\", + "package": "JBZoo\\CIReportConverter\\Formats\\JUnit\\", "pageRank": 0, "afferentCoupling": 3, "efferentCoupling": 10, @@ -1750,50 +1750,50 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\JUnit\\": { - "name": "JBZoo\\CiReportConverter\\Formats\\JUnit\\", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\": { + "name": "JBZoo\\CIReportConverter\\Formats\\JUnit\\", "classes": [ - "JBZoo\\CiReportConverter\\Formats\\JUnit\\JUnitCase", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\JUnitSuite", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\JUnit", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\Exception" + "JBZoo\\CIReportConverter\\Formats\\JUnit\\JUnitCase", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\JUnitSuite", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\JUnit", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\Exception" ], "outgoing_class_dependencies": [ - "JBZoo\\CiReportConverter\\Formats\\AbstractNode", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\Failure", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\Error", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\Warning", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\SystemOut", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\Skipped", + "JBZoo\\CIReportConverter\\Formats\\AbstractNode", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\Failure", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\Error", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\Warning", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\SystemOut", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\Skipped", "DOMNode", "DOMDocument", - "JBZoo\\CiReportConverter\\Formats\\Xml", - "JBZoo\\CiReportConverter\\Formats\\Exception" + "JBZoo\\CIReportConverter\\Formats\\Xml", + "JBZoo\\CIReportConverter\\Formats\\Exception" ], "outgoing_package_dependencies": [ - "JBZoo\\CiReportConverter\\Formats\\", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\", + "JBZoo\\CIReportConverter\\Formats\\", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\", "\\" ], "incoming_class_dependencies": [ - "JBZoo\\CiReportConverter\\Converters\\JUnitConverter" + "JBZoo\\CIReportConverter\\Converters\\JUnitConverter" ], "incoming_package_dependencies": [ - "JBZoo\\CiReportConverter\\Converters\\" + "JBZoo\\CIReportConverter\\Converters\\" ], "abstraction": 0, "instability": 0.9090909090909091, "dependent_instabilities": { - "JBZoo\\CiReportConverter\\Formats\\": 0.3, - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\": 0.6666666666666666 + "JBZoo\\CIReportConverter\\Formats\\": 0.3, + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\": 0.6666666666666666 }, "distance": 0.06428243465332252, "normalized_distance": 0.09090909090909094, "violations": {}, "_type": "Hal\\Metric\\PackageMetric" }, - "JBZoo\\CiReportConverter\\Formats\\JUnit\\JUnitSuite": { - "name": "JBZoo\\CiReportConverter\\Formats\\JUnit\\JUnitSuite", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\JUnitSuite": { + "name": "JBZoo\\CIReportConverter\\Formats\\JUnit\\JUnitSuite", "interface": false, "abstract": false, "final": false, @@ -1879,14 +1879,14 @@ "ccn": 18, "ccnMethodMax": 11, "externals": [ - "JBZoo\\CiReportConverter\\Formats\\AbstractNode", + "JBZoo\\CIReportConverter\\Formats\\AbstractNode", "DOMNode", "DOMDocument", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\JUnitCase", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\JUnitCase" + "JBZoo\\CIReportConverter\\Formats\\JUnit\\JUnitCase", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\JUnitCase" ], "parents": [ - "JBZoo\\CiReportConverter\\Formats\\AbstractNode" + "JBZoo\\CIReportConverter\\Formats\\AbstractNode" ], "lcom": 1, "length": 245, @@ -1915,7 +1915,7 @@ "totalStructuralComplexity": 1210, "totalDataComplexity": 13.58, "totalSystemComplexity": 1223.58, - "package": "JBZoo\\CiReportConverter\\Formats\\JUnit\\", + "package": "JBZoo\\CIReportConverter\\Formats\\JUnit\\", "pageRank": 0, "afferentCoupling": 1, "efferentCoupling": 4, @@ -1923,8 +1923,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\Warning": { - "name": "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\Warning", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\Warning": { + "name": "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\Warning", "interface": false, "abstract": false, "final": false, @@ -1939,10 +1939,10 @@ "ccn": 1, "ccnMethodMax": 0, "externals": [ - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\AbstractOutput" + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\AbstractOutput" ], "parents": [ - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\AbstractOutput" + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\AbstractOutput" ], "lcom": 0, "length": 1, @@ -1971,7 +1971,7 @@ "totalStructuralComplexity": 0, "totalDataComplexity": 0, "totalSystemComplexity": 0, - "package": "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\", + "package": "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\", "pageRank": 0, "afferentCoupling": 1, "efferentCoupling": 1, @@ -1979,21 +1979,21 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\": { - "name": "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\": { + "name": "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\", "classes": [ - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\Warning", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\Skipped", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\AbstractOutput", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\Error", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\Failure", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\SystemOut" + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\Warning", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\Skipped", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\AbstractOutput", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\Error", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\Failure", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\SystemOut" ], "incoming_class_dependencies": [ - "JBZoo\\CiReportConverter\\Formats\\JUnit\\JUnitCase" + "JBZoo\\CIReportConverter\\Formats\\JUnit\\JUnitCase" ], "incoming_package_dependencies": [ - "JBZoo\\CiReportConverter\\Formats\\JUnit\\" + "JBZoo\\CIReportConverter\\Formats\\JUnit\\" ], "outgoing_class_dependencies": [ "DOMNode", @@ -2010,8 +2010,8 @@ "violations": {}, "_type": "Hal\\Metric\\PackageMetric" }, - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\Skipped": { - "name": "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\Skipped", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\Skipped": { + "name": "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\Skipped", "interface": false, "abstract": false, "final": false, @@ -2026,10 +2026,10 @@ "ccn": 1, "ccnMethodMax": 0, "externals": [ - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\AbstractOutput" + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\AbstractOutput" ], "parents": [ - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\AbstractOutput" + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\AbstractOutput" ], "lcom": 0, "length": 1, @@ -2058,7 +2058,7 @@ "totalStructuralComplexity": 0, "totalDataComplexity": 0, "totalSystemComplexity": 0, - "package": "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\", + "package": "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\", "pageRank": 0, "afferentCoupling": 1, "efferentCoupling": 1, @@ -2066,8 +2066,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\AbstractOutput": { - "name": "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\AbstractOutput", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\AbstractOutput": { + "name": "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\AbstractOutput", "interface": false, "abstract": true, "final": false, @@ -2138,7 +2138,7 @@ "totalStructuralComplexity": 16, "totalDataComplexity": 6, "totalSystemComplexity": 22, - "package": "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\", + "package": "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\", "pageRank": 0.01, "afferentCoupling": 5, "efferentCoupling": 2, @@ -2146,8 +2146,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\Error": { - "name": "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\Error", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\Error": { + "name": "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\Error", "interface": false, "abstract": false, "final": false, @@ -2162,10 +2162,10 @@ "ccn": 1, "ccnMethodMax": 0, "externals": [ - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\AbstractOutput" + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\AbstractOutput" ], "parents": [ - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\AbstractOutput" + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\AbstractOutput" ], "lcom": 0, "length": 1, @@ -2194,7 +2194,7 @@ "totalStructuralComplexity": 0, "totalDataComplexity": 0, "totalSystemComplexity": 0, - "package": "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\", + "package": "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\", "pageRank": 0, "afferentCoupling": 1, "efferentCoupling": 1, @@ -2202,8 +2202,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\Failure": { - "name": "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\Failure", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\Failure": { + "name": "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\Failure", "interface": false, "abstract": false, "final": false, @@ -2218,10 +2218,10 @@ "ccn": 1, "ccnMethodMax": 0, "externals": [ - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\AbstractOutput" + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\AbstractOutput" ], "parents": [ - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\AbstractOutput" + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\AbstractOutput" ], "lcom": 0, "length": 1, @@ -2250,7 +2250,7 @@ "totalStructuralComplexity": 0, "totalDataComplexity": 0, "totalSystemComplexity": 0, - "package": "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\", + "package": "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\", "pageRank": 0, "afferentCoupling": 1, "efferentCoupling": 1, @@ -2258,8 +2258,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\SystemOut": { - "name": "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\SystemOut", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\SystemOut": { + "name": "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\SystemOut", "interface": false, "abstract": false, "final": false, @@ -2274,10 +2274,10 @@ "ccn": 1, "ccnMethodMax": 0, "externals": [ - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\AbstractOutput" + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\AbstractOutput" ], "parents": [ - "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\AbstractOutput" + "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\AbstractOutput" ], "lcom": 0, "length": 1, @@ -2306,7 +2306,7 @@ "totalStructuralComplexity": 0, "totalDataComplexity": 0, "totalSystemComplexity": 0, - "package": "JBZoo\\CiReportConverter\\Formats\\JUnit\\CaseOutput\\", + "package": "JBZoo\\CIReportConverter\\Formats\\JUnit\\CaseOutput\\", "pageRank": 0, "afferentCoupling": 1, "efferentCoupling": 1, @@ -2314,8 +2314,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\JUnit\\JUnit": { - "name": "JBZoo\\CiReportConverter\\Formats\\JUnit\\JUnit", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\JUnit": { + "name": "JBZoo\\CIReportConverter\\Formats\\JUnit\\JUnit", "interface": false, "abstract": false, "final": false, @@ -2352,10 +2352,10 @@ "ccn": 2, "ccnMethodMax": 2, "externals": [ - "JBZoo\\CiReportConverter\\Formats\\JUnit\\JUnitSuite", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\JUnitSuite", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\JUnitSuite", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\JUnitSuite", "DOMDocument", - "JBZoo\\CiReportConverter\\Formats\\Xml" + "JBZoo\\CIReportConverter\\Formats\\Xml" ], "parents": [], "lcom": 1, @@ -2385,7 +2385,7 @@ "totalStructuralComplexity": 108, "totalDataComplexity": 1.43, "totalSystemComplexity": 109.43, - "package": "JBZoo\\CiReportConverter\\Formats\\JUnit\\", + "package": "JBZoo\\CIReportConverter\\Formats\\JUnit\\", "pageRank": 0, "afferentCoupling": 1, "efferentCoupling": 3, @@ -2393,8 +2393,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\JUnit\\Exception": { - "name": "JBZoo\\CiReportConverter\\Formats\\JUnit\\Exception", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\Exception": { + "name": "JBZoo\\CIReportConverter\\Formats\\JUnit\\Exception", "interface": false, "abstract": false, "final": false, @@ -2409,10 +2409,10 @@ "ccn": 1, "ccnMethodMax": 0, "externals": [ - "JBZoo\\CiReportConverter\\Formats\\Exception" + "JBZoo\\CIReportConverter\\Formats\\Exception" ], "parents": [ - "JBZoo\\CiReportConverter\\Formats\\Exception" + "JBZoo\\CIReportConverter\\Formats\\Exception" ], "lcom": 0, "length": 0, @@ -2441,7 +2441,7 @@ "totalStructuralComplexity": 0, "totalDataComplexity": 0, "totalSystemComplexity": 0, - "package": "JBZoo\\CiReportConverter\\Formats\\JUnit\\", + "package": "JBZoo\\CIReportConverter\\Formats\\JUnit\\", "pageRank": 0, "afferentCoupling": 0, "efferentCoupling": 1, @@ -2449,8 +2449,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceSuite": { - "name": "JBZoo\\CiReportConverter\\Formats\\Source\\SourceSuite", + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceSuite": { + "name": "JBZoo\\CIReportConverter\\Formats\\Source\\SourceSuite", "interface": false, "abstract": false, "final": false, @@ -2560,12 +2560,12 @@ "ccn": 28, "ccnMethodMax": 5, "externals": [ - "JBZoo\\CiReportConverter\\Formats\\AbstractNode", - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceCase", - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceCase" + "JBZoo\\CIReportConverter\\Formats\\AbstractNode", + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceCase", + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceCase" ], "parents": [ - "JBZoo\\CiReportConverter\\Formats\\AbstractNode" + "JBZoo\\CIReportConverter\\Formats\\AbstractNode" ], "lcom": 1, "length": 227, @@ -2594,7 +2594,7 @@ "totalStructuralComplexity": 2366, "totalDataComplexity": 15.21, "totalSystemComplexity": 2381.21, - "package": "JBZoo\\CiReportConverter\\Formats\\Source\\", + "package": "JBZoo\\CIReportConverter\\Formats\\Source\\", "pageRank": 0.01, "afferentCoupling": 5, "efferentCoupling": 2, @@ -2602,39 +2602,39 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\Source\\": { - "name": "JBZoo\\CiReportConverter\\Formats\\Source\\", + "JBZoo\\CIReportConverter\\Formats\\Source\\": { + "name": "JBZoo\\CIReportConverter\\Formats\\Source\\", "classes": [ - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceSuite", - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceCaseOutput", - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceCase", - "JBZoo\\CiReportConverter\\Formats\\Source\\Exception" + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceSuite", + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceCaseOutput", + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceCase", + "JBZoo\\CIReportConverter\\Formats\\Source\\Exception" ], "outgoing_class_dependencies": [ - "JBZoo\\CiReportConverter\\Formats\\AbstractNode", + "JBZoo\\CIReportConverter\\Formats\\AbstractNode", "JBZoo\\Data\\Data", - "JBZoo\\CiReportConverter\\Formats\\Exception" + "JBZoo\\CIReportConverter\\Formats\\Exception" ], "outgoing_package_dependencies": [ - "JBZoo\\CiReportConverter\\Formats\\", + "JBZoo\\CIReportConverter\\Formats\\", "JBZoo\\Data\\" ], "incoming_class_dependencies": [ - "JBZoo\\CiReportConverter\\Formats\\AbstractNode", - "JBZoo\\CiReportConverter\\Converters\\PsalmJsonConverter", - "JBZoo\\CiReportConverter\\Converters\\CheckStyleConverter", - "JBZoo\\CiReportConverter\\Converters\\JUnitConverter", - "JBZoo\\CiReportConverter\\Converters\\PhpMdJsonConverter", - "JBZoo\\CiReportConverter\\Converters\\AbstractConverter" + "JBZoo\\CIReportConverter\\Formats\\AbstractNode", + "JBZoo\\CIReportConverter\\Converters\\PsalmJsonConverter", + "JBZoo\\CIReportConverter\\Converters\\CheckStyleConverter", + "JBZoo\\CIReportConverter\\Converters\\JUnitConverter", + "JBZoo\\CIReportConverter\\Converters\\PhpMdJsonConverter", + "JBZoo\\CIReportConverter\\Converters\\AbstractConverter" ], "incoming_package_dependencies": [ - "JBZoo\\CiReportConverter\\Formats\\", - "JBZoo\\CiReportConverter\\Converters\\" + "JBZoo\\CIReportConverter\\Formats\\", + "JBZoo\\CIReportConverter\\Converters\\" ], "abstraction": 0, "instability": 0.3333333333333333, "dependent_instabilities": { - "JBZoo\\CiReportConverter\\Formats\\": 0.3, + "JBZoo\\CIReportConverter\\Formats\\": 0.3, "JBZoo\\Data\\": 0.4117647058823529 }, "distance": 0.4714045207910317, @@ -2642,8 +2642,8 @@ "violations": {}, "_type": "Hal\\Metric\\PackageMetric" }, - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceCaseOutput": { - "name": "JBZoo\\CiReportConverter\\Formats\\Source\\SourceCaseOutput", + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceCaseOutput": { + "name": "JBZoo\\CIReportConverter\\Formats\\Source\\SourceCaseOutput", "interface": false, "abstract": false, "final": false, @@ -2710,7 +2710,7 @@ "totalStructuralComplexity": 0, "totalDataComplexity": 9, "totalSystemComplexity": 9, - "package": "JBZoo\\CiReportConverter\\Formats\\Source\\", + "package": "JBZoo\\CIReportConverter\\Formats\\Source\\", "pageRank": 0, "afferentCoupling": 4, "efferentCoupling": 1, @@ -2718,8 +2718,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceCase": { - "name": "JBZoo\\CiReportConverter\\Formats\\Source\\SourceCase", + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceCase": { + "name": "JBZoo\\CIReportConverter\\Formats\\Source\\SourceCase", "interface": false, "abstract": false, "final": false, @@ -2777,10 +2777,10 @@ "ccn": 3, "ccnMethodMax": 2, "externals": [ - "JBZoo\\CiReportConverter\\Formats\\AbstractNode" + "JBZoo\\CIReportConverter\\Formats\\AbstractNode" ], "parents": [ - "JBZoo\\CiReportConverter\\Formats\\AbstractNode" + "JBZoo\\CIReportConverter\\Formats\\AbstractNode" ], "lcom": 1, "length": 54, @@ -2809,7 +2809,7 @@ "totalStructuralComplexity": 0, "totalDataComplexity": 37, "totalSystemComplexity": 37, - "package": "JBZoo\\CiReportConverter\\Formats\\Source\\", + "package": "JBZoo\\CIReportConverter\\Formats\\Source\\", "pageRank": 0.01, "afferentCoupling": 1, "efferentCoupling": 1, @@ -2817,8 +2817,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\Source\\Exception": { - "name": "JBZoo\\CiReportConverter\\Formats\\Source\\Exception", + "JBZoo\\CIReportConverter\\Formats\\Source\\Exception": { + "name": "JBZoo\\CIReportConverter\\Formats\\Source\\Exception", "interface": false, "abstract": false, "final": false, @@ -2833,10 +2833,10 @@ "ccn": 1, "ccnMethodMax": 0, "externals": [ - "JBZoo\\CiReportConverter\\Formats\\Exception" + "JBZoo\\CIReportConverter\\Formats\\Exception" ], "parents": [ - "JBZoo\\CiReportConverter\\Formats\\Exception" + "JBZoo\\CIReportConverter\\Formats\\Exception" ], "lcom": 0, "length": 0, @@ -2865,7 +2865,7 @@ "totalStructuralComplexity": 0, "totalDataComplexity": 0, "totalSystemComplexity": 0, - "package": "JBZoo\\CiReportConverter\\Formats\\Source\\", + "package": "JBZoo\\CIReportConverter\\Formats\\Source\\", "pageRank": 0.01, "afferentCoupling": 1, "efferentCoupling": 1, @@ -2873,8 +2873,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\AbstractNode": { - "name": "JBZoo\\CiReportConverter\\Formats\\AbstractNode", + "JBZoo\\CIReportConverter\\Formats\\AbstractNode": { + "name": "JBZoo\\CIReportConverter\\Formats\\AbstractNode", "interface": false, "abstract": false, "final": false, @@ -2934,9 +2934,9 @@ "externals": [ "JBZoo\\Data\\Data", "JBZoo\\Utils\\Str", - "JBZoo\\CiReportConverter\\Formats\\Source\\Exception", - "JBZoo\\CiReportConverter\\Formats\\Source\\Exception", - "JBZoo\\CiReportConverter\\Formats\\Source\\Exception" + "JBZoo\\CIReportConverter\\Formats\\Source\\Exception", + "JBZoo\\CIReportConverter\\Formats\\Source\\Exception", + "JBZoo\\CIReportConverter\\Formats\\Source\\Exception" ], "parents": [], "lcom": 1, @@ -2966,7 +2966,7 @@ "totalStructuralComplexity": 216, "totalDataComplexity": 5.29, "totalSystemComplexity": 221.29, - "package": "JBZoo\\CiReportConverter\\Formats\\", + "package": "JBZoo\\CIReportConverter\\Formats\\", "pageRank": 0.02, "afferentCoupling": 6, "efferentCoupling": 3, @@ -2974,66 +2974,66 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\": { - "name": "JBZoo\\CiReportConverter\\Formats\\", + "JBZoo\\CIReportConverter\\Formats\\": { + "name": "JBZoo\\CIReportConverter\\Formats\\", "classes": [ - "JBZoo\\CiReportConverter\\Formats\\AbstractNode", - "JBZoo\\CiReportConverter\\Formats\\Xml", - "JBZoo\\CiReportConverter\\Formats\\Exception" + "JBZoo\\CIReportConverter\\Formats\\AbstractNode", + "JBZoo\\CIReportConverter\\Formats\\Xml", + "JBZoo\\CIReportConverter\\Formats\\Exception" ], "incoming_class_dependencies": [ - "JBZoo\\CiReportConverter\\Formats\\JUnit\\JUnitCase", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\JUnitSuite", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\JUnit", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\Exception", - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceSuite", - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceCase", - "JBZoo\\CiReportConverter\\Formats\\Source\\Exception", - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Exception", - "JBZoo\\CiReportConverter\\Formats\\Metric\\Metric", - "JBZoo\\CiReportConverter\\Formats\\Metric\\Metrics", - "JBZoo\\CiReportConverter\\Converters\\PhpDependStatsTcConverter", - "JBZoo\\CiReportConverter\\Converters\\CheckStyleConverter", - "JBZoo\\CiReportConverter\\Converters\\JUnitConverter", - "JBZoo\\CiReportConverter\\Converters\\PhpMetricsStatsTcConverter" + "JBZoo\\CIReportConverter\\Formats\\JUnit\\JUnitCase", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\JUnitSuite", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\JUnit", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\Exception", + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceSuite", + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceCase", + "JBZoo\\CIReportConverter\\Formats\\Source\\Exception", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Exception", + "JBZoo\\CIReportConverter\\Formats\\Metric\\Metric", + "JBZoo\\CIReportConverter\\Formats\\Metric\\Metrics", + "JBZoo\\CIReportConverter\\Converters\\PhpDependStatsTcConverter", + "JBZoo\\CIReportConverter\\Converters\\CheckStyleConverter", + "JBZoo\\CIReportConverter\\Converters\\JUnitConverter", + "JBZoo\\CIReportConverter\\Converters\\PhpMetricsStatsTcConverter" ], "incoming_package_dependencies": [ - "JBZoo\\CiReportConverter\\Formats\\JUnit\\", - "JBZoo\\CiReportConverter\\Formats\\Source\\", - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\", - "JBZoo\\CiReportConverter\\Formats\\Metric\\", - "JBZoo\\CiReportConverter\\Converters\\" + "JBZoo\\CIReportConverter\\Formats\\JUnit\\", + "JBZoo\\CIReportConverter\\Formats\\Source\\", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\", + "JBZoo\\CIReportConverter\\Formats\\Metric\\", + "JBZoo\\CIReportConverter\\Converters\\" ], "outgoing_class_dependencies": [ "JBZoo\\Data\\Data", "JBZoo\\Utils\\Str", - "JBZoo\\CiReportConverter\\Formats\\Source\\Exception", + "JBZoo\\CIReportConverter\\Formats\\Source\\Exception", "DOMDocument", "DOMNode", - "JBZoo\\CiReportConverter\\Exception" + "JBZoo\\CIReportConverter\\Exception" ], "outgoing_package_dependencies": [ "JBZoo\\Data\\", "JBZoo\\Utils\\", - "JBZoo\\CiReportConverter\\Formats\\Source\\", + "JBZoo\\CIReportConverter\\Formats\\Source\\", "\\", - "JBZoo\\CiReportConverter\\" + "JBZoo\\CIReportConverter\\" ], "abstraction": 0, "instability": 0.3, "dependent_instabilities": { "JBZoo\\Data\\": 0.4117647058823529, "JBZoo\\Utils\\": 0.5454545454545454, - "JBZoo\\CiReportConverter\\Formats\\Source\\": 0.3333333333333333, - "JBZoo\\CiReportConverter\\": 0.2222222222222222 + "JBZoo\\CIReportConverter\\Formats\\Source\\": 0.3333333333333333, + "JBZoo\\CIReportConverter\\": 0.2222222222222222 }, "distance": 0.4949747468305832, "normalized_distance": 0.7, "violations": {}, "_type": "Hal\\Metric\\PackageMetric" }, - "JBZoo\\CiReportConverter\\Formats\\Xml": { - "name": "JBZoo\\CiReportConverter\\Formats\\Xml", + "JBZoo\\CIReportConverter\\Formats\\Xml": { + "name": "JBZoo\\CIReportConverter\\Formats\\Xml", "interface": false, "abstract": false, "final": false, @@ -3103,7 +3103,7 @@ "totalStructuralComplexity": 300, "totalDataComplexity": 1.82, "totalSystemComplexity": 301.82, - "package": "JBZoo\\CiReportConverter\\Formats\\", + "package": "JBZoo\\CIReportConverter\\Formats\\", "pageRank": 0, "afferentCoupling": 5, "efferentCoupling": 2, @@ -3111,8 +3111,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\TeamCity": { - "name": "JBZoo\\CiReportConverter\\Formats\\TeamCity\\TeamCity", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\TeamCity": { + "name": "JBZoo\\CIReportConverter\\Formats\\TeamCity\\TeamCity", "interface": false, "abstract": false, "final": false, @@ -3210,12 +3210,12 @@ "ccn": 24, "ccnMethodMax": 8, "externals": [ - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\AbstractWriter", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\AbstractWriter", "JBZoo\\Utils\\Sys", - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\AbstractWriter", - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Helper", - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Helper", - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Exception" + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\AbstractWriter", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Helper", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Helper", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Exception" ], "parents": [], "lcom": 1, @@ -3245,7 +3245,7 @@ "totalStructuralComplexity": 192, "totalDataComplexity": 10.4, "totalSystemComplexity": 202.4, - "package": "JBZoo\\CiReportConverter\\Formats\\TeamCity\\", + "package": "JBZoo\\CIReportConverter\\Formats\\TeamCity\\", "pageRank": 0, "afferentCoupling": 1, "efferentCoupling": 4, @@ -3253,47 +3253,47 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\": { - "name": "JBZoo\\CiReportConverter\\Formats\\TeamCity\\", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\": { + "name": "JBZoo\\CIReportConverter\\Formats\\TeamCity\\", "classes": [ - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\TeamCity", - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Helper", - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Exception" + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\TeamCity", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Helper", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Exception" ], "outgoing_class_dependencies": [ - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\AbstractWriter", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\AbstractWriter", "JBZoo\\Utils\\Sys", "DateTime", - "JBZoo\\CiReportConverter\\Formats\\Exception" + "JBZoo\\CIReportConverter\\Formats\\Exception" ], "outgoing_package_dependencies": [ - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\", "JBZoo\\Utils\\", "\\", - "JBZoo\\CiReportConverter\\Formats\\" + "JBZoo\\CIReportConverter\\Formats\\" ], "incoming_class_dependencies": [ - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\Exception", - "JBZoo\\CiReportConverter\\Converters\\AbstractStatsTcConverter" + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\Exception", + "JBZoo\\CIReportConverter\\Converters\\AbstractStatsTcConverter" ], "incoming_package_dependencies": [ - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\", - "JBZoo\\CiReportConverter\\Converters\\" + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\", + "JBZoo\\CIReportConverter\\Converters\\" ], "abstraction": 0, "instability": 0.6666666666666666, "dependent_instabilities": { - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\": 0.6, + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\": 0.6, "JBZoo\\Utils\\": 0.5454545454545454, - "JBZoo\\CiReportConverter\\Formats\\": 0.3 + "JBZoo\\CIReportConverter\\Formats\\": 0.3 }, "distance": 0.23570226039551584, "normalized_distance": 0.33333333333333337, "violations": {}, "_type": "Hal\\Metric\\PackageMetric" }, - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\Stdout": { - "name": "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\Stdout", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\Stdout": { + "name": "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\Stdout", "interface": false, "abstract": false, "final": false, @@ -3316,7 +3316,7 @@ "ccn": 2, "ccnMethodMax": 2, "externals": [ - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\AbstractWriter", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\AbstractWriter", "JBZoo\\Utils\\Cli" ], "parents": [], @@ -3347,7 +3347,7 @@ "totalStructuralComplexity": 1, "totalDataComplexity": 0.5, "totalSystemComplexity": 1.5, - "package": "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\", + "package": "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\", "pageRank": 0, "afferentCoupling": 0, "efferentCoupling": 2, @@ -3355,47 +3355,47 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\": { - "name": "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\": { + "name": "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\", "classes": [ - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\Stdout", - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\CustomCallback", - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\Buffer", - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\SymfonyConsole", - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\AbstractWriter", - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\Exception" + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\Stdout", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\CustomCallback", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\Buffer", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\SymfonyConsole", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\AbstractWriter", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\Exception" ], "incoming_class_dependencies": [ - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\TeamCity", - "JBZoo\\CiReportConverter\\Converters\\AbstractStatsTcConverter" + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\TeamCity", + "JBZoo\\CIReportConverter\\Converters\\AbstractStatsTcConverter" ], "incoming_package_dependencies": [ - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\", - "JBZoo\\CiReportConverter\\Converters\\" + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\", + "JBZoo\\CIReportConverter\\Converters\\" ], "outgoing_class_dependencies": [ "JBZoo\\Utils\\Cli", "Symfony\\Component\\Console\\Output\\OutputInterface", - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Exception" + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Exception" ], "outgoing_package_dependencies": [ "JBZoo\\Utils\\", "Symfony\\Component\\Console\\Output\\", - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\" + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\" ], "abstraction": 0.16666666666666666, "instability": 0.6, "dependent_instabilities": { "JBZoo\\Utils\\": 0.5454545454545454, - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\": 0.6666666666666666 + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\": 0.6666666666666666 }, "distance": 0.16499158227686112, "normalized_distance": 0.2333333333333334, "violations": {}, "_type": "Hal\\Metric\\PackageMetric" }, - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\CustomCallback": { - "name": "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\CustomCallback", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\CustomCallback": { + "name": "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\CustomCallback", "interface": false, "abstract": false, "final": false, @@ -3423,8 +3423,8 @@ "ccn": 2, "ccnMethodMax": 2, "externals": [ - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\AbstractWriter", - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\Exception" + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\AbstractWriter", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\Exception" ], "parents": [], "lcom": 1, @@ -3454,7 +3454,7 @@ "totalStructuralComplexity": 0, "totalDataComplexity": 2, "totalSystemComplexity": 2, - "package": "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\", + "package": "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\", "pageRank": 0, "afferentCoupling": 0, "efferentCoupling": 2, @@ -3462,8 +3462,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\Buffer": { - "name": "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\Buffer", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\Buffer": { + "name": "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\Buffer", "interface": false, "abstract": false, "final": false, @@ -3491,7 +3491,7 @@ "ccn": 1, "ccnMethodMax": 1, "externals": [ - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\AbstractWriter" + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\AbstractWriter" ], "parents": [], "lcom": 1, @@ -3521,7 +3521,7 @@ "totalStructuralComplexity": 0, "totalDataComplexity": 3, "totalSystemComplexity": 3, - "package": "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\", + "package": "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\", "pageRank": 0, "afferentCoupling": 1, "efferentCoupling": 1, @@ -3529,8 +3529,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\SymfonyConsole": { - "name": "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\SymfonyConsole", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\SymfonyConsole": { + "name": "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\SymfonyConsole", "interface": false, "abstract": false, "final": false, @@ -3558,8 +3558,8 @@ "ccn": 3, "ccnMethodMax": 3, "externals": [ - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\AbstractWriter", - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\Exception", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\AbstractWriter", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\Exception", "Symfony\\Component\\Console\\Output\\OutputInterface" ], "parents": [], @@ -3590,7 +3590,7 @@ "totalStructuralComplexity": 2, "totalDataComplexity": 1, "totalSystemComplexity": 3, - "package": "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\", + "package": "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\", "pageRank": 0, "afferentCoupling": 0, "efferentCoupling": 3, @@ -3598,8 +3598,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\AbstractWriter": { - "name": "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\AbstractWriter", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\AbstractWriter": { + "name": "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\AbstractWriter", "interface": true, "abstract": true, "methods": [ @@ -3623,7 +3623,7 @@ "externals": [], "parents": [], "kanDefect": 0.15, - "package": "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\", + "package": "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\", "pageRank": 0.01, "afferentCoupling": 5, "efferentCoupling": 0, @@ -3631,8 +3631,8 @@ "violations": {}, "_type": "Hal\\Metric\\InterfaceMetric" }, - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\Exception": { - "name": "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\Exception", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\Exception": { + "name": "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\Exception", "interface": false, "abstract": false, "final": false, @@ -3647,10 +3647,10 @@ "ccn": 1, "ccnMethodMax": 0, "externals": [ - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Exception" + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Exception" ], "parents": [ - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Exception" + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Exception" ], "lcom": 0, "length": 0, @@ -3679,7 +3679,7 @@ "totalStructuralComplexity": 0, "totalDataComplexity": 0, "totalSystemComplexity": 0, - "package": "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\", + "package": "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\", "pageRank": 0, "afferentCoupling": 2, "efferentCoupling": 1, @@ -3687,8 +3687,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Helper": { - "name": "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Helper", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Helper": { + "name": "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Helper", "interface": false, "abstract": false, "final": false, @@ -3732,9 +3732,9 @@ "ccn": 8, "ccnMethodMax": 4, "externals": [ - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Exception", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Exception", "DateTime", - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Exception" + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Exception" ], "parents": [], "lcom": 4, @@ -3764,7 +3764,7 @@ "totalStructuralComplexity": 16, "totalDataComplexity": 9.67, "totalSystemComplexity": 25.67, - "package": "JBZoo\\CiReportConverter\\Formats\\TeamCity\\", + "package": "JBZoo\\CIReportConverter\\Formats\\TeamCity\\", "pageRank": 0, "afferentCoupling": 1, "efferentCoupling": 2, @@ -3772,8 +3772,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Exception": { - "name": "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Exception", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Exception": { + "name": "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Exception", "interface": false, "abstract": false, "final": false, @@ -3788,10 +3788,10 @@ "ccn": 1, "ccnMethodMax": 0, "externals": [ - "JBZoo\\CiReportConverter\\Formats\\Exception" + "JBZoo\\CIReportConverter\\Formats\\Exception" ], "parents": [ - "JBZoo\\CiReportConverter\\Formats\\Exception" + "JBZoo\\CIReportConverter\\Formats\\Exception" ], "lcom": 0, "length": 0, @@ -3820,7 +3820,7 @@ "totalStructuralComplexity": 0, "totalDataComplexity": 0, "totalSystemComplexity": 0, - "package": "JBZoo\\CiReportConverter\\Formats\\TeamCity\\", + "package": "JBZoo\\CIReportConverter\\Formats\\TeamCity\\", "pageRank": 0.01, "afferentCoupling": 3, "efferentCoupling": 1, @@ -3828,8 +3828,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\Metric\\Metric": { - "name": "JBZoo\\CiReportConverter\\Formats\\Metric\\Metric", + "JBZoo\\CIReportConverter\\Formats\\Metric\\Metric": { + "name": "JBZoo\\CIReportConverter\\Formats\\Metric\\Metric", "interface": false, "abstract": false, "final": false, @@ -3844,10 +3844,10 @@ "ccn": 1, "ccnMethodMax": 0, "externals": [ - "JBZoo\\CiReportConverter\\Formats\\AbstractNode" + "JBZoo\\CIReportConverter\\Formats\\AbstractNode" ], "parents": [ - "JBZoo\\CiReportConverter\\Formats\\AbstractNode" + "JBZoo\\CIReportConverter\\Formats\\AbstractNode" ], "lcom": 0, "length": 8, @@ -3876,7 +3876,7 @@ "totalStructuralComplexity": 0, "totalDataComplexity": 0, "totalSystemComplexity": 0, - "package": "JBZoo\\CiReportConverter\\Formats\\Metric\\", + "package": "JBZoo\\CIReportConverter\\Formats\\Metric\\", "pageRank": 0, "afferentCoupling": 1, "efferentCoupling": 1, @@ -3884,43 +3884,43 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\Metric\\": { - "name": "JBZoo\\CiReportConverter\\Formats\\Metric\\", + "JBZoo\\CIReportConverter\\Formats\\Metric\\": { + "name": "JBZoo\\CIReportConverter\\Formats\\Metric\\", "classes": [ - "JBZoo\\CiReportConverter\\Formats\\Metric\\Metric", - "JBZoo\\CiReportConverter\\Formats\\Metric\\Metrics" + "JBZoo\\CIReportConverter\\Formats\\Metric\\Metric", + "JBZoo\\CIReportConverter\\Formats\\Metric\\Metrics" ], "outgoing_class_dependencies": [ - "JBZoo\\CiReportConverter\\Formats\\AbstractNode", - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\AbstractMetricMap" + "JBZoo\\CIReportConverter\\Formats\\AbstractNode", + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\AbstractMetricMap" ], "outgoing_package_dependencies": [ - "JBZoo\\CiReportConverter\\Formats\\", - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\" + "JBZoo\\CIReportConverter\\Formats\\", + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\" ], "incoming_class_dependencies": [ - "JBZoo\\CiReportConverter\\Converters\\PhpDependStatsTcConverter", - "JBZoo\\CiReportConverter\\Converters\\PhpLocStatsTcConverter", - "JBZoo\\CiReportConverter\\Converters\\AbstractStatsTcConverter", - "JBZoo\\CiReportConverter\\Converters\\PhpUnitCloverStatsTcConverter", - "JBZoo\\CiReportConverter\\Converters\\PhpMetricsStatsTcConverter" + "JBZoo\\CIReportConverter\\Converters\\PhpDependStatsTcConverter", + "JBZoo\\CIReportConverter\\Converters\\PhpLocStatsTcConverter", + "JBZoo\\CIReportConverter\\Converters\\AbstractStatsTcConverter", + "JBZoo\\CIReportConverter\\Converters\\PhpUnitCloverStatsTcConverter", + "JBZoo\\CIReportConverter\\Converters\\PhpMetricsStatsTcConverter" ], "incoming_package_dependencies": [ - "JBZoo\\CiReportConverter\\Converters\\" + "JBZoo\\CIReportConverter\\Converters\\" ], "abstraction": 0, "instability": 0.2857142857142857, "dependent_instabilities": { - "JBZoo\\CiReportConverter\\Formats\\": 0.3, - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\": 0 + "JBZoo\\CIReportConverter\\Formats\\": 0.3, + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\": 0 }, "distance": 0.5050762722761053, "normalized_distance": 0.7142857142857143, "violations": {}, "_type": "Hal\\Metric\\PackageMetric" }, - "JBZoo\\CiReportConverter\\Formats\\Metric\\Metrics": { - "name": "JBZoo\\CiReportConverter\\Formats\\Metric\\Metrics", + "JBZoo\\CIReportConverter\\Formats\\Metric\\Metrics": { + "name": "JBZoo\\CIReportConverter\\Formats\\Metric\\Metrics", "interface": false, "abstract": false, "final": false, @@ -3962,12 +3962,12 @@ "ccn": 10, "ccnMethodMax": 6, "externals": [ - "JBZoo\\CiReportConverter\\Formats\\AbstractNode", - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\AbstractMetricMap", - "JBZoo\\CiReportConverter\\Formats\\Metric\\Metric" + "JBZoo\\CIReportConverter\\Formats\\AbstractNode", + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\AbstractMetricMap", + "JBZoo\\CIReportConverter\\Formats\\Metric\\Metric" ], "parents": [ - "JBZoo\\CiReportConverter\\Formats\\AbstractNode" + "JBZoo\\CIReportConverter\\Formats\\AbstractNode" ], "lcom": 1, "length": 104, @@ -3996,7 +3996,7 @@ "totalStructuralComplexity": 64, "totalDataComplexity": 5.4, "totalSystemComplexity": 69.4, - "package": "JBZoo\\CiReportConverter\\Formats\\Metric\\", + "package": "JBZoo\\CIReportConverter\\Formats\\Metric\\", "pageRank": 0.01, "afferentCoupling": 5, "efferentCoupling": 3, @@ -4004,8 +4004,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Formats\\Exception": { - "name": "JBZoo\\CiReportConverter\\Formats\\Exception", + "JBZoo\\CIReportConverter\\Formats\\Exception": { + "name": "JBZoo\\CIReportConverter\\Formats\\Exception", "interface": false, "abstract": false, "final": false, @@ -4020,10 +4020,10 @@ "ccn": 1, "ccnMethodMax": 0, "externals": [ - "JBZoo\\CiReportConverter\\Exception" + "JBZoo\\CIReportConverter\\Exception" ], "parents": [ - "JBZoo\\CiReportConverter\\Exception" + "JBZoo\\CIReportConverter\\Exception" ], "lcom": 0, "length": 0, @@ -4052,7 +4052,7 @@ "totalStructuralComplexity": 0, "totalDataComplexity": 0, "totalSystemComplexity": 0, - "package": "JBZoo\\CiReportConverter\\Formats\\", + "package": "JBZoo\\CIReportConverter\\Formats\\", "pageRank": 0.03, "afferentCoupling": 3, "efferentCoupling": 1, @@ -4060,8 +4060,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Converters\\Factory": { - "name": "JBZoo\\CiReportConverter\\Converters\\Factory", + "JBZoo\\CIReportConverter\\Converters\\Factory": { + "name": "JBZoo\\CIReportConverter\\Converters\\Factory", "interface": false, "abstract": false, "final": false, @@ -4091,9 +4091,9 @@ "ccn": 2, "ccnMethodMax": 2, "externals": [ - "JBZoo\\CiReportConverter\\Converters\\Map", - "JBZoo\\CiReportConverter\\Converters\\Map", - "JBZoo\\CiReportConverter\\Converters\\Map" + "JBZoo\\CIReportConverter\\Converters\\Map", + "JBZoo\\CIReportConverter\\Converters\\Map", + "JBZoo\\CIReportConverter\\Converters\\Map" ], "parents": [], "lcom": 2, @@ -4123,7 +4123,7 @@ "totalStructuralComplexity": 128, "totalDataComplexity": 1.33, "totalSystemComplexity": 129.33, - "package": "JBZoo\\CiReportConverter\\Converters\\", + "package": "JBZoo\\CIReportConverter\\Converters\\", "pageRank": 0, "afferentCoupling": 2, "efferentCoupling": 1, @@ -4131,83 +4131,83 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Converters\\": { - "name": "JBZoo\\CiReportConverter\\Converters\\", + "JBZoo\\CIReportConverter\\Converters\\": { + "name": "JBZoo\\CIReportConverter\\Converters\\", "classes": [ - "JBZoo\\CiReportConverter\\Converters\\Factory", - "JBZoo\\CiReportConverter\\Converters\\PsalmJsonConverter", - "JBZoo\\CiReportConverter\\Converters\\PhpDependStatsTcConverter", - "JBZoo\\CiReportConverter\\Converters\\PhpLocStatsTcConverter", - "JBZoo\\CiReportConverter\\Converters\\Map", - "JBZoo\\CiReportConverter\\Converters\\CheckStyleConverter", - "JBZoo\\CiReportConverter\\Converters\\JUnitConverter", - "JBZoo\\CiReportConverter\\Converters\\AbstractStatsTcConverter", - "JBZoo\\CiReportConverter\\Converters\\PhpMdJsonConverter", - "JBZoo\\CiReportConverter\\Converters\\AbstractConverter", - "JBZoo\\CiReportConverter\\Converters\\PhpUnitCloverStatsTcConverter", - "JBZoo\\CiReportConverter\\Converters\\Exception", - "JBZoo\\CiReportConverter\\Converters\\PhpMetricsStatsTcConverter" + "JBZoo\\CIReportConverter\\Converters\\Factory", + "JBZoo\\CIReportConverter\\Converters\\PsalmJsonConverter", + "JBZoo\\CIReportConverter\\Converters\\PhpDependStatsTcConverter", + "JBZoo\\CIReportConverter\\Converters\\PhpLocStatsTcConverter", + "JBZoo\\CIReportConverter\\Converters\\Map", + "JBZoo\\CIReportConverter\\Converters\\CheckStyleConverter", + "JBZoo\\CIReportConverter\\Converters\\JUnitConverter", + "JBZoo\\CIReportConverter\\Converters\\AbstractStatsTcConverter", + "JBZoo\\CIReportConverter\\Converters\\PhpMdJsonConverter", + "JBZoo\\CIReportConverter\\Converters\\AbstractConverter", + "JBZoo\\CIReportConverter\\Converters\\PhpUnitCloverStatsTcConverter", + "JBZoo\\CIReportConverter\\Converters\\Exception", + "JBZoo\\CIReportConverter\\Converters\\PhpMetricsStatsTcConverter" ], "outgoing_class_dependencies": [ - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceSuite", - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceCaseOutput", + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceSuite", + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceCaseOutput", "JBZoo\\Data\\Data", - "JBZoo\\CiReportConverter\\Helper", - "JBZoo\\CiReportConverter\\Formats\\Metric\\Metrics", - "JBZoo\\CiReportConverter\\Formats\\Xml", - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\PhpDepend", - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\PhpLoc", - "JBZoo\\CiReportConverter\\Markdown", + "JBZoo\\CIReportConverter\\Helper", + "JBZoo\\CIReportConverter\\Formats\\Metric\\Metrics", + "JBZoo\\CIReportConverter\\Formats\\Xml", + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\PhpDepend", + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\PhpLoc", + "JBZoo\\CIReportConverter\\Markdown", "class", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\JUnit", - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\Buffer", - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\TeamCity", - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\AbstractMetricMap", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\JUnit", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\Buffer", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\TeamCity", + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\AbstractMetricMap", "SimpleXMLElement", - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\PhpUnitClover", - "JBZoo\\CiReportConverter\\Exception", - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\PhpMetrics" + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\PhpUnitClover", + "JBZoo\\CIReportConverter\\Exception", + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\PhpMetrics" ], "outgoing_package_dependencies": [ - "JBZoo\\CiReportConverter\\Formats\\Source\\", + "JBZoo\\CIReportConverter\\Formats\\Source\\", "JBZoo\\Data\\", - "JBZoo\\CiReportConverter\\", - "JBZoo\\CiReportConverter\\Formats\\Metric\\", - "JBZoo\\CiReportConverter\\Formats\\", - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\", + "JBZoo\\CIReportConverter\\", + "JBZoo\\CIReportConverter\\Formats\\Metric\\", + "JBZoo\\CIReportConverter\\Formats\\", + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\", "\\", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\", - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\", - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\" + "JBZoo\\CIReportConverter\\Formats\\JUnit\\", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\" ], "incoming_class_dependencies": [ - "JBZoo\\CiReportConverter\\Commands\\TeamCityStats", - "JBZoo\\CiReportConverter\\Commands\\Convert", - "JBZoo\\CiReportConverter\\Commands\\ConvertMap" + "JBZoo\\CIReportConverter\\Commands\\TeamCityStats", + "JBZoo\\CIReportConverter\\Commands\\Convert", + "JBZoo\\CIReportConverter\\Commands\\ConvertMap" ], "incoming_package_dependencies": [ - "JBZoo\\CiReportConverter\\Commands\\" + "JBZoo\\CIReportConverter\\Commands\\" ], "abstraction": 0.15384615384615385, "instability": 0.8571428571428571, "dependent_instabilities": { - "JBZoo\\CiReportConverter\\Formats\\Source\\": 0.3333333333333333, + "JBZoo\\CIReportConverter\\Formats\\Source\\": 0.3333333333333333, "JBZoo\\Data\\": 0.4117647058823529, - "JBZoo\\CiReportConverter\\": 0.2222222222222222, - "JBZoo\\CiReportConverter\\Formats\\Metric\\": 0.2857142857142857, - "JBZoo\\CiReportConverter\\Formats\\": 0.3, - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\": 0, - "JBZoo\\CiReportConverter\\Formats\\JUnit\\": 0.9090909090909091, - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\": 0.6, - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\": 0.6666666666666666 + "JBZoo\\CIReportConverter\\": 0.2222222222222222, + "JBZoo\\CIReportConverter\\Formats\\Metric\\": 0.2857142857142857, + "JBZoo\\CIReportConverter\\Formats\\": 0.3, + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\": 0, + "JBZoo\\CIReportConverter\\Formats\\JUnit\\": 0.9090909090909091, + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\": 0.6, + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\": 0.6666666666666666 }, "distance": 0.007770404188863132, "normalized_distance": 0.01098901098901095, "violations": {}, "_type": "Hal\\Metric\\PackageMetric" }, - "JBZoo\\CiReportConverter\\Converters\\PsalmJsonConverter": { - "name": "JBZoo\\CiReportConverter\\Converters\\PsalmJsonConverter", + "JBZoo\\CIReportConverter\\Converters\\PsalmJsonConverter": { + "name": "JBZoo\\CIReportConverter\\Converters\\PsalmJsonConverter", "interface": false, "abstract": false, "final": false, @@ -4237,15 +4237,15 @@ "ccn": 8, "ccnMethodMax": 7, "externals": [ - "JBZoo\\CiReportConverter\\Converters\\AbstractConverter", - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceSuite", - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceSuite", - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceCaseOutput", + "JBZoo\\CIReportConverter\\Converters\\AbstractConverter", + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceSuite", + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceSuite", + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceCaseOutput", "JBZoo\\Data\\Data", - "JBZoo\\CiReportConverter\\Helper" + "JBZoo\\CIReportConverter\\Helper" ], "parents": [ - "JBZoo\\CiReportConverter\\Converters\\AbstractConverter" + "JBZoo\\CIReportConverter\\Converters\\AbstractConverter" ], "lcom": 2, "length": 117, @@ -4274,7 +4274,7 @@ "totalStructuralComplexity": 72, "totalDataComplexity": 0.86, "totalSystemComplexity": 72.86, - "package": "JBZoo\\CiReportConverter\\Converters\\", + "package": "JBZoo\\CIReportConverter\\Converters\\", "pageRank": 0, "afferentCoupling": 0, "efferentCoupling": 5, @@ -4282,8 +4282,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Converters\\PhpDependStatsTcConverter": { - "name": "JBZoo\\CiReportConverter\\Converters\\PhpDependStatsTcConverter", + "JBZoo\\CIReportConverter\\Converters\\PhpDependStatsTcConverter": { + "name": "JBZoo\\CIReportConverter\\Converters\\PhpDependStatsTcConverter", "interface": false, "abstract": false, "final": false, @@ -4306,14 +4306,14 @@ "ccn": 1, "ccnMethodMax": 1, "externals": [ - "JBZoo\\CiReportConverter\\Converters\\AbstractStatsTcConverter", - "JBZoo\\CiReportConverter\\Formats\\Metric\\Metrics", - "JBZoo\\CiReportConverter\\Formats\\Xml", - "JBZoo\\CiReportConverter\\Formats\\Xml", - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\PhpDepend" + "JBZoo\\CIReportConverter\\Converters\\AbstractStatsTcConverter", + "JBZoo\\CIReportConverter\\Formats\\Metric\\Metrics", + "JBZoo\\CIReportConverter\\Formats\\Xml", + "JBZoo\\CIReportConverter\\Formats\\Xml", + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\PhpDepend" ], "parents": [ - "JBZoo\\CiReportConverter\\Converters\\AbstractStatsTcConverter" + "JBZoo\\CIReportConverter\\Converters\\AbstractStatsTcConverter" ], "lcom": 1, "length": 16, @@ -4342,7 +4342,7 @@ "totalStructuralComplexity": 9, "totalDataComplexity": 0.5, "totalSystemComplexity": 9.5, - "package": "JBZoo\\CiReportConverter\\Converters\\", + "package": "JBZoo\\CIReportConverter\\Converters\\", "pageRank": 0, "afferentCoupling": 0, "efferentCoupling": 4, @@ -4350,8 +4350,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Converters\\PhpLocStatsTcConverter": { - "name": "JBZoo\\CiReportConverter\\Converters\\PhpLocStatsTcConverter", + "JBZoo\\CIReportConverter\\Converters\\PhpLocStatsTcConverter": { + "name": "JBZoo\\CIReportConverter\\Converters\\PhpLocStatsTcConverter", "interface": false, "abstract": false, "final": false, @@ -4374,12 +4374,12 @@ "ccn": 1, "ccnMethodMax": 1, "externals": [ - "JBZoo\\CiReportConverter\\Converters\\AbstractStatsTcConverter", - "JBZoo\\CiReportConverter\\Formats\\Metric\\Metrics", - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\PhpLoc" + "JBZoo\\CIReportConverter\\Converters\\AbstractStatsTcConverter", + "JBZoo\\CIReportConverter\\Formats\\Metric\\Metrics", + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\PhpLoc" ], "parents": [ - "JBZoo\\CiReportConverter\\Converters\\AbstractStatsTcConverter" + "JBZoo\\CIReportConverter\\Converters\\AbstractStatsTcConverter" ], "lcom": 1, "length": 8, @@ -4408,7 +4408,7 @@ "totalStructuralComplexity": 4, "totalDataComplexity": 0.67, "totalSystemComplexity": 4.67, - "package": "JBZoo\\CiReportConverter\\Converters\\", + "package": "JBZoo\\CIReportConverter\\Converters\\", "pageRank": 0, "afferentCoupling": 0, "efferentCoupling": 3, @@ -4416,8 +4416,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Converters\\Map": { - "name": "JBZoo\\CiReportConverter\\Converters\\Map", + "JBZoo\\CIReportConverter\\Converters\\Map": { + "name": "JBZoo\\CIReportConverter\\Converters\\Map", "interface": false, "abstract": false, "final": false, @@ -4482,13 +4482,13 @@ "ccn": 12, "ccnMethodMax": 4, "externals": [ - "JBZoo\\CiReportConverter\\Markdown", - "JBZoo\\CiReportConverter\\Converters\\AbstractConverter", + "JBZoo\\CIReportConverter\\Markdown", + "JBZoo\\CIReportConverter\\Converters\\AbstractConverter", "class", - "JBZoo\\CiReportConverter\\Converters\\Exception", - "JBZoo\\CiReportConverter\\Converters\\AbstractStatsTcConverter", + "JBZoo\\CIReportConverter\\Converters\\Exception", + "JBZoo\\CIReportConverter\\Converters\\AbstractStatsTcConverter", "class", - "JBZoo\\CiReportConverter\\Converters\\Exception" + "JBZoo\\CIReportConverter\\Converters\\Exception" ], "parents": [], "lcom": 7, @@ -4518,7 +4518,7 @@ "totalStructuralComplexity": 28, "totalDataComplexity": 22.67, "totalSystemComplexity": 50.67, - "package": "JBZoo\\CiReportConverter\\Converters\\", + "package": "JBZoo\\CIReportConverter\\Converters\\", "pageRank": 0.01, "afferentCoupling": 4, "efferentCoupling": 5, @@ -4526,8 +4526,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Converters\\CheckStyleConverter": { - "name": "JBZoo\\CiReportConverter\\Converters\\CheckStyleConverter", + "JBZoo\\CIReportConverter\\Converters\\CheckStyleConverter": { + "name": "JBZoo\\CIReportConverter\\Converters\\CheckStyleConverter", "interface": false, "abstract": false, "final": false, @@ -4557,17 +4557,17 @@ "ccn": 10, "ccnMethodMax": 10, "externals": [ - "JBZoo\\CiReportConverter\\Converters\\AbstractConverter", - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceSuite", - "JBZoo\\CiReportConverter\\Formats\\Xml", - "JBZoo\\CiReportConverter\\Formats\\Xml", - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceSuite", - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceCaseOutput", + "JBZoo\\CIReportConverter\\Converters\\AbstractConverter", + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceSuite", + "JBZoo\\CIReportConverter\\Formats\\Xml", + "JBZoo\\CIReportConverter\\Formats\\Xml", + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceSuite", + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceCaseOutput", "JBZoo\\Data\\Data", - "JBZoo\\CiReportConverter\\Helper" + "JBZoo\\CIReportConverter\\Helper" ], "parents": [ - "JBZoo\\CiReportConverter\\Converters\\AbstractConverter" + "JBZoo\\CIReportConverter\\Converters\\AbstractConverter" ], "lcom": 2, "length": 125, @@ -4596,7 +4596,7 @@ "totalStructuralComplexity": 162, "totalDataComplexity": 0.6, "totalSystemComplexity": 162.6, - "package": "JBZoo\\CiReportConverter\\Converters\\", + "package": "JBZoo\\CIReportConverter\\Converters\\", "pageRank": 0, "afferentCoupling": 0, "efferentCoupling": 6, @@ -4604,8 +4604,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Converters\\JUnitConverter": { - "name": "JBZoo\\CiReportConverter\\Converters\\JUnitConverter", + "JBZoo\\CIReportConverter\\Converters\\JUnitConverter": { + "name": "JBZoo\\CIReportConverter\\Converters\\JUnitConverter", "interface": false, "abstract": false, "final": false, @@ -4649,20 +4649,20 @@ "ccn": 31, "ccnMethodMax": 17, "externals": [ - "JBZoo\\CiReportConverter\\Converters\\AbstractConverter", - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceSuite", - "JBZoo\\CiReportConverter\\Formats\\Xml", - "JBZoo\\CiReportConverter\\Formats\\Xml", - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceSuite", - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceSuite", - "JBZoo\\CiReportConverter\\Formats\\JUnit\\JUnit", - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceSuite", - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceSuite", - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceSuite", - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceCaseOutput" + "JBZoo\\CIReportConverter\\Converters\\AbstractConverter", + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceSuite", + "JBZoo\\CIReportConverter\\Formats\\Xml", + "JBZoo\\CIReportConverter\\Formats\\Xml", + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceSuite", + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceSuite", + "JBZoo\\CIReportConverter\\Formats\\JUnit\\JUnit", + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceSuite", + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceSuite", + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceSuite", + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceCaseOutput" ], "parents": [ - "JBZoo\\CiReportConverter\\Converters\\AbstractConverter" + "JBZoo\\CIReportConverter\\Converters\\AbstractConverter" ], "lcom": 2, "length": 252, @@ -4691,7 +4691,7 @@ "totalStructuralComplexity": 784, "totalDataComplexity": 1.47, "totalSystemComplexity": 785.47, - "package": "JBZoo\\CiReportConverter\\Converters\\", + "package": "JBZoo\\CIReportConverter\\Converters\\", "pageRank": 0, "afferentCoupling": 0, "efferentCoupling": 5, @@ -4699,8 +4699,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Converters\\AbstractStatsTcConverter": { - "name": "JBZoo\\CiReportConverter\\Converters\\AbstractStatsTcConverter", + "JBZoo\\CIReportConverter\\Converters\\AbstractStatsTcConverter": { + "name": "JBZoo\\CIReportConverter\\Converters\\AbstractStatsTcConverter", "interface": false, "abstract": true, "final": false, @@ -4744,18 +4744,18 @@ "ccn": 9, "ccnMethodMax": 6, "externals": [ - "JBZoo\\CiReportConverter\\Converters\\AbstractConverter", - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\Buffer", - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\TeamCity", - "JBZoo\\CiReportConverter\\Formats\\Metric\\Metrics", - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\AbstractMetricMap", - "JBZoo\\CiReportConverter\\Formats\\Metric\\Metrics", - "JBZoo\\CiReportConverter\\Formats\\Metric\\Metrics", - "JBZoo\\CiReportConverter\\Converters\\Exception", - "JBZoo\\CiReportConverter\\Formats\\Metric\\Metrics" + "JBZoo\\CIReportConverter\\Converters\\AbstractConverter", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\Buffer", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\TeamCity", + "JBZoo\\CIReportConverter\\Formats\\Metric\\Metrics", + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\AbstractMetricMap", + "JBZoo\\CIReportConverter\\Formats\\Metric\\Metrics", + "JBZoo\\CIReportConverter\\Formats\\Metric\\Metrics", + "JBZoo\\CIReportConverter\\Converters\\Exception", + "JBZoo\\CIReportConverter\\Formats\\Metric\\Metrics" ], "parents": [ - "JBZoo\\CiReportConverter\\Converters\\AbstractConverter" + "JBZoo\\CIReportConverter\\Converters\\AbstractConverter" ], "lcom": 3, "length": 64, @@ -4784,7 +4784,7 @@ "totalStructuralComplexity": 144, "totalDataComplexity": 2.71, "totalSystemComplexity": 146.71, - "package": "JBZoo\\CiReportConverter\\Converters\\", + "package": "JBZoo\\CIReportConverter\\Converters\\", "pageRank": 0, "afferentCoupling": 5, "efferentCoupling": 6, @@ -4792,8 +4792,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Converters\\PhpMdJsonConverter": { - "name": "JBZoo\\CiReportConverter\\Converters\\PhpMdJsonConverter", + "JBZoo\\CIReportConverter\\Converters\\PhpMdJsonConverter": { + "name": "JBZoo\\CIReportConverter\\Converters\\PhpMdJsonConverter", "interface": false, "abstract": false, "final": false, @@ -4823,15 +4823,15 @@ "ccn": 18, "ccnMethodMax": 10, "externals": [ - "JBZoo\\CiReportConverter\\Converters\\AbstractConverter", - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceSuite", - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceSuite", - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceCaseOutput", + "JBZoo\\CIReportConverter\\Converters\\AbstractConverter", + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceSuite", + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceSuite", + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceCaseOutput", "JBZoo\\Data\\Data", - "JBZoo\\CiReportConverter\\Helper" + "JBZoo\\CIReportConverter\\Helper" ], "parents": [ - "JBZoo\\CiReportConverter\\Converters\\AbstractConverter" + "JBZoo\\CIReportConverter\\Converters\\AbstractConverter" ], "lcom": 2, "length": 183, @@ -4860,7 +4860,7 @@ "totalStructuralComplexity": 128, "totalDataComplexity": 0.67, "totalSystemComplexity": 128.67, - "package": "JBZoo\\CiReportConverter\\Converters\\", + "package": "JBZoo\\CIReportConverter\\Converters\\", "pageRank": 0, "afferentCoupling": 0, "efferentCoupling": 5, @@ -4868,8 +4868,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Converters\\AbstractConverter": { - "name": "JBZoo\\CiReportConverter\\Converters\\AbstractConverter", + "JBZoo\\CIReportConverter\\Converters\\AbstractConverter": { + "name": "JBZoo\\CIReportConverter\\Converters\\AbstractConverter", "interface": false, "abstract": true, "final": false, @@ -4930,10 +4930,10 @@ "ccn": 10, "ccnMethodMax": 5, "externals": [ - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceSuite", - "JBZoo\\CiReportConverter\\Converters\\Exception", - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceSuite", - "JBZoo\\CiReportConverter\\Converters\\Exception" + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceSuite", + "JBZoo\\CIReportConverter\\Converters\\Exception", + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceSuite", + "JBZoo\\CIReportConverter\\Converters\\Exception" ], "parents": [], "lcom": 4, @@ -4963,7 +4963,7 @@ "totalStructuralComplexity": 0, "totalDataComplexity": 79, "totalSystemComplexity": 79, - "package": "JBZoo\\CiReportConverter\\Converters\\", + "package": "JBZoo\\CIReportConverter\\Converters\\", "pageRank": 0, "afferentCoupling": 6, "efferentCoupling": 2, @@ -4971,8 +4971,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Converters\\PhpUnitCloverStatsTcConverter": { - "name": "JBZoo\\CiReportConverter\\Converters\\PhpUnitCloverStatsTcConverter", + "JBZoo\\CIReportConverter\\Converters\\PhpUnitCloverStatsTcConverter": { + "name": "JBZoo\\CIReportConverter\\Converters\\PhpUnitCloverStatsTcConverter", "interface": false, "abstract": false, "final": false, @@ -5002,13 +5002,13 @@ "ccn": 10, "ccnMethodMax": 8, "externals": [ - "JBZoo\\CiReportConverter\\Converters\\AbstractStatsTcConverter", - "JBZoo\\CiReportConverter\\Formats\\Metric\\Metrics", + "JBZoo\\CIReportConverter\\Converters\\AbstractStatsTcConverter", + "JBZoo\\CIReportConverter\\Formats\\Metric\\Metrics", "SimpleXMLElement", - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\PhpUnitClover" + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\PhpUnitClover" ], "parents": [ - "JBZoo\\CiReportConverter\\Converters\\AbstractStatsTcConverter" + "JBZoo\\CIReportConverter\\Converters\\AbstractStatsTcConverter" ], "lcom": 2, "length": 158, @@ -5037,7 +5037,7 @@ "totalStructuralComplexity": 32, "totalDataComplexity": 1.8, "totalSystemComplexity": 33.8, - "package": "JBZoo\\CiReportConverter\\Converters\\", + "package": "JBZoo\\CIReportConverter\\Converters\\", "pageRank": 0, "afferentCoupling": 0, "efferentCoupling": 4, @@ -5045,8 +5045,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Converters\\Exception": { - "name": "JBZoo\\CiReportConverter\\Converters\\Exception", + "JBZoo\\CIReportConverter\\Converters\\Exception": { + "name": "JBZoo\\CIReportConverter\\Converters\\Exception", "interface": false, "abstract": false, "final": false, @@ -5061,10 +5061,10 @@ "ccn": 1, "ccnMethodMax": 0, "externals": [ - "JBZoo\\CiReportConverter\\Exception" + "JBZoo\\CIReportConverter\\Exception" ], "parents": [ - "JBZoo\\CiReportConverter\\Exception" + "JBZoo\\CIReportConverter\\Exception" ], "lcom": 0, "length": 0, @@ -5093,7 +5093,7 @@ "totalStructuralComplexity": 0, "totalDataComplexity": 0, "totalSystemComplexity": 0, - "package": "JBZoo\\CiReportConverter\\Converters\\", + "package": "JBZoo\\CIReportConverter\\Converters\\", "pageRank": 0.01, "afferentCoupling": 3, "efferentCoupling": 1, @@ -5101,8 +5101,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Converters\\PhpMetricsStatsTcConverter": { - "name": "JBZoo\\CiReportConverter\\Converters\\PhpMetricsStatsTcConverter", + "JBZoo\\CIReportConverter\\Converters\\PhpMetricsStatsTcConverter": { + "name": "JBZoo\\CIReportConverter\\Converters\\PhpMetricsStatsTcConverter", "interface": false, "abstract": false, "final": false, @@ -5125,14 +5125,14 @@ "ccn": 1, "ccnMethodMax": 1, "externals": [ - "JBZoo\\CiReportConverter\\Converters\\AbstractStatsTcConverter", - "JBZoo\\CiReportConverter\\Formats\\Metric\\Metrics", - "JBZoo\\CiReportConverter\\Formats\\Xml", - "JBZoo\\CiReportConverter\\Formats\\Xml", - "JBZoo\\CiReportConverter\\Formats\\MetricMaps\\PhpMetrics" + "JBZoo\\CIReportConverter\\Converters\\AbstractStatsTcConverter", + "JBZoo\\CIReportConverter\\Formats\\Metric\\Metrics", + "JBZoo\\CIReportConverter\\Formats\\Xml", + "JBZoo\\CIReportConverter\\Formats\\Xml", + "JBZoo\\CIReportConverter\\Formats\\MetricMaps\\PhpMetrics" ], "parents": [ - "JBZoo\\CiReportConverter\\Converters\\AbstractStatsTcConverter" + "JBZoo\\CIReportConverter\\Converters\\AbstractStatsTcConverter" ], "lcom": 1, "length": 16, @@ -5161,7 +5161,7 @@ "totalStructuralComplexity": 9, "totalDataComplexity": 0.5, "totalSystemComplexity": 9.5, - "package": "JBZoo\\CiReportConverter\\Converters\\", + "package": "JBZoo\\CIReportConverter\\Converters\\", "pageRank": 0, "afferentCoupling": 0, "efferentCoupling": 4, @@ -5169,8 +5169,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Helper": { - "name": "JBZoo\\CiReportConverter\\Helper", + "JBZoo\\CIReportConverter\\Helper": { + "name": "JBZoo\\CIReportConverter\\Helper", "interface": false, "abstract": false, "final": false, @@ -5223,7 +5223,7 @@ "totalStructuralComplexity": 1, "totalDataComplexity": 1.5, "totalSystemComplexity": 2.5, - "package": "JBZoo\\CiReportConverter\\", + "package": "JBZoo\\CIReportConverter\\", "pageRank": 0, "afferentCoupling": 3, "efferentCoupling": 1, @@ -5231,8 +5231,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Commands\\TeamCityStats": { - "name": "JBZoo\\CiReportConverter\\Commands\\TeamCityStats", + "JBZoo\\CIReportConverter\\Commands\\TeamCityStats": { + "name": "JBZoo\\CIReportConverter\\Commands\\TeamCityStats", "interface": false, "abstract": false, "final": false, @@ -5269,14 +5269,14 @@ "ccn": 2, "ccnMethodMax": 2, "externals": [ - "JBZoo\\CiReportConverter\\Commands\\AbstractCommand", - "JBZoo\\CiReportConverter\\Converters\\Map", - "JBZoo\\CiReportConverter\\Converters\\Factory", - "JBZoo\\CiReportConverter\\Converters\\Map", - "JBZoo\\CiReportConverter\\Commands\\Exception" + "JBZoo\\CIReportConverter\\Commands\\AbstractCommand", + "JBZoo\\CIReportConverter\\Converters\\Map", + "JBZoo\\CIReportConverter\\Converters\\Factory", + "JBZoo\\CIReportConverter\\Converters\\Map", + "JBZoo\\CIReportConverter\\Commands\\Exception" ], "parents": [ - "JBZoo\\CiReportConverter\\Commands\\AbstractCommand" + "JBZoo\\CIReportConverter\\Commands\\AbstractCommand" ], "lcom": 2, "length": 47, @@ -5305,7 +5305,7 @@ "totalStructuralComplexity": 300, "totalDataComplexity": 0.55, "totalSystemComplexity": 300.55, - "package": "JBZoo\\CiReportConverter\\Commands\\", + "package": "JBZoo\\CIReportConverter\\Commands\\", "pageRank": 0, "afferentCoupling": 0, "efferentCoupling": 4, @@ -5313,43 +5313,43 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Commands\\": { - "name": "JBZoo\\CiReportConverter\\Commands\\", + "JBZoo\\CIReportConverter\\Commands\\": { + "name": "JBZoo\\CIReportConverter\\Commands\\", "classes": [ - "JBZoo\\CiReportConverter\\Commands\\TeamCityStats", - "JBZoo\\CiReportConverter\\Commands\\AbstractCommand", - "JBZoo\\CiReportConverter\\Commands\\Exception", - "JBZoo\\CiReportConverter\\Commands\\Convert", - "JBZoo\\CiReportConverter\\Commands\\ConvertMap" + "JBZoo\\CIReportConverter\\Commands\\TeamCityStats", + "JBZoo\\CIReportConverter\\Commands\\AbstractCommand", + "JBZoo\\CIReportConverter\\Commands\\Exception", + "JBZoo\\CIReportConverter\\Commands\\Convert", + "JBZoo\\CIReportConverter\\Commands\\ConvertMap" ], "outgoing_class_dependencies": [ - "JBZoo\\CiReportConverter\\Converters\\Map", - "JBZoo\\CiReportConverter\\Converters\\Factory", + "JBZoo\\CIReportConverter\\Converters\\Map", + "JBZoo\\CIReportConverter\\Converters\\Factory", "Symfony\\Component\\Console\\Command\\Command", "Symfony\\Component\\Console\\Input\\InputInterface", "Symfony\\Component\\Console\\Output\\OutputInterface", - "JBZoo\\CiReportConverter\\Exception" + "JBZoo\\CIReportConverter\\Exception" ], "outgoing_package_dependencies": [ - "JBZoo\\CiReportConverter\\Converters\\", + "JBZoo\\CIReportConverter\\Converters\\", "Symfony\\Component\\Console\\Command\\", "Symfony\\Component\\Console\\Input\\", "Symfony\\Component\\Console\\Output\\", - "JBZoo\\CiReportConverter\\" + "JBZoo\\CIReportConverter\\" ], "abstraction": 0.2, "instability": 1, "dependent_instabilities": { - "JBZoo\\CiReportConverter\\Converters\\": 0.8571428571428571, - "JBZoo\\CiReportConverter\\": 0.2222222222222222 + "JBZoo\\CIReportConverter\\Converters\\": 0.8571428571428571, + "JBZoo\\CIReportConverter\\": 0.2222222222222222 }, "distance": 0.14142135623730948, "normalized_distance": 0.19999999999999996, "violations": {}, "_type": "Hal\\Metric\\PackageMetric" }, - "JBZoo\\CiReportConverter\\Commands\\AbstractCommand": { - "name": "JBZoo\\CiReportConverter\\Commands\\AbstractCommand", + "JBZoo\\CIReportConverter\\Commands\\AbstractCommand": { + "name": "JBZoo\\CIReportConverter\\Commands\\AbstractCommand", "interface": false, "abstract": true, "final": false, @@ -5410,7 +5410,7 @@ "Symfony\\Component\\Console\\Command\\Command", "Symfony\\Component\\Console\\Input\\InputInterface", "Symfony\\Component\\Console\\Output\\OutputInterface", - "JBZoo\\CiReportConverter\\Commands\\Exception" + "JBZoo\\CIReportConverter\\Commands\\Exception" ], "parents": [ "Symfony\\Component\\Console\\Command\\Command" @@ -5442,7 +5442,7 @@ "totalStructuralComplexity": 150, "totalDataComplexity": 6.67, "totalSystemComplexity": 156.67, - "package": "JBZoo\\CiReportConverter\\Commands\\", + "package": "JBZoo\\CIReportConverter\\Commands\\", "pageRank": 0, "afferentCoupling": 3, "efferentCoupling": 4, @@ -5450,8 +5450,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Commands\\Exception": { - "name": "JBZoo\\CiReportConverter\\Commands\\Exception", + "JBZoo\\CIReportConverter\\Commands\\Exception": { + "name": "JBZoo\\CIReportConverter\\Commands\\Exception", "interface": false, "abstract": false, "final": false, @@ -5466,10 +5466,10 @@ "ccn": 1, "ccnMethodMax": 0, "externals": [ - "JBZoo\\CiReportConverter\\Exception" + "JBZoo\\CIReportConverter\\Exception" ], "parents": [ - "JBZoo\\CiReportConverter\\Exception" + "JBZoo\\CIReportConverter\\Exception" ], "lcom": 0, "length": 0, @@ -5498,7 +5498,7 @@ "totalStructuralComplexity": 0, "totalDataComplexity": 0, "totalSystemComplexity": 0, - "package": "JBZoo\\CiReportConverter\\Commands\\", + "package": "JBZoo\\CIReportConverter\\Commands\\", "pageRank": 0, "afferentCoupling": 3, "efferentCoupling": 1, @@ -5506,8 +5506,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Commands\\Convert": { - "name": "JBZoo\\CiReportConverter\\Commands\\Convert", + "JBZoo\\CIReportConverter\\Commands\\Convert": { + "name": "JBZoo\\CIReportConverter\\Commands\\Convert", "interface": false, "abstract": false, "final": false, @@ -5544,14 +5544,14 @@ "ccn": 2, "ccnMethodMax": 2, "externals": [ - "JBZoo\\CiReportConverter\\Commands\\AbstractCommand", - "JBZoo\\CiReportConverter\\Converters\\Map", - "JBZoo\\CiReportConverter\\Converters\\Factory", - "JBZoo\\CiReportConverter\\Converters\\Map", - "JBZoo\\CiReportConverter\\Commands\\Exception" + "JBZoo\\CIReportConverter\\Commands\\AbstractCommand", + "JBZoo\\CIReportConverter\\Converters\\Map", + "JBZoo\\CIReportConverter\\Converters\\Factory", + "JBZoo\\CIReportConverter\\Converters\\Map", + "JBZoo\\CIReportConverter\\Commands\\Exception" ], "parents": [ - "JBZoo\\CiReportConverter\\Commands\\AbstractCommand" + "JBZoo\\CIReportConverter\\Commands\\AbstractCommand" ], "lcom": 2, "length": 73, @@ -5580,7 +5580,7 @@ "totalStructuralComplexity": 300, "totalDataComplexity": 0.64, "totalSystemComplexity": 300.64, - "package": "JBZoo\\CiReportConverter\\Commands\\", + "package": "JBZoo\\CIReportConverter\\Commands\\", "pageRank": 0, "afferentCoupling": 0, "efferentCoupling": 4, @@ -5588,8 +5588,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Commands\\ConvertMap": { - "name": "JBZoo\\CiReportConverter\\Commands\\ConvertMap", + "JBZoo\\CIReportConverter\\Commands\\ConvertMap": { + "name": "JBZoo\\CIReportConverter\\Commands\\ConvertMap", "interface": false, "abstract": false, "final": false, @@ -5619,11 +5619,11 @@ "ccn": 1, "ccnMethodMax": 1, "externals": [ - "JBZoo\\CiReportConverter\\Commands\\AbstractCommand", - "JBZoo\\CiReportConverter\\Converters\\Map" + "JBZoo\\CIReportConverter\\Commands\\AbstractCommand", + "JBZoo\\CIReportConverter\\Converters\\Map" ], "parents": [ - "JBZoo\\CiReportConverter\\Commands\\AbstractCommand" + "JBZoo\\CIReportConverter\\Commands\\AbstractCommand" ], "lcom": 2, "length": 6, @@ -5652,7 +5652,7 @@ "totalStructuralComplexity": 32, "totalDataComplexity": 0.4, "totalSystemComplexity": 32.4, - "package": "JBZoo\\CiReportConverter\\Commands\\", + "package": "JBZoo\\CIReportConverter\\Commands\\", "pageRank": 0, "afferentCoupling": 0, "efferentCoupling": 2, @@ -5660,8 +5660,8 @@ "violations": {}, "_type": "Hal\\Metric\\ClassMetric" }, - "JBZoo\\CiReportConverter\\Exception": { - "name": "JBZoo\\CiReportConverter\\Exception", + "JBZoo\\CIReportConverter\\Exception": { + "name": "JBZoo\\CIReportConverter\\Exception", "interface": false, "abstract": false, "final": false, @@ -5708,7 +5708,7 @@ "totalStructuralComplexity": 0, "totalDataComplexity": 0, "totalSystemComplexity": 0, - "package": "JBZoo\\CiReportConverter\\", + "package": "JBZoo\\CIReportConverter\\", "pageRank": 0.04, "afferentCoupling": 4, "efferentCoupling": 1, @@ -5876,10 +5876,10 @@ ], "incoming_class_dependencies": [ "JBZoo\\ComposerDiff\\Comparator", - "JBZoo\\CiReportConverter\\Formats\\AbstractNode", - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\TeamCity", - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\Stdout", - "JBZoo\\CiReportConverter\\Helper", + "JBZoo\\CIReportConverter\\Formats\\AbstractNode", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\TeamCity", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\Stdout", + "JBZoo\\CIReportConverter\\Helper", "JBZoo\\PHPUnit\\CovCatcher", "JBZoo\\PHPUnit\\PHPUnit", "JBZoo\\ComposerGraph\\CommandBuild", @@ -5888,10 +5888,10 @@ ], "incoming_package_dependencies": [ "JBZoo\\ComposerDiff\\", - "JBZoo\\CiReportConverter\\Formats\\", - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\", - "JBZoo\\CiReportConverter\\Formats\\TeamCity\\Writers\\", - "JBZoo\\CiReportConverter\\", + "JBZoo\\CIReportConverter\\Formats\\", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\", + "JBZoo\\CIReportConverter\\Formats\\TeamCity\\Writers\\", + "JBZoo\\CIReportConverter\\", "JBZoo\\PHPUnit\\", "JBZoo\\ComposerGraph\\Commands\\", "JBZoo\\ComposerGraph\\", @@ -11143,11 +11143,11 @@ ], "incoming_class_dependencies": [ "JBZoo\\ComposerDiff\\Renders\\AbstractRender", - "JBZoo\\CiReportConverter\\Formats\\Source\\SourceCaseOutput", - "JBZoo\\CiReportConverter\\Formats\\AbstractNode", - "JBZoo\\CiReportConverter\\Converters\\PsalmJsonConverter", - "JBZoo\\CiReportConverter\\Converters\\CheckStyleConverter", - "JBZoo\\CiReportConverter\\Converters\\PhpMdJsonConverter", + "JBZoo\\CIReportConverter\\Formats\\Source\\SourceCaseOutput", + "JBZoo\\CIReportConverter\\Formats\\AbstractNode", + "JBZoo\\CIReportConverter\\Converters\\PsalmJsonConverter", + "JBZoo\\CIReportConverter\\Converters\\CheckStyleConverter", + "JBZoo\\CIReportConverter\\Converters\\PhpMdJsonConverter", "JBZoo\\Utils\\Filter", "JBZoo\\PHPUnit\\CovCatcher", "JBZoo\\ComposerGraph\\CommandBuild", @@ -11155,9 +11155,9 @@ ], "incoming_package_dependencies": [ "JBZoo\\ComposerDiff\\", - "JBZoo\\CiReportConverter\\Formats\\Source\\", - "JBZoo\\CiReportConverter\\Formats\\", - "JBZoo\\CiReportConverter\\Converters\\", + "JBZoo\\CIReportConverter\\Formats\\Source\\", + "JBZoo\\CIReportConverter\\Formats\\", + "JBZoo\\CIReportConverter\\Converters\\", "JBZoo\\Utils\\", "JBZoo\\PHPUnit\\", "JBZoo\\ComposerGraph\\Commands\\", @@ -12567,4 +12567,4 @@ "violations": {}, "_type": "Hal\\Metric\\ProjectMetric" } -} \ No newline at end of file +} diff --git a/tests/fixtures/origin/phpmetrics/pmd.xml b/tests/fixtures/origin/phpmetrics/pmd.xml index a4d4270..cf778c7 100644 --- a/tests/fixtures/origin/phpmetrics/pmd.xml +++ b/tests/fixtures/origin/phpmetrics/pmd.xml @@ -32,7 +32,7 @@ The packages that are more stable are Maybe you should delegate some code to other objects or split complex method.
- + This component contains in theory 0.42 bugs. * Calculation is based on number of operators, operands, cyclomatic complexity @@ -41,7 +41,7 @@ Maybe you should delegate some code to other objects or split complex method. - + Packages should be either abstract and stable or concrete and instable. This package is instable and abstract. @@ -52,12 +52,12 @@ The packages that are more stable are * JBZoo\Utils (0.545) - + Packages should be either abstract and stable or concrete and instable. This package is instable and abstract. - + This class looks really complex. * Algorithms are complex (Max cyclomatic complexity of class methods is 11) @@ -71,7 +71,7 @@ Maybe you should delegate some code to other objects or split complex method. - + This component contains in theory 0.4 bugs. * Calculation is based on number of operators, operands, cyclomatic complexity @@ -80,7 +80,7 @@ Maybe you should check your unit tests for this class. Maybe you should check your unit tests for this class. - + Packages should be either abstract and stable or concrete and instable. This package is instable and abstract. @@ -91,14 +91,14 @@ The packages that are more stable are * JBZoo\Data (0.412) - + This class looks really complex. * Algorithms are complex (Max cyclomatic complexity of class methods is 12) Maybe you should delegate some code to other objects or split complex method. - + Packages should be either abstract and stable or concrete and instable. This package is instable and abstract. @@ -109,9 +109,9 @@ The packages that are more stable are * JBZoo\Data (0.412) * JBZoo\Utils (0.545) -* JBZoo\CiReportConverter\Formats\Source (0.333) +* JBZoo\CIReportConverter\Formats\Source (0.333) - + This component contains in theory 0.42 bugs. * Calculation is based on number of operators, operands, cyclomatic complexity @@ -120,15 +120,15 @@ The packages that are more stable are Maybe you should check your unit tests for this class. - + Packages should depend in the direction of stability. This package is more stable (0.6) than 1 package(s) that it depends on. The packages that are more stable are -* JBZoo\CiReportConverter\Formats\TeamCity (0.667) +* JBZoo\CIReportConverter\Formats\TeamCity (0.667) - + Packages should be either abstract and stable or concrete and instable. This package is instable and abstract. @@ -137,17 +137,17 @@ This package is instable and abstract. This package is more stable (0.286) than 1 package(s) that it depends on. The packages that are more stable are -* JBZoo\CiReportConverter\Formats (0.3) +* JBZoo\CIReportConverter\Formats (0.3) - + Packages should depend in the direction of stability. This package is more stable (0.857) than 1 package(s) that it depends on. The packages that are more stable are -* JBZoo\CiReportConverter\Formats\JUnit (0.909) +* JBZoo\CIReportConverter\Formats\JUnit (0.909) - + This class looks really complex. * Algorithms are complex (Max cyclomatic complexity of class methods is 17) @@ -161,7 +161,7 @@ Maybe you should delegate some code to other objects or split complex method. - + This component contains in theory 0.35 bugs. * Calculation is based on number of operators, operands, cyclomatic complexity diff --git a/tests/fixtures/origin/phpstan/checkstyle.xml b/tests/fixtures/origin/phpstan/checkstyle.xml index 8300f30..c236ece 100644 --- a/tests/fixtures/origin/phpstan/checkstyle.xml +++ b/tests/fixtures/origin/phpstan/checkstyle.xml @@ -2,11 +2,11 @@ + message="Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setName() has no return typehint specified."/> + message="Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setClassname() has no return typehint specified."/> + message="Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setTime() has no return typehint specified."/> diff --git a/tests/fixtures/origin/phpstan/gitlab.json b/tests/fixtures/origin/phpstan/gitlab.json index cc75777..ce89f86 100644 --- a/tests/fixtures/origin/phpstan/gitlab.json +++ b/tests/fixtures/origin/phpstan/gitlab.json @@ -1,6 +1,6 @@ [ { - "description" : "Method JBZoo\\CiReportConverter\\JUnit\\TestCaseElement::setName() has no return typehint specified.", + "description" : "Method JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::setName() has no return typehint specified.", "fingerprint" : "aea772c778f246ed5a99ab9fd3a8517ff7e69309ffccd84939ecf646dea8ae23", "severity": "major", "location" : { @@ -11,7 +11,7 @@ } }, { - "description" : "Method JBZoo\\CiReportConverter\\JUnit\\TestCaseElement::setClassname() has no return typehint specified.", + "description" : "Method JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::setClassname() has no return typehint specified.", "fingerprint" : "290dd7ea67a8e3dad2458bde3a4aabd02323caebd1b2a47317a292f3892ced4f", "severity": "major", "location" : { @@ -22,7 +22,7 @@ } }, { - "description" : "Method JBZoo\\CiReportConverter\\JUnit\\TestCaseElement::setTime() has no return typehint specified.", + "description" : "Method JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::setTime() has no return typehint specified.", "fingerprint" : "bca475e51d19a2a2d345d503f9a7ae48582f53f931229cbe7ba00c71e21a63ae", "severity": "major", "location" : { @@ -66,7 +66,7 @@ } }, { - "description" : "Method JBZoo\\CiReportConverter\\JUnit\\TestCaseElement::incrementFailureCount() has no return typehint specified.", + "description" : "Method JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::incrementFailureCount() has no return typehint specified.", "fingerprint" : "39776773050bcbcc901b2212b8e435e32079deab8788ab90c15090bbd17e95da", "severity": "blocker", "location" : { @@ -98,7 +98,7 @@ } }, { - "description" : "Method JBZoo\\CiReportConverter\\JUnit\\TestCaseElement::incrementErrorCount() has no return typehint specified.", + "description" : "Method JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::incrementErrorCount() has no return typehint specified.", "fingerprint" : "dd8ee83414abab59c0858344419741bbed680389afa931b256f8d6feed8d0f18", "location" : { "path" : "src/JUnit/TestCaseElement.php", @@ -128,7 +128,7 @@ } }, { - "description" : "Method JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::setName() has no return typehint specified.", + "description" : "Method JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::setName() has no return typehint specified.", "fingerprint" : "26600bcf761b9fb9d2b9b047f87583169e7368129ca141151ba0f56bad0ce5b5", "location" : { "path" : "src/JUnit/TestSuiteElement.php", @@ -138,7 +138,7 @@ } }, { - "description" : "Method JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::setTimestamp() has no return typehint specified.", + "description" : "Method JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::setTimestamp() has no return typehint specified.", "fingerprint" : "2bad00be4bc4e2dea9b2c13cfb9ccf11c00dc055a59284a7287e4c9226a1c662", "location" : { "path" : "src/JUnit/TestSuiteElement.php", @@ -148,7 +148,7 @@ } }, { - "description" : "Method JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::setTime() has no return typehint specified.", + "description" : "Method JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::setTime() has no return typehint specified.", "fingerprint" : "af56e5192c076739244e2f61c93e20b16ab0834eb0036e62baa416d150f7b20c", "location" : { "path" : "src/JUnit/TestSuiteElement.php", @@ -168,7 +168,7 @@ } }, { - "description" : "Method JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::setHostname() has no return typehint specified.", + "description" : "Method JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::setHostname() has no return typehint specified.", "fingerprint" : "36b18b52bcc5ee4eebdcb0a92fec9f1d131617d24d6af269f12893dc33f24ef4", "location" : { "path" : "src/JUnit/TestSuiteElement.php", @@ -178,7 +178,7 @@ } }, { - "description" : "Method JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::incrementTestCount() has no return typehint specified.", + "description" : "Method JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::incrementTestCount() has no return typehint specified.", "fingerprint" : "c0c869172407dd6a559dc2f19da36a80dedfc857b86beeb7687e9721ef352a8f", "location" : { "path" : "src/JUnit/TestSuiteElement.php", @@ -208,7 +208,7 @@ } }, { - "description" : "Method JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::incrementFailureCount() has no return typehint specified.", + "description" : "Method JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::incrementFailureCount() has no return typehint specified.", "fingerprint" : "d6b2cadc2bf66a1656a9bf3209067fe66c85fc4472c55e20856a1159193bfefe", "location" : { "path" : "src/JUnit/TestSuiteElement.php", @@ -238,7 +238,7 @@ } }, { - "description" : "Method JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::incrementErrorCount() has no return typehint specified.", + "description" : "Method JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::incrementErrorCount() has no return typehint specified.", "fingerprint" : "9997b8a89f78552075a6907de52cb3720f1910837380b1e33d17a6373f09a4fc", "location" : { "path" : "src/JUnit/TestSuiteElement.php", diff --git a/tests/fixtures/origin/phpstan/json.json b/tests/fixtures/origin/phpstan/json.json index 43f2902..0bf487e 100644 --- a/tests/fixtures/origin/phpstan/json.json +++ b/tests/fixtures/origin/phpstan/json.json @@ -8,15 +8,15 @@ "errors" : 12, "messages" : [ { - "message" : "Method JBZoo\\CiReportConverter\\JUnit\\TestCaseElement::setName() has no return typehint specified.", + "message" : "Method JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::setName() has no return typehint specified.", "line" : 34, "ignorable" : true }, { - "message" : "Method JBZoo\\CiReportConverter\\JUnit\\TestCaseElement::setClassname() has no return typehint specified.", + "message" : "Method JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::setClassname() has no return typehint specified.", "line" : 42, "ignorable" : true }, { - "message" : "Method JBZoo\\CiReportConverter\\JUnit\\TestCaseElement::setTime() has no return typehint specified.", + "message" : "Method JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::setTime() has no return typehint specified.", "line" : 52, "ignorable" : true }, { @@ -33,7 +33,7 @@ "line" : 88, "ignorable" : true }, { - "message" : "Method JBZoo\\CiReportConverter\\JUnit\\TestCaseElement::incrementFailureCount() has no return typehint specified.", + "message" : "Method JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::incrementFailureCount() has no return typehint specified.", "line" : 106, "ignorable" : true }, { @@ -45,7 +45,7 @@ "line" : 111, "ignorable" : true }, { - "message" : "Method JBZoo\\CiReportConverter\\JUnit\\TestCaseElement::incrementErrorCount() has no return typehint specified.", + "message" : "Method JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::incrementErrorCount() has no return typehint specified.", "line" : 118, "ignorable" : true }, { @@ -63,15 +63,15 @@ "errors" : 14, "messages" : [ { - "message" : "Method JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::setName() has no return typehint specified.", + "message" : "Method JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::setName() has no return typehint specified.", "line" : 35, "ignorable" : true }, { - "message" : "Method JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::setTimestamp() has no return typehint specified.", + "message" : "Method JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::setTimestamp() has no return typehint specified.", "line" : 45, "ignorable" : true }, { - "message" : "Method JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::setTime() has no return typehint specified.", + "message" : "Method JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::setTime() has no return typehint specified.", "line" : 55, "ignorable" : true }, { @@ -79,11 +79,11 @@ "line" : 57, "ignorable" : true }, { - "message" : "Method JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::setHostname() has no return typehint specified.", + "message" : "Method JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::setHostname() has no return typehint specified.", "line" : 65, "ignorable" : true }, { - "message" : "Method JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::incrementTestCount() has no return typehint specified.", + "message" : "Method JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::incrementTestCount() has no return typehint specified.", "line" : 86, "ignorable" : true }, { @@ -95,7 +95,7 @@ "line" : 91, "ignorable" : true }, { - "message" : "Method JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::incrementFailureCount() has no return typehint specified.", + "message" : "Method JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::incrementFailureCount() has no return typehint specified.", "line" : 98, "ignorable" : true }, { @@ -107,7 +107,7 @@ "line" : 103, "ignorable" : true }, { - "message" : "Method JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::incrementErrorCount() has no return typehint specified.", + "message" : "Method JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::incrementErrorCount() has no return typehint specified.", "line" : 110, "ignorable" : true }, { diff --git a/tests/fixtures/origin/phpstan/junit.xml b/tests/fixtures/origin/phpstan/junit.xml index 93f18c5..e2480de 100644 --- a/tests/fixtures/origin/phpstan/junit.xml +++ b/tests/fixtures/origin/phpstan/junit.xml @@ -6,15 +6,15 @@ > + message="Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setName() has no return typehint specified."/> + message="Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setClassname() has no return typehint specified."/> + message="Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setTime() has no return typehint specified."/> + message="Method JBZoo\CIReportConverter\JUnit\TestCaseElement::incrementFailureCount() has no return typehint specified."/> + message="Method JBZoo\CIReportConverter\JUnit\TestCaseElement::incrementErrorCount() has no return typehint specified."/> + message="Method JBZoo\CIReportConverter\JUnit\TestSuiteElement::setName() has no return typehint specified."/> + message="Method JBZoo\CIReportConverter\JUnit\TestSuiteElement::setTimestamp() has no return typehint specified."/> + message="Method JBZoo\CIReportConverter\JUnit\TestSuiteElement::setTime() has no return typehint specified."/> + message="Method JBZoo\CIReportConverter\JUnit\TestSuiteElement::setHostname() has no return typehint specified."/> + message="Method JBZoo\CIReportConverter\JUnit\TestSuiteElement::incrementTestCount() has no return typehint specified."/> + message="Method JBZoo\CIReportConverter\JUnit\TestSuiteElement::incrementFailureCount() has no return typehint specified."/> + message="Method JBZoo\CIReportConverter\JUnit\TestSuiteElement::incrementErrorCount() has no return typehint specified."/> - + - + @@ -43,7 +43,7 @@ - + @@ -75,7 +75,7 @@ - + @@ -88,13 +88,13 @@ - + - + @@ -120,9 +120,9 @@ - + - + @@ -160,7 +160,7 @@ - + @@ -188,7 +188,7 @@ - + @@ -226,13 +226,13 @@ - + - + @@ -253,7 +253,7 @@ - + @@ -333,7 +333,7 @@ - + @@ -386,7 +386,7 @@ - + @@ -395,7 +395,7 @@ - + @@ -404,7 +404,7 @@ - + @@ -450,7 +450,7 @@ - + @@ -489,7 +489,7 @@ - + @@ -564,15 +564,15 @@ - + - + - + @@ -583,7 +583,7 @@ - + @@ -651,9 +651,9 @@ - + - + @@ -711,13 +711,13 @@ - + - + @@ -765,9 +765,9 @@ - + - + @@ -793,45 +793,45 @@ - + - + - + - + - + - + - + - + @@ -850,7 +850,7 @@ - + @@ -907,7 +907,7 @@ - + @@ -992,15 +992,15 @@ - + - + - + @@ -1038,9 +1038,9 @@ - + - + @@ -1050,27 +1050,27 @@ - + - + - + - + - + @@ -1088,7 +1088,7 @@ - + @@ -1137,7 +1137,7 @@ - + @@ -1225,15 +1225,15 @@ - + - + - + @@ -1270,7 +1270,7 @@ - + @@ -1354,9 +1354,9 @@ - + - + @@ -1367,7 +1367,7 @@ - + @@ -1381,13 +1381,13 @@ - + - + @@ -1397,7 +1397,7 @@ - + diff --git a/tests/fixtures/origin/psalm/checkstyle.xml b/tests/fixtures/origin/psalm/checkstyle.xml index fe4ea24..aae0e03 100644 --- a/tests/fixtures/origin/psalm/checkstyle.xml +++ b/tests/fixtures/origin/psalm/checkstyle.xml @@ -2,19 +2,19 @@ + message="MissingReturnType: Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setName does not have a return type, expecting void"/> + message="MissingReturnType: Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setClassname does not have a return type, expecting void"/> + message="MissingReturnType: Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setTime does not have a return type, expecting void"/> + message="InvalidScalarArgument: Argument 2 of JBZoo\CIReportConverter\JUnit\TestCaseElement::setAttribute expects string, float provided"/> - message: Method JBZoo\CiReportConverter\JUnit\TestCaseElement::setName does not + message: Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setName does not have a return type, expecting void type: MissingReturnType snippet: public function setName($name) @@ -18,7 +18,7 @@ - message: Method JBZoo\CiReportConverter\JUnit\TestCaseElement::setClassname does + message: Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setClassname does not have a return type, expecting void type: MissingReturnType snippet: public function setClassname($classname) @@ -29,7 +29,7 @@ - message: Method JBZoo\CiReportConverter\JUnit\TestCaseElement::setTime does not + message: Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setTime does not have a return type, expecting void type: MissingReturnType snippet: public function setTime($time) @@ -41,7 +41,7 @@ message: Method - JBZoo\CiReportConverter\JUnit\TestCaseElement::incrementFailureCount does not have a return type, expecting void + JBZoo\CIReportConverter\JUnit\TestCaseElement::incrementFailureCount does not have a return type, expecting void type: MissingReturnType snippet: public function incrementFailureCount() selected_text: incrementFailureCount @@ -51,7 +51,7 @@ - message: Method JBZoo\CiReportConverter\JUnit\TestCaseElement::incrementErrorCount + message: Method JBZoo\CIReportConverter\JUnit\TestCaseElement::incrementErrorCount does not have a return type, expecting void type: MissingReturnType snippet: public function incrementErrorCount() @@ -63,7 +63,7 @@ message: Argument 2 of - JBZoo\CiReportConverter\JUnit\TestCaseElement::setAttribute expects string, float provided + JBZoo\CIReportConverter\JUnit\TestCaseElement::setAttribute expects string, float provided type: InvalidScalarArgument snippet: $this->setAttribute('time', $time); selected_text: $time @@ -74,7 +74,7 @@ message: Argument 2 of - JBZoo\CiReportConverter\JUnit\TestCaseElement::setAttribute expects string, int provided + JBZoo\CIReportConverter\JUnit\TestCaseElement::setAttribute expects string, int provided type: InvalidScalarArgument snippet: $this->setAttribute('failures', (int)$this->getAttribute('failures') + 1); selected_text: (int)$this->getAttribute('failures') + 1 @@ -85,7 +85,7 @@ message: Argument 2 of - JBZoo\CiReportConverter\JUnit\TestCaseElement::setAttribute expects string, int(1) provided + JBZoo\CIReportConverter\JUnit\TestCaseElement::setAttribute expects string, int(1) provided type: InvalidScalarArgument snippet: $this->setAttribute('failures', 1); selected_text: 1 @@ -96,7 +96,7 @@ message: Argument 2 of - JBZoo\CiReportConverter\JUnit\TestCaseElement::setAttribute expects string, int provided + JBZoo\CIReportConverter\JUnit\TestCaseElement::setAttribute expects string, int provided type: InvalidScalarArgument snippet: $this->setAttribute('errors', (int)$this->getAttribute('errors') + 1); selected_text: (int)$this->getAttribute('errors') + 1 @@ -107,7 +107,7 @@ message: Argument 2 of - JBZoo\CiReportConverter\JUnit\TestCaseElement::setAttribute expects string, int(1) provided + JBZoo\CIReportConverter\JUnit\TestCaseElement::setAttribute expects string, int(1) provided type: InvalidScalarArgument snippet: $this->setAttribute('errors', 1); selected_text: 1 @@ -139,7 +139,7 @@ - message: Method JBZoo\CiReportConverter\JUnit\TestSuiteElement::setName does not + message: Method JBZoo\CIReportConverter\JUnit\TestSuiteElement::setName does not have a return type, expecting void type: MissingReturnType snippet: public function setName($name) @@ -150,7 +150,7 @@ - message: Method JBZoo\CiReportConverter\JUnit\TestSuiteElement::setTimestamp does + message: Method JBZoo\CIReportConverter\JUnit\TestSuiteElement::setTimestamp does not have a return type, expecting void type: MissingReturnType snippet: public function setTimestamp(\DateTime $timestamp) @@ -161,7 +161,7 @@ - message: Method JBZoo\CiReportConverter\JUnit\TestSuiteElement::setTime does not + message: Method JBZoo\CIReportConverter\JUnit\TestSuiteElement::setTime does not have a return type, expecting void type: MissingReturnType snippet: public function setTime($duration) @@ -172,7 +172,7 @@ - message: Method JBZoo\CiReportConverter\JUnit\TestSuiteElement::setHostname does + message: Method JBZoo\CIReportConverter\JUnit\TestSuiteElement::setHostname does not have a return type, expecting void type: MissingReturnType snippet: public function setHostname($hostname) @@ -183,7 +183,7 @@ - message: Method JBZoo\CiReportConverter\JUnit\TestSuiteElement::incrementTestCount + message: Method JBZoo\CIReportConverter\JUnit\TestSuiteElement::incrementTestCount does not have a return type, expecting void type: MissingReturnType snippet: private function incrementTestCount() @@ -195,7 +195,7 @@ message: Method - JBZoo\CiReportConverter\JUnit\TestSuiteElement::incrementFailureCount does not have a return type, expecting + JBZoo\CIReportConverter\JUnit\TestSuiteElement::incrementFailureCount does not have a return type, expecting void type: MissingReturnType snippet: public function incrementFailureCount() @@ -207,7 +207,7 @@ message: Method - JBZoo\CiReportConverter\JUnit\TestSuiteElement::incrementErrorCount does not have a return type, expecting void + JBZoo\CIReportConverter\JUnit\TestSuiteElement::incrementErrorCount does not have a return type, expecting void type: MissingReturnType snippet: public function incrementErrorCount() selected_text: incrementErrorCount @@ -218,7 +218,7 @@ message: Argument 2 of - JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute expects string, float provided + JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute expects string, float provided type: InvalidScalarArgument snippet: $this->setAttribute('time', $duration); selected_text: $duration @@ -229,7 +229,7 @@ message: Argument 2 of - JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int provided + JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int provided type: InvalidScalarArgument snippet: $this->setAttribute('tests', (int)$this->getAttribute('tests') + 1); selected_text: (int)$this->getAttribute('tests') + 1 @@ -240,7 +240,7 @@ message: Argument 2 of - JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int(1) provided + JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int(1) provided type: InvalidScalarArgument snippet: $this->setAttribute('tests', 1); selected_text: 1 @@ -251,7 +251,7 @@ message: Argument 2 of - JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int provided + JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int provided type: InvalidScalarArgument snippet: $this->setAttribute('failures', (int)$this->getAttribute('failures') + 1); selected_text: (int)$this->getAttribute('failures') + 1 @@ -262,7 +262,7 @@ message: Argument 2 of - JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int(1) provided + JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int(1) provided type: InvalidScalarArgument snippet: $this->setAttribute('failures', 1); selected_text: 1 @@ -273,7 +273,7 @@ message: Argument 2 of - JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int provided + JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int provided type: InvalidScalarArgument snippet: $this->setAttribute('errors', (int)$this->getAttribute('errors') + 1); selected_text: (int)$this->getAttribute('errors') + 1 @@ -284,7 +284,7 @@ message: Argument 2 of - JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int(1) provided + JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int(1) provided type: InvalidScalarArgument snippet: $this->setAttribute('errors', 1); selected_text: 1 diff --git a/tests/fixtures/origin/psalm/pylint.log b/tests/fixtures/origin/psalm/pylint.log index 01b5540..4f4d266 100644 --- a/tests/fixtures/origin/psalm/pylint.log +++ b/tests/fixtures/origin/psalm/pylint.log @@ -1,26 +1,26 @@ -src/JUnit/TestCaseElement.php:34: [E0001] MissingReturnType: Method JBZoo\CiReportConverter\JUnit\TestCaseElement::setName does not have a return type, expecting void (column 21) -src/JUnit/TestCaseElement.php:42: [E0001] MissingReturnType: Method JBZoo\CiReportConverter\JUnit\TestCaseElement::setClassname does not have a return type, expecting void (column 21) -src/JUnit/TestCaseElement.php:52: [E0001] MissingReturnType: Method JBZoo\CiReportConverter\JUnit\TestCaseElement::setTime does not have a return type, expecting void (column 21) -src/JUnit/TestCaseElement.php:54: [E0001] InvalidScalarArgument: Argument 2 of JBZoo\CiReportConverter\JUnit\TestCaseElement::setAttribute expects string, float provided (column 37) +src/JUnit/TestCaseElement.php:34: [E0001] MissingReturnType: Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setName does not have a return type, expecting void (column 21) +src/JUnit/TestCaseElement.php:42: [E0001] MissingReturnType: Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setClassname does not have a return type, expecting void (column 21) +src/JUnit/TestCaseElement.php:52: [E0001] MissingReturnType: Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setTime does not have a return type, expecting void (column 21) +src/JUnit/TestCaseElement.php:54: [E0001] InvalidScalarArgument: Argument 2 of JBZoo\CIReportConverter\JUnit\TestCaseElement::setAttribute expects string, float provided (column 37) src/JUnit/TestCaseElement.php:65: [E0001] PossiblyNullReference: Cannot call method createElement on possibly null value (column 47) src/JUnit/TestCaseElement.php:88: [E0001] PossiblyNullReference: Cannot call method createElement on possibly null value (column 49) -src/JUnit/TestCaseElement.php:106: [E0001] MissingReturnType: Method JBZoo\CiReportConverter\JUnit\TestCaseElement::incrementFailureCount does not have a return type, expecting void (column 21) -src/JUnit/TestCaseElement.php:109: [E0001] InvalidScalarArgument: Argument 2 of JBZoo\CiReportConverter\JUnit\TestCaseElement::setAttribute expects string, int provided (column 45) -src/JUnit/TestCaseElement.php:111: [E0001] InvalidScalarArgument: Argument 2 of JBZoo\CiReportConverter\JUnit\TestCaseElement::setAttribute expects string, int(1) provided (column 45) -src/JUnit/TestCaseElement.php:118: [E0001] MissingReturnType: Method JBZoo\CiReportConverter\JUnit\TestCaseElement::incrementErrorCount does not have a return type, expecting void (column 21) -src/JUnit/TestCaseElement.php:121: [E0001] InvalidScalarArgument: Argument 2 of JBZoo\CiReportConverter\JUnit\TestCaseElement::setAttribute expects string, int provided (column 43) -src/JUnit/TestCaseElement.php:123: [E0001] InvalidScalarArgument: Argument 2 of JBZoo\CiReportConverter\JUnit\TestCaseElement::setAttribute expects string, int(1) provided (column 43) -src/JUnit/TestSuiteElement.php:35: [E0001] MissingReturnType: Method JBZoo\CiReportConverter\JUnit\TestSuiteElement::setName does not have a return type, expecting void (column 21) -src/JUnit/TestSuiteElement.php:45: [E0001] MissingReturnType: Method JBZoo\CiReportConverter\JUnit\TestSuiteElement::setTimestamp does not have a return type, expecting void (column 21) -src/JUnit/TestSuiteElement.php:55: [E0001] MissingReturnType: Method JBZoo\CiReportConverter\JUnit\TestSuiteElement::setTime does not have a return type, expecting void (column 21) -src/JUnit/TestSuiteElement.php:57: [E0001] InvalidScalarArgument: Argument 2 of JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute expects string, float provided (column 37) -src/JUnit/TestSuiteElement.php:65: [E0001] MissingReturnType: Method JBZoo\CiReportConverter\JUnit\TestSuiteElement::setHostname does not have a return type, expecting void (column 21) -src/JUnit/TestSuiteElement.php:86: [E0001] MissingReturnType: Method JBZoo\CiReportConverter\JUnit\TestSuiteElement::incrementTestCount does not have a return type, expecting void (column 22) -src/JUnit/TestSuiteElement.php:89: [E0001] InvalidScalarArgument: Argument 2 of JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int provided (column 42) -src/JUnit/TestSuiteElement.php:91: [E0001] InvalidScalarArgument: Argument 2 of JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int(1) provided (column 42) -src/JUnit/TestSuiteElement.php:98: [E0001] MissingReturnType: Method JBZoo\CiReportConverter\JUnit\TestSuiteElement::incrementFailureCount does not have a return type, expecting void (column 21) -src/JUnit/TestSuiteElement.php:101: [E0001] InvalidScalarArgument: Argument 2 of JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int provided (column 45) -src/JUnit/TestSuiteElement.php:103: [E0001] InvalidScalarArgument: Argument 2 of JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int(1) provided (column 45) -src/JUnit/TestSuiteElement.php:110: [E0001] MissingReturnType: Method JBZoo\CiReportConverter\JUnit\TestSuiteElement::incrementErrorCount does not have a return type, expecting void (column 21) -src/JUnit/TestSuiteElement.php:113: [E0001] InvalidScalarArgument: Argument 2 of JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int provided (column 43) -src/JUnit/TestSuiteElement.php:115: [E0001] InvalidScalarArgument: Argument 2 of JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int(1) provided (column 43) +src/JUnit/TestCaseElement.php:106: [E0001] MissingReturnType: Method JBZoo\CIReportConverter\JUnit\TestCaseElement::incrementFailureCount does not have a return type, expecting void (column 21) +src/JUnit/TestCaseElement.php:109: [E0001] InvalidScalarArgument: Argument 2 of JBZoo\CIReportConverter\JUnit\TestCaseElement::setAttribute expects string, int provided (column 45) +src/JUnit/TestCaseElement.php:111: [E0001] InvalidScalarArgument: Argument 2 of JBZoo\CIReportConverter\JUnit\TestCaseElement::setAttribute expects string, int(1) provided (column 45) +src/JUnit/TestCaseElement.php:118: [E0001] MissingReturnType: Method JBZoo\CIReportConverter\JUnit\TestCaseElement::incrementErrorCount does not have a return type, expecting void (column 21) +src/JUnit/TestCaseElement.php:121: [E0001] InvalidScalarArgument: Argument 2 of JBZoo\CIReportConverter\JUnit\TestCaseElement::setAttribute expects string, int provided (column 43) +src/JUnit/TestCaseElement.php:123: [E0001] InvalidScalarArgument: Argument 2 of JBZoo\CIReportConverter\JUnit\TestCaseElement::setAttribute expects string, int(1) provided (column 43) +src/JUnit/TestSuiteElement.php:35: [E0001] MissingReturnType: Method JBZoo\CIReportConverter\JUnit\TestSuiteElement::setName does not have a return type, expecting void (column 21) +src/JUnit/TestSuiteElement.php:45: [E0001] MissingReturnType: Method JBZoo\CIReportConverter\JUnit\TestSuiteElement::setTimestamp does not have a return type, expecting void (column 21) +src/JUnit/TestSuiteElement.php:55: [E0001] MissingReturnType: Method JBZoo\CIReportConverter\JUnit\TestSuiteElement::setTime does not have a return type, expecting void (column 21) +src/JUnit/TestSuiteElement.php:57: [E0001] InvalidScalarArgument: Argument 2 of JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute expects string, float provided (column 37) +src/JUnit/TestSuiteElement.php:65: [E0001] MissingReturnType: Method JBZoo\CIReportConverter\JUnit\TestSuiteElement::setHostname does not have a return type, expecting void (column 21) +src/JUnit/TestSuiteElement.php:86: [E0001] MissingReturnType: Method JBZoo\CIReportConverter\JUnit\TestSuiteElement::incrementTestCount does not have a return type, expecting void (column 22) +src/JUnit/TestSuiteElement.php:89: [E0001] InvalidScalarArgument: Argument 2 of JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int provided (column 42) +src/JUnit/TestSuiteElement.php:91: [E0001] InvalidScalarArgument: Argument 2 of JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int(1) provided (column 42) +src/JUnit/TestSuiteElement.php:98: [E0001] MissingReturnType: Method JBZoo\CIReportConverter\JUnit\TestSuiteElement::incrementFailureCount does not have a return type, expecting void (column 21) +src/JUnit/TestSuiteElement.php:101: [E0001] InvalidScalarArgument: Argument 2 of JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int provided (column 45) +src/JUnit/TestSuiteElement.php:103: [E0001] InvalidScalarArgument: Argument 2 of JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int(1) provided (column 45) +src/JUnit/TestSuiteElement.php:110: [E0001] MissingReturnType: Method JBZoo\CIReportConverter\JUnit\TestSuiteElement::incrementErrorCount does not have a return type, expecting void (column 21) +src/JUnit/TestSuiteElement.php:113: [E0001] InvalidScalarArgument: Argument 2 of JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int provided (column 43) +src/JUnit/TestSuiteElement.php:115: [E0001] InvalidScalarArgument: Argument 2 of JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int(1) provided (column 43) diff --git a/tests/fixtures/origin/psalm/sonarqube.json b/tests/fixtures/origin/psalm/sonarqube.json index bd257ff..98baeb6 100644 --- a/tests/fixtures/origin/psalm/sonarqube.json +++ b/tests/fixtures/origin/psalm/sonarqube.json @@ -4,7 +4,7 @@ "engineId" : "Psalm", "ruleId" : "MissingReturnType", "primaryLocation" : { - "message" : "Method JBZoo\\CiReportConverter\\JUnit\\TestCaseElement::setName does not have a return type, expecting void", + "message" : "Method JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::setName does not have a return type, expecting void", "filePath" : "src\/JUnit\/TestCaseElement.php", "textRange" : { "startLine" : 34, @@ -18,19 +18,19 @@ }, { "engineId" : "Psalm", "ruleId" : "MissingReturnType", "primaryLocation" : { - "message" : "Method JBZoo\\CiReportConverter\\JUnit\\TestCaseElement::setClassname does not have a return type, expecting void", + "message" : "Method JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::setClassname does not have a return type, expecting void", "filePath" : "src\/JUnit\/TestCaseElement.php", "textRange" : {"startLine" : 42, "endLine" : 42, "startColumn" : 20, "endColumn" : 32} }, "type" : "CODE_SMELL", "severity" : "CRITICAL" }, { "engineId" : "Psalm", "ruleId" : "MissingReturnType", "primaryLocation" : { - "message" : "Method JBZoo\\CiReportConverter\\JUnit\\TestCaseElement::setTime does not have a return type, expecting void", + "message" : "Method JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::setTime does not have a return type, expecting void", "filePath" : "src\/JUnit\/TestCaseElement.php", "textRange" : {"startLine" : 52, "endLine" : 52, "startColumn" : 20, "endColumn" : 27} }, "type" : "CODE_SMELL", "severity" : "CRITICAL" }, { "engineId" : "Psalm", "ruleId" : "InvalidScalarArgument", "primaryLocation" : { - "message" : "Argument 2 of JBZoo\\CiReportConverter\\JUnit\\TestCaseElement::setAttribute expects string, float provided", + "message" : "Argument 2 of JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::setAttribute expects string, float provided", "filePath" : "src\/JUnit\/TestCaseElement.php", "textRange" : {"startLine" : 54, "endLine" : 54, "startColumn" : 36, "endColumn" : 41} }, "type" : "CODE_SMELL", "severity" : "CRITICAL" @@ -48,124 +48,124 @@ }, "type" : "CODE_SMELL", "severity" : "CRITICAL" }, { "engineId" : "Psalm", "ruleId" : "MissingReturnType", "primaryLocation" : { - "message" : "Method JBZoo\\CiReportConverter\\JUnit\\TestCaseElement::incrementFailureCount does not have a return type, expecting void", + "message" : "Method JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::incrementFailureCount does not have a return type, expecting void", "filePath" : "src\/JUnit\/TestCaseElement.php", "textRange" : {"startLine" : 106, "endLine" : 106, "startColumn" : 20, "endColumn" : 41} }, "type" : "CODE_SMELL", "severity" : "CRITICAL" }, { "engineId" : "Psalm", "ruleId" : "InvalidScalarArgument", "primaryLocation" : { - "message" : "Argument 2 of JBZoo\\CiReportConverter\\JUnit\\TestCaseElement::setAttribute expects string, int provided", + "message" : "Argument 2 of JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::setAttribute expects string, int provided", "filePath" : "src\/JUnit\/TestCaseElement.php", "textRange" : {"startLine" : 109, "endLine" : 109, "startColumn" : 44, "endColumn" : 84} }, "type" : "CODE_SMELL", "severity" : "CRITICAL" }, { "engineId" : "Psalm", "ruleId" : "InvalidScalarArgument", "primaryLocation" : { - "message" : "Argument 2 of JBZoo\\CiReportConverter\\JUnit\\TestCaseElement::setAttribute expects string, int(1) provided", + "message" : "Argument 2 of JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::setAttribute expects string, int(1) provided", "filePath" : "src\/JUnit\/TestCaseElement.php", "textRange" : {"startLine" : 111, "endLine" : 111, "startColumn" : 44, "endColumn" : 45} }, "type" : "CODE_SMELL", "severity" : "CRITICAL" }, { "engineId" : "Psalm", "ruleId" : "MissingReturnType", "primaryLocation" : { - "message" : "Method JBZoo\\CiReportConverter\\JUnit\\TestCaseElement::incrementErrorCount does not have a return type, expecting void", + "message" : "Method JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::incrementErrorCount does not have a return type, expecting void", "filePath" : "src\/JUnit\/TestCaseElement.php", "textRange" : {"startLine" : 118, "endLine" : 118, "startColumn" : 20, "endColumn" : 39} }, "type" : "CODE_SMELL", "severity" : "CRITICAL" }, { "engineId" : "Psalm", "ruleId" : "InvalidScalarArgument", "primaryLocation" : { - "message" : "Argument 2 of JBZoo\\CiReportConverter\\JUnit\\TestCaseElement::setAttribute expects string, int provided", + "message" : "Argument 2 of JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::setAttribute expects string, int provided", "filePath" : "src\/JUnit\/TestCaseElement.php", "textRange" : {"startLine" : 121, "endLine" : 121, "startColumn" : 42, "endColumn" : 80} }, "type" : "CODE_SMELL", "severity" : "CRITICAL" }, { "engineId" : "Psalm", "ruleId" : "InvalidScalarArgument", "primaryLocation" : { - "message" : "Argument 2 of JBZoo\\CiReportConverter\\JUnit\\TestCaseElement::setAttribute expects string, int(1) provided", + "message" : "Argument 2 of JBZoo\\CIReportConverter\\JUnit\\TestCaseElement::setAttribute expects string, int(1) provided", "filePath" : "src\/JUnit\/TestCaseElement.php", "textRange" : {"startLine" : 123, "endLine" : 123, "startColumn" : 42, "endColumn" : 43} }, "type" : "CODE_SMELL", "severity" : "CRITICAL" }, { "engineId" : "Psalm", "ruleId" : "MissingReturnType", "primaryLocation" : { - "message" : "Method JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::setName does not have a return type, expecting void", + "message" : "Method JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::setName does not have a return type, expecting void", "filePath" : "src\/JUnit\/TestSuiteElement.php", "textRange" : {"startLine" : 35, "endLine" : 35, "startColumn" : 20, "endColumn" : 27} }, "type" : "CODE_SMELL", "severity" : "CRITICAL" }, { "engineId" : "Psalm", "ruleId" : "MissingReturnType", "primaryLocation" : { - "message" : "Method JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::setTimestamp does not have a return type, expecting void", + "message" : "Method JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::setTimestamp does not have a return type, expecting void", "filePath" : "src\/JUnit\/TestSuiteElement.php", "textRange" : {"startLine" : 45, "endLine" : 45, "startColumn" : 20, "endColumn" : 32} }, "type" : "CODE_SMELL", "severity" : "CRITICAL" }, { "engineId" : "Psalm", "ruleId" : "MissingReturnType", "primaryLocation" : { - "message" : "Method JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::setTime does not have a return type, expecting void", + "message" : "Method JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::setTime does not have a return type, expecting void", "filePath" : "src\/JUnit\/TestSuiteElement.php", "textRange" : {"startLine" : 55, "endLine" : 55, "startColumn" : 20, "endColumn" : 27} }, "type" : "CODE_SMELL", "severity" : "CRITICAL" }, { "engineId" : "Psalm", "ruleId" : "InvalidScalarArgument", "primaryLocation" : { - "message" : "Argument 2 of JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::setAttribute expects string, float provided", + "message" : "Argument 2 of JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::setAttribute expects string, float provided", "filePath" : "src\/JUnit\/TestSuiteElement.php", "textRange" : {"startLine" : 57, "endLine" : 57, "startColumn" : 36, "endColumn" : 45} }, "type" : "CODE_SMELL", "severity" : "CRITICAL" }, { "engineId" : "Psalm", "ruleId" : "MissingReturnType", "primaryLocation" : { - "message" : "Method JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::setHostname does not have a return type, expecting void", + "message" : "Method JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::setHostname does not have a return type, expecting void", "filePath" : "src\/JUnit\/TestSuiteElement.php", "textRange" : {"startLine" : 65, "endLine" : 65, "startColumn" : 20, "endColumn" : 31} }, "type" : "CODE_SMELL", "severity" : "CRITICAL" }, { "engineId" : "Psalm", "ruleId" : "MissingReturnType", "primaryLocation" : { - "message" : "Method JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::incrementTestCount does not have a return type, expecting void", + "message" : "Method JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::incrementTestCount does not have a return type, expecting void", "filePath" : "src\/JUnit\/TestSuiteElement.php", "textRange" : {"startLine" : 86, "endLine" : 86, "startColumn" : 21, "endColumn" : 39} }, "type" : "CODE_SMELL", "severity" : "CRITICAL" }, { "engineId" : "Psalm", "ruleId" : "InvalidScalarArgument", "primaryLocation" : { - "message" : "Argument 2 of JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::setAttribute expects string, int provided", + "message" : "Argument 2 of JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::setAttribute expects string, int provided", "filePath" : "src\/JUnit\/TestSuiteElement.php", "textRange" : {"startLine" : 89, "endLine" : 89, "startColumn" : 41, "endColumn" : 78} }, "type" : "CODE_SMELL", "severity" : "CRITICAL" }, { "engineId" : "Psalm", "ruleId" : "InvalidScalarArgument", "primaryLocation" : { - "message" : "Argument 2 of JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::setAttribute expects string, int(1) provided", + "message" : "Argument 2 of JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::setAttribute expects string, int(1) provided", "filePath" : "src\/JUnit\/TestSuiteElement.php", "textRange" : {"startLine" : 91, "endLine" : 91, "startColumn" : 41, "endColumn" : 42} }, "type" : "CODE_SMELL", "severity" : "CRITICAL" }, { "engineId" : "Psalm", "ruleId" : "MissingReturnType", "primaryLocation" : { - "message" : "Method JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::incrementFailureCount does not have a return type, expecting void", + "message" : "Method JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::incrementFailureCount does not have a return type, expecting void", "filePath" : "src\/JUnit\/TestSuiteElement.php", "textRange" : {"startLine" : 98, "endLine" : 98, "startColumn" : 20, "endColumn" : 41} }, "type" : "CODE_SMELL", "severity" : "CRITICAL" }, { "engineId" : "Psalm", "ruleId" : "InvalidScalarArgument", "primaryLocation" : { - "message" : "Argument 2 of JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::setAttribute expects string, int provided", + "message" : "Argument 2 of JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::setAttribute expects string, int provided", "filePath" : "src\/JUnit\/TestSuiteElement.php", "textRange" : {"startLine" : 101, "endLine" : 101, "startColumn" : 44, "endColumn" : 84} }, "type" : "CODE_SMELL", "severity" : "CRITICAL" }, { "engineId" : "Psalm", "ruleId" : "InvalidScalarArgument", "primaryLocation" : { - "message" : "Argument 2 of JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::setAttribute expects string, int(1) provided", + "message" : "Argument 2 of JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::setAttribute expects string, int(1) provided", "filePath" : "src\/JUnit\/TestSuiteElement.php", "textRange" : {"startLine" : 103, "endLine" : 103, "startColumn" : 44, "endColumn" : 45} }, "type" : "CODE_SMELL", "severity" : "CRITICAL" }, { "engineId" : "Psalm", "ruleId" : "MissingReturnType", "primaryLocation" : { - "message" : "Method JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::incrementErrorCount does not have a return type, expecting void", + "message" : "Method JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::incrementErrorCount does not have a return type, expecting void", "filePath" : "src\/JUnit\/TestSuiteElement.php", "textRange" : {"startLine" : 110, "endLine" : 110, "startColumn" : 20, "endColumn" : 39} }, "type" : "CODE_SMELL", "severity" : "CRITICAL" }, { "engineId" : "Psalm", "ruleId" : "InvalidScalarArgument", "primaryLocation" : { - "message" : "Argument 2 of JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::setAttribute expects string, int provided", + "message" : "Argument 2 of JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::setAttribute expects string, int provided", "filePath" : "src\/JUnit\/TestSuiteElement.php", "textRange" : {"startLine" : 113, "endLine" : 113, "startColumn" : 42, "endColumn" : 80} }, "type" : "CODE_SMELL", "severity" : "CRITICAL" }, { "engineId" : "Psalm", "ruleId" : "InvalidScalarArgument", "primaryLocation" : { - "message" : "Argument 2 of JBZoo\\CiReportConverter\\JUnit\\TestSuiteElement::setAttribute expects string, int(1) provided", + "message" : "Argument 2 of JBZoo\\CIReportConverter\\JUnit\\TestSuiteElement::setAttribute expects string, int(1) provided", "filePath" : "src\/JUnit\/TestSuiteElement.php", "textRange" : {"startLine" : 115, "endLine" : 115, "startColumn" : 42, "endColumn" : 43} }, "type" : "CODE_SMELL", "severity" : "CRITICAL" } ] -} \ No newline at end of file +} diff --git a/tests/fixtures/origin/psalm/xml.xml b/tests/fixtures/origin/psalm/xml.xml index d57f60c..45542d9 100644 --- a/tests/fixtures/origin/psalm/xml.xml +++ b/tests/fixtures/origin/psalm/xml.xml @@ -5,7 +5,7 @@ 34 34 MissingReturnType - Method JBZoo\CiReportConverter\JUnit\TestCaseElement::setName does not have a return type, expecting void + Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setName does not have a return type, expecting void src/JUnit/TestCaseElement.php /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElement.php public function setName($name) @@ -26,7 +26,7 @@ 42 42 MissingReturnType - Method JBZoo\CiReportConverter\JUnit\TestCaseElement::setClassname does not have a return type, expecting void + Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setClassname does not have a return type, expecting void src/JUnit/TestCaseElement.php /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElement.php public function setClassname($classname) @@ -47,7 +47,7 @@ 52 52 MissingReturnType - Method JBZoo\CiReportConverter\JUnit\TestCaseElement::setTime does not have a return type, expecting void + Method JBZoo\CIReportConverter\JUnit\TestCaseElement::setTime does not have a return type, expecting void src/JUnit/TestCaseElement.php /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElement.php public function setTime($time) @@ -68,7 +68,7 @@ 54 54 InvalidScalarArgument - Argument 2 of JBZoo\CiReportConverter\JUnit\TestCaseElement::setAttribute expects string, float provided + Argument 2 of JBZoo\CIReportConverter\JUnit\TestCaseElement::setAttribute expects string, float provided src/JUnit/TestCaseElement.php /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElement.php $this->setAttribute('time', $time); @@ -131,7 +131,7 @@ 106 106 MissingReturnType - Method JBZoo\CiReportConverter\JUnit\TestCaseElement::incrementFailureCount does not have a return type, expecting void + Method JBZoo\CIReportConverter\JUnit\TestCaseElement::incrementFailureCount does not have a return type, expecting void src/JUnit/TestCaseElement.php /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElement.php public function incrementFailureCount() @@ -152,7 +152,7 @@ 109 109 InvalidScalarArgument - Argument 2 of JBZoo\CiReportConverter\JUnit\TestCaseElement::setAttribute expects string, int provided + Argument 2 of JBZoo\CIReportConverter\JUnit\TestCaseElement::setAttribute expects string, int provided src/JUnit/TestCaseElement.php /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElement.php $this->setAttribute('failures', (int)$this->getAttribute('failures') + 1); @@ -173,7 +173,7 @@ 111 111 InvalidScalarArgument - Argument 2 of JBZoo\CiReportConverter\JUnit\TestCaseElement::setAttribute expects string, int(1) provided + Argument 2 of JBZoo\CIReportConverter\JUnit\TestCaseElement::setAttribute expects string, int(1) provided src/JUnit/TestCaseElement.php /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElement.php $this->setAttribute('failures', 1); @@ -194,7 +194,7 @@ 118 118 MissingReturnType - Method JBZoo\CiReportConverter\JUnit\TestCaseElement::incrementErrorCount does not have a return type, expecting void + Method JBZoo\CIReportConverter\JUnit\TestCaseElement::incrementErrorCount does not have a return type, expecting void src/JUnit/TestCaseElement.php /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElement.php public function incrementErrorCount() @@ -215,7 +215,7 @@ 121 121 InvalidScalarArgument - Argument 2 of JBZoo\CiReportConverter\JUnit\TestCaseElement::setAttribute expects string, int provided + Argument 2 of JBZoo\CIReportConverter\JUnit\TestCaseElement::setAttribute expects string, int provided src/JUnit/TestCaseElement.php /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElement.php $this->setAttribute('errors', (int)$this->getAttribute('errors') + 1); @@ -236,7 +236,7 @@ 123 123 InvalidScalarArgument - Argument 2 of JBZoo\CiReportConverter\JUnit\TestCaseElement::setAttribute expects string, int(1) provided + Argument 2 of JBZoo\CIReportConverter\JUnit\TestCaseElement::setAttribute expects string, int(1) provided src/JUnit/TestCaseElement.php /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestCaseElement.php $this->setAttribute('errors', 1); @@ -257,7 +257,7 @@ 35 35 MissingReturnType - Method JBZoo\CiReportConverter\JUnit\TestSuiteElement::setName does not have a return type, expecting void + Method JBZoo\CIReportConverter\JUnit\TestSuiteElement::setName does not have a return type, expecting void src/JUnit/TestSuiteElement.php /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestSuiteElement.php public function setName($name) @@ -278,7 +278,7 @@ 45 45 MissingReturnType - Method JBZoo\CiReportConverter\JUnit\TestSuiteElement::setTimestamp does not have a return type, expecting void + Method JBZoo\CIReportConverter\JUnit\TestSuiteElement::setTimestamp does not have a return type, expecting void src/JUnit/TestSuiteElement.php /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestSuiteElement.php public function setTimestamp(\DateTime $timestamp) @@ -299,7 +299,7 @@ 55 55 MissingReturnType - Method JBZoo\CiReportConverter\JUnit\TestSuiteElement::setTime does not have a return type, expecting void + Method JBZoo\CIReportConverter\JUnit\TestSuiteElement::setTime does not have a return type, expecting void src/JUnit/TestSuiteElement.php /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestSuiteElement.php public function setTime($duration) @@ -320,7 +320,7 @@ 57 57 InvalidScalarArgument - Argument 2 of JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute expects string, float provided + Argument 2 of JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute expects string, float provided src/JUnit/TestSuiteElement.php /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestSuiteElement.php $this->setAttribute('time', $duration); @@ -341,7 +341,7 @@ 65 65 MissingReturnType - Method JBZoo\CiReportConverter\JUnit\TestSuiteElement::setHostname does not have a return type, expecting void + Method JBZoo\CIReportConverter\JUnit\TestSuiteElement::setHostname does not have a return type, expecting void src/JUnit/TestSuiteElement.php /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestSuiteElement.php public function setHostname($hostname) @@ -362,7 +362,7 @@ 86 86 MissingReturnType - Method JBZoo\CiReportConverter\JUnit\TestSuiteElement::incrementTestCount does not have a return type, expecting void + Method JBZoo\CIReportConverter\JUnit\TestSuiteElement::incrementTestCount does not have a return type, expecting void src/JUnit/TestSuiteElement.php /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestSuiteElement.php private function incrementTestCount() @@ -383,7 +383,7 @@ 89 89 InvalidScalarArgument - Argument 2 of JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int provided + Argument 2 of JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int provided src/JUnit/TestSuiteElement.php /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestSuiteElement.php $this->setAttribute('tests', (int)$this->getAttribute('tests') + 1); @@ -404,7 +404,7 @@ 91 91 InvalidScalarArgument - Argument 2 of JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int(1) provided + Argument 2 of JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int(1) provided src/JUnit/TestSuiteElement.php /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestSuiteElement.php $this->setAttribute('tests', 1); @@ -425,7 +425,7 @@ 98 98 MissingReturnType - Method JBZoo\CiReportConverter\JUnit\TestSuiteElement::incrementFailureCount does not have a return type, expecting void + Method JBZoo\CIReportConverter\JUnit\TestSuiteElement::incrementFailureCount does not have a return type, expecting void src/JUnit/TestSuiteElement.php /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestSuiteElement.php public function incrementFailureCount() @@ -446,7 +446,7 @@ 101 101 InvalidScalarArgument - Argument 2 of JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int provided + Argument 2 of JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int provided src/JUnit/TestSuiteElement.php /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestSuiteElement.php $this->setAttribute('failures', (int)$this->getAttribute('failures') + 1); @@ -467,7 +467,7 @@ 103 103 InvalidScalarArgument - Argument 2 of JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int(1) provided + Argument 2 of JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int(1) provided src/JUnit/TestSuiteElement.php /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestSuiteElement.php $this->setAttribute('failures', 1); @@ -488,7 +488,7 @@ 110 110 MissingReturnType - Method JBZoo\CiReportConverter\JUnit\TestSuiteElement::incrementErrorCount does not have a return type, expecting void + Method JBZoo\CIReportConverter\JUnit\TestSuiteElement::incrementErrorCount does not have a return type, expecting void src/JUnit/TestSuiteElement.php /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestSuiteElement.php public function incrementErrorCount() @@ -509,7 +509,7 @@ 113 113 InvalidScalarArgument - Argument 2 of JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int provided + Argument 2 of JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int provided src/JUnit/TestSuiteElement.php /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestSuiteElement.php $this->setAttribute('errors', (int)$this->getAttribute('errors') + 1); @@ -530,7 +530,7 @@ 115 115 InvalidScalarArgument - Argument 2 of JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int(1) provided + Argument 2 of JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute expects string, int(1) provided src/JUnit/TestSuiteElement.php /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/JUnit/TestSuiteElement.php $this->setAttribute('errors', 1); diff --git a/tests/fixtures/test-cases/ConverterGitLabJsonTest/testCodeStyle.json b/tests/fixtures/test-cases/ConverterGitLabJsonTest/testCodeStyle.json index 7f84274..0af19ef 100644 --- a/tests/fixtures/test-cases/ConverterGitLabJsonTest/testCodeStyle.json +++ b/tests/fixtures/test-cases/ConverterGitLabJsonTest/testCodeStyle.json @@ -32,4 +32,4 @@ } } } -] \ No newline at end of file +] diff --git a/tests/fixtures/test-cases/ConverterGitLabJsonTest/testJUnitNested.json b/tests/fixtures/test-cases/ConverterGitLabJsonTest/testJUnitNested.json index 04b5e31..7485ffb 100644 --- a/tests/fixtures/test-cases/ConverterGitLabJsonTest/testJUnitNested.json +++ b/tests/fixtures/test-cases/ConverterGitLabJsonTest/testJUnitNested.json @@ -120,4 +120,4 @@ } } } -] \ No newline at end of file +] diff --git a/tests/fixtures/test-cases/ConverterGitLabJsonTest/testJUnitSimple.json b/tests/fixtures/test-cases/ConverterGitLabJsonTest/testJUnitSimple.json index 2b6efca..b1da039 100644 --- a/tests/fixtures/test-cases/ConverterGitLabJsonTest/testJUnitSimple.json +++ b/tests/fixtures/test-cases/ConverterGitLabJsonTest/testJUnitSimple.json @@ -98,4 +98,4 @@ } } } -] \ No newline at end of file +] diff --git a/tests/fixtures/test-cases/ConverterGitLabJsonTest/testPmdCpdXml.json b/tests/fixtures/test-cases/ConverterGitLabJsonTest/testPmdCpdXml.json index 9eac1ed..7e1eb4a 100644 --- a/tests/fixtures/test-cases/ConverterGitLabJsonTest/testPmdCpdXml.json +++ b/tests/fixtures/test-cases/ConverterGitLabJsonTest/testPmdCpdXml.json @@ -1,7 +1,7 @@ [ { - "description": "Found 24 cloned lines in 3 files (34 tokens):\n- src\/Helper.php:16-40\n- src\/Helper1.php:17-41\n- src\/Helper2.php:18-42\n\nCode Fragment:\n```\ndeclare(strict_types=1);\n\nnamespace JBZoo\\CiReportConverter;\n\nuse JBZoo\\Utils\\Str;\n\n\/**\n * Class Helper\n * @package JBZoo\\CiReportConverter\n *\/\nclass Helper\n{\n \/**\n * @param array $data\n * @return string|null\n *\/\n public static function descAsList(array $data): ?string\n {\n $result = Str::listToDescription($data, true);\n if (null === $result) {\n return null;\n }\n\n return \"\\n{$result}\";\n\n```", - "fingerprint": "bdb6af15462990297d3b73e27a491c6877c71feb763062953dda7429b9e439d0", + "description": "Found 24 cloned lines in 3 files (34 tokens):\n- src\/Helper.php:16-40\n- src\/Helper1.php:17-41\n- src\/Helper2.php:18-42\n\nCode Fragment:\n```\ndeclare(strict_types=1);\n\nnamespace JBZoo\\CIReportConverter;\n\nuse JBZoo\\Utils\\Str;\n\n\/**\n * Class Helper\n * @package JBZoo\\CIReportConverter\n *\/\nclass Helper\n{\n \/**\n * @param array $data\n * @return string|null\n *\/\n public static function descAsList(array $data): ?string\n {\n $result = Str::listToDescription($data, true);\n if (null === $result) {\n return null;\n }\n\n return \"\\n{$result}\";\n\n```", + "fingerprint": "0dca3390b2a17a8b7f53ce826ab67cbb4a580a1f41dfe55a12287a37c0f47891", "severity": "major", "location": { "path": "src\/Helper.php", @@ -65,4 +65,4 @@ } } } -] \ No newline at end of file +] diff --git a/tests/fixtures/test-cases/ConverterPlainTextTest/testCheckStyle.txt b/tests/fixtures/test-cases/ConverterPlainTextTest/testCheckStyle.txt index 7bc3b2d..bbea7d0 100644 --- a/tests/fixtures/test-cases/ConverterPlainTextTest/testCheckStyle.txt +++ b/tests/fixtures/test-cases/ConverterPlainTextTest/testCheckStyle.txt @@ -2,14 +2,14 @@ +-------------+----------+---------------- src/JUnit/JUnitXml.php ------------------------------------------+ | Line:Column | Severity | Message | +-------------+----------+----------------------------------------------------------------------------------+ -| 37 | Error | Assigning $this->rootElement of type \DOMElement|false to property but \JBZoo\Ci | +| 37 | Error | Assigning $this->rootElement of type \DOMElement|false to property but \JBZoo\CI | | | | ReportConverter\JUnit\JUnitXml->rootElement is \DOMElement (false is incompatibl | | | | e) | | | | Rule : PhanPossiblyFalseTypeMismatchProperty | | | | File Path: src/JUnit/JUnitXml.php:37 | | | | Severity : warning | +-------------+----------+----------------------------------------------------------------------------------+ -| 44 | Error | Can use \JBZoo\CiReportConverter\JUnit\TestSuiteElement as a return type of addT | +| 44 | Error | Can use \JBZoo\CIReportConverter\JUnit\TestSuiteElement as a return type of addT | | | | estSuite | | | | Rule : PhanPluginCanUseReturnType | | | | File Path: src/JUnit/JUnitXml.php:44 | @@ -26,7 +26,7 @@ | | | Severity : warning | +-------------+----------+----------------------------------------------------------------------------------+ | 36 | Error | Suspicious order for argument name - This is getting passed to parameter #1 (str | -| | | ing $name) of \JBZoo\CiReportConverter\JUnit\TestCaseElement::setAttribute(strin | +| | | ing $name) of \JBZoo\CIReportConverter\JUnit\TestCaseElement::setAttribute(strin | | | | g $name, string $value) | | | | Rule : PhanPluginSuspiciousParamPositionInternal | | | | File Path: src/JUnit/TestCaseElement.php:36 | @@ -48,7 +48,7 @@ | | | Severity : warning | +-------------+----------+----------------------------------------------------------------------------------+ | 37 | Error | Suspicious order for argument name - This is getting passed to parameter #1 (str | -| | | ing $name) of \JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute(stri | +| | | ing $name) of \JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute(stri | | | | ng $name, string $value) | | | | Rule : PhanPluginSuspiciousParamPositionInternal | | | | File Path: src/JUnit/TestSuiteElement.php:37 | diff --git a/tests/fixtures/test-cases/ConverterPmdCpdTest/testToJUnit.xml b/tests/fixtures/test-cases/ConverterPmdCpdTest/testToJUnit.xml index 338bcf7..c664c89 100644 --- a/tests/fixtures/test-cases/ConverterPmdCpdTest/testToJUnit.xml +++ b/tests/fixtures/test-cases/ConverterPmdCpdTest/testToJUnit.xml @@ -12,13 +12,13 @@ Code Fragment: ``` declare(strict_types=1); -namespace JBZoo\CiReportConverter; +namespace JBZoo\CIReportConverter; use JBZoo\Utils\Str; /** * Class Helper - * @package JBZoo\CiReportConverter + * @package JBZoo\CIReportConverter */ class Helper { diff --git a/tests/fixtures/test-cases/ConverterPmdCpdTest/testToTeamCity.txt b/tests/fixtures/test-cases/ConverterPmdCpdTest/testToTeamCity.txt index 50330a7..69d2761 100644 --- a/tests/fixtures/test-cases/ConverterPmdCpdTest/testToTeamCity.txt +++ b/tests/fixtures/test-cases/ConverterPmdCpdTest/testToTeamCity.txt @@ -5,7 +5,7 @@ ##teamcity[testStarted name='src/Helper.php:16-40 (24 lines)' locationHint='php_qn:///Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Helper.php' flowId='42'] -##teamcity[testFailed name='src/Helper.php:16-40 (24 lines)' message='Found 24 cloned lines in 3 files (34 tokens):' details=' - /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Helper.php:16-40|n - /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Helper1.php:17-41|n - /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Helper2.php:18-42|n |n Code Fragment:|n ```|n declare(strict_types=1);|n |n namespace JBZoo\CiReportConverter;|n |n use JBZoo\Utils\Str;|n |n /**|n * Class Helper|n * @package JBZoo\CiReportConverter|n */|n class Helper|n {|n /**|n * @param array $data|n * @return string||null|n */|n public static function descAsList(array $data): ?string|n {|n $result = Str::listToDescription($data, true);|n if (null === $result) {|n return null;|n }|n |n return "\n{$result}";|n |n ```' flowId='42'] +##teamcity[testFailed name='src/Helper.php:16-40 (24 lines)' message='Found 24 cloned lines in 3 files (34 tokens):' details=' - /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Helper.php:16-40|n - /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Helper1.php:17-41|n - /Users/smetdenis/Work/projects/jbzoo-ci-report-converter/src/Helper2.php:18-42|n |n Code Fragment:|n ```|n declare(strict_types=1);|n |n namespace JBZoo\CIReportConverter;|n |n use JBZoo\Utils\Str;|n |n /**|n * Class Helper|n * @package JBZoo\CIReportConverter|n */|n class Helper|n {|n /**|n * @param array $data|n * @return string||null|n */|n public static function descAsList(array $data): ?string|n {|n $result = Str::listToDescription($data, true);|n if (null === $result) {|n return null;|n }|n |n return "\n{$result}";|n |n ```' flowId='42'] ##teamcity[testFinished name='src/Helper.php:16-40 (24 lines)' flowId='42'] diff --git a/tests/fixtures/test-cases/ConverterTeamCityInspectionsTest/testPhanCodeStyle.txt b/tests/fixtures/test-cases/ConverterTeamCityInspectionsTest/testPhanCodeStyle.txt index 789f152..18a3f8e 100644 --- a/tests/fixtures/test-cases/ConverterTeamCityInspectionsTest/testPhanCodeStyle.txt +++ b/tests/fixtures/test-cases/ConverterTeamCityInspectionsTest/testPhanCodeStyle.txt @@ -1,11 +1,11 @@ ##teamcity[inspectionType id='CheckStyle:PhanPossiblyFalseTypeMismatchProperty' name='PhanPossiblyFalseTypeMismatchProperty' category='CheckStyle' description='Issues found while checking coding standards' flowId='1'] -##teamcity[inspection typeId='CheckStyle:PhanPossiblyFalseTypeMismatchProperty' file='src/JUnit/JUnitXml.php' line='37' message='------------------------------------------------------------------------------------------------------------------------|nsrc/JUnit/JUnitXml.php line 37|nAssigning $this->rootElement of type \DOMElement||false to property but \JBZoo\CiReportConverter\JUnit\JUnitXml->rootElement is \DOMElement (false is incompatible)|n Rule : PhanPossiblyFalseTypeMismatchProperty|n File Path: src/JUnit/JUnitXml.php:37|n Severity : warning' SEVERITY='ERROR' flowId='1'] +##teamcity[inspection typeId='CheckStyle:PhanPossiblyFalseTypeMismatchProperty' file='src/JUnit/JUnitXml.php' line='37' message='------------------------------------------------------------------------------------------------------------------------|nsrc/JUnit/JUnitXml.php line 37|nAssigning $this->rootElement of type \DOMElement||false to property but \JBZoo\CIReportConverter\JUnit\JUnitXml->rootElement is \DOMElement (false is incompatible)|n Rule : PhanPossiblyFalseTypeMismatchProperty|n File Path: src/JUnit/JUnitXml.php:37|n Severity : warning' SEVERITY='ERROR' flowId='1'] ##teamcity[inspectionType id='CheckStyle:PhanPluginCanUseReturnType' name='PhanPluginCanUseReturnType' category='CheckStyle' description='Issues found while checking coding standards' flowId='1'] -##teamcity[inspection typeId='CheckStyle:PhanPluginCanUseReturnType' file='src/JUnit/JUnitXml.php' line='44' message='------------------------------------------------------------------------------------------------------------------------|nsrc/JUnit/JUnitXml.php line 44|nCan use \JBZoo\CiReportConverter\JUnit\TestSuiteElement as a return type of addTestSuite|n Rule : PhanPluginCanUseReturnType|n File Path: src/JUnit/JUnitXml.php:44|n Severity : warning' SEVERITY='ERROR' flowId='1'] +##teamcity[inspection typeId='CheckStyle:PhanPluginCanUseReturnType' file='src/JUnit/JUnitXml.php' line='44' message='------------------------------------------------------------------------------------------------------------------------|nsrc/JUnit/JUnitXml.php line 44|nCan use \JBZoo\CIReportConverter\JUnit\TestSuiteElement as a return type of addTestSuite|n Rule : PhanPluginCanUseReturnType|n File Path: src/JUnit/JUnitXml.php:44|n Severity : warning' SEVERITY='ERROR' flowId='1'] ##teamcity[inspectionType id='CheckStyle:PhanPluginCanUseParamType' name='PhanPluginCanUseParamType' category='CheckStyle' description='Issues found while checking coding standards' flowId='1'] @@ -13,10 +13,10 @@ ##teamcity[inspectionType id='CheckStyle:PhanPluginSuspiciousParamPositionInternal' name='PhanPluginSuspiciousParamPositionInternal' category='CheckStyle' description='Issues found while checking coding standards' flowId='1'] -##teamcity[inspection typeId='CheckStyle:PhanPluginSuspiciousParamPositionInternal' file='src/JUnit/TestCaseElement.php' line='36' message='------------------------------------------------------------------------------------------------------------------------|nsrc/JUnit/TestCaseElement.php line 36|nSuspicious order for argument name - This is getting passed to parameter #1 (string $name) of \JBZoo\CiReportConverter\JUnit\TestCaseElement::setAttribute(string $name, string $value)|n Rule : PhanPluginSuspiciousParamPositionInternal|n File Path: src/JUnit/TestCaseElement.php:36|n Severity : warning' SEVERITY='ERROR' flowId='1'] +##teamcity[inspection typeId='CheckStyle:PhanPluginSuspiciousParamPositionInternal' file='src/JUnit/TestCaseElement.php' line='36' message='------------------------------------------------------------------------------------------------------------------------|nsrc/JUnit/TestCaseElement.php line 36|nSuspicious order for argument name - This is getting passed to parameter #1 (string $name) of \JBZoo\CIReportConverter\JUnit\TestCaseElement::setAttribute(string $name, string $value)|n Rule : PhanPluginSuspiciousParamPositionInternal|n File Path: src/JUnit/TestCaseElement.php:36|n Severity : warning' SEVERITY='ERROR' flowId='1'] ##teamcity[inspection typeId='CheckStyle:PhanPluginCanUseParamType' file='src/JUnit/TestCaseElement.php' line='42' message='------------------------------------------------------------------------------------------------------------------------|nsrc/JUnit/TestCaseElement.php line 42|nCan use string as the type of parameter $classname of setClassname|n Rule : PhanPluginCanUseParamType|n File Path: src/JUnit/TestCaseElement.php:42|n Severity : warning' SEVERITY='ERROR' flowId='1'] ##teamcity[inspection typeId='CheckStyle:PhanPluginCanUseParamType' file='src/JUnit/TestSuiteElement.php' line='35' message='------------------------------------------------------------------------------------------------------------------------|nsrc/JUnit/TestSuiteElement.php line 35|nCan use string as the type of parameter $name of setName|n Rule : PhanPluginCanUseParamType|n File Path: src/JUnit/TestSuiteElement.php:35|n Severity : warning' SEVERITY='ERROR' flowId='1'] -##teamcity[inspection typeId='CheckStyle:PhanPluginSuspiciousParamPositionInternal' file='src/JUnit/TestSuiteElement.php' line='37' message='------------------------------------------------------------------------------------------------------------------------|nsrc/JUnit/TestSuiteElement.php line 37|nSuspicious order for argument name - This is getting passed to parameter #1 (string $name) of \JBZoo\CiReportConverter\JUnit\TestSuiteElement::setAttribute(string $name, string $value)|n Rule : PhanPluginSuspiciousParamPositionInternal|n File Path: src/JUnit/TestSuiteElement.php:37|n Severity : warning' SEVERITY='ERROR' flowId='1'] +##teamcity[inspection typeId='CheckStyle:PhanPluginSuspiciousParamPositionInternal' file='src/JUnit/TestSuiteElement.php' line='37' message='------------------------------------------------------------------------------------------------------------------------|nsrc/JUnit/TestSuiteElement.php line 37|nSuspicious order for argument name - This is getting passed to parameter #1 (string $name) of \JBZoo\CIReportConverter\JUnit\TestSuiteElement::setAttribute(string $name, string $value)|n Rule : PhanPluginSuspiciousParamPositionInternal|n File Path: src/JUnit/TestSuiteElement.php:37|n Severity : warning' SEVERITY='ERROR' flowId='1']