Provides extra functionnalities to existing PHP Unit skeleton generator
PHPUnit skelgen module that brings several improvement to the generation code, (*1)
Note:, (*2)
This module is a work-around program I made for personal needs but that may fit yours too. Consider it in development ; you can send issues and I'll try as much as possible to answer them on my personal time depending on my schedule., (*3)
The primary goal of this library was to help php-unit-skelgen being less brutal : When (re)generating test classes, one could hope to generate only unimplemented tests or force update of given methods according to given arguments. The default behavior of this library is :
- generate methods following @assert...
convention (such as PHPUnit Skeleton Generator already does) if they do not exist or explicitely notice they need a force update (@ForceUpdate
)
- keep existing declared class members aswell as constants, (*4)
This component is available as a composer package (https://packagist.org/packages/mbergeon/php-unit-skell-n-gen) :, (*5)
composer require mbergeon/php-unit-skell-n-gen
or
composer.phar require mbergeon/php-unit-skell-n-gen
, (*6)
Update your /PATH/TO/PHPUNIT_SKELGEN/CLI/Application.php like so :, (*7)
use SkellNGen\CLI\UpdateTestCommand; class Application extends AbstractApplication { public function __construct() { //... add the following line to the existing content $this->add(new UpdateTestCommand); }
And the component will do the necessary to operate (thanks to Symfony Command component), (*8)
Just as you would do with classic PHPUnit Skeleton Generator' commands :, (*9)
PATH/TO/PHP_UNIT_FOLDER/phpunit-skelgen <command>
, (*10)
update-test [-s|--strict] [--bootstrap BOOTSTRAP] [--] <class> [<class-source>] [<test-class>] [<test-source>]
, (*11)
Options:, (*12)
- --strict : Delete test methods that do not explicitely implement tests for a source class method (based on their name)