Install via Composer:
...
"require-dev": {
"task/phpunit": "~0.2"
}
...use Task\Plugin\PHPUnitPlugin;
$project->inject(function ($container) {
$container['phpunit'] = new PHPUnitPlugin;
});
$project->addTask('phpunit', ['phpunit', function ($phpunit) {
$phpunit->getCommand()
->useColors()
->setBootstrap('tests/bootstrap.php')
->pipe($this->getOutput());
}]);Given:
$project->addTask('phpunit', ['phpunit', function ($phpunit) {
$phpunit->getCommand()
...->setTestCase('MyTest')$> phpunit MyTest->setTestFile('MyTest.php')$> phpunit MyTest.php->useColors()$> phpunit --colors->setBootstrap('bootstrap.php')$> phpunit --bootstrap bootstrap.php->setConfiguration('phpunit.xml')$> phpunit --configuration phpunit.xml->addCoverage('html')$> phpunit --coverage-html->setIniValue('foo', 'bar')$> phpunit -d foo=bar->useDebug()$> phpunit --debug->setFilter('/foo/')$> phpunit --filter /foo/->setTestsuite('unit')$> phpunit --testsuite unit->addGroups(['foo', 'bar'])$> phpunit --group foo,bar->excludeGroups(['foo', 'bar'])$> phpunit --exclude-group foo,bar->addTestSuffixes(['.phpt', '.php'])$> phpunit --test-suffix .phpt,.php->setIncludePath('./src')$> phpunit --include-path ./src->setPrinter('MyPrinter')$> phpunit --printer MyPrinter