public function run(ContextInterface $context)
{
$files = $context->getFiles()->name('*.php');
if (0 === count($files)) {
return TaskResult::createSkipped($this, $context);
}
$config = $this->getConfiguration();
$arguments = $this->processBuilder->createArgumentsForCommand('atoum');
$arguments->addOptionalArgumentWithSeparatedValue('-c', $config['config_file']);
$arguments->addOptionalArgumentWithSeparatedValue('--bootstrap-file', $config['bootstrap_file']);
$arguments->addSeparatedArgumentArray('--directories', $config['directories']);
$arguments->addSeparatedArgumentArray('--files', $config['files']);
$arguments->addSeparatedArgumentArray('--namespaces', $config['namespaces']);
$arguments->addSeparatedArgumentArray('--methods', $config['methods']);
$arguments->addSeparatedArgumentArray('--tags', $config['tags']);
$process = $this->processBuilder->buildProcess($arguments);
$process->run();
if (!$process->isSuccessful()) {
return TaskResult::createFailed($this, $context, $this->formatter->format($process));
}
return TaskResult::createPassed($this, $context);
}