artisansdk / bench
A set of testing and package development tools for the developer work bench.
Requires
- php: >=7.0 | >= 8.0
- brianium/paratest: ~6.2
- friendsofphp/php-cs-fixer: ~2.10 | ~3.0
- illuminate/console: 5.5 - 5.8 | ^6.0 | ^7.0 | ^8.0
- illuminate/support: 5.5 - 5.8 | ^6.0 | ^7.0 | ^8.0
- laravel-zero/framework: 5.5 - 5.8 | ^6.0 | ^7.0 | ^8.0
- pdepend/pdepend: ~2.5
- phploc/phploc: ~7.0
- phpmd/phpmd: ~2.6
- phpunit/phpunit: ~7.5 | ~8.0 | ~9.0
- sebastian/phpcpd: ~6.0
- symfony/console: ~4.2 | ~5.0
- symfony/event-dispatcher: ~4.2 | ~5.0
- symfony/stopwatch: ~4.2 | ~5.0
This package is auto-updated.
Last update: 2022-06-26 21:14:38 UTC
README
A set of testing and package development tools for the developer work bench.
Table of Contents
Installation
The tool chain installs into a PHP application like any other PHP package:
composer require --dev artisansdk/bench
Usage Guide
php artisan bench:fix [path] [--rules=/file/path] [--cache=/file/path] [--pretend]
php artisan bench:test [path] [--filter=] [--suite=] [--processes=] [--no-coverage]
php artisan bench:watch [path]
php artisan bench:report [--min-line-coverage=80] [--max-line-duplication=3] [--max-token-duplication=35]
Running the Tests
The package is unit tested with 100% line coverage and path coverage. You can
run the tests by simply cloning the source, installing the dependencies, and then
running ./vendor/bin/phpunit
. Additionally included in the developer dependencies
are some Composer scripts which can assist with Code Styling and coverage reporting:
composer test
composer watch
composer fix
composer report
See the composer.json
for more details on their execution and reporting output.
Note that composer watch
relies upon watchman-make
.
Additionally composer report
assumes a Unix system to run line coverage reporting.
Configure the command setting the value for min = 80
to set your minimum line
coverage requirements.
Licensing
Copyright (c) 2018-2019 Artisans Collaborative
This package is released under the MIT license. Please see the LICENSE file distributed with every copy of the code for commercial licensing terms.