Extends
lithium\console\Command
Initializes the output handlers.
Returns
voidSource
protected function _init() {
parent::_init();
$self = $this;
$this->_handlers += array(
'txt' => function($runner, $path) use ($self) {
$message = sprintf('Running test(s) in `%s`... ', ltrim($path, '\\'));
$self->header('Test');
$self->out($message, array('nl' => false));
$report = $runner();
$self->out('done.', 2);
$self->out('{:heading}Results{:end}', 0);
$self->out($report->render('stats', $report->stats()));
foreach ($report->filters() as $filter => $options) {
$data = $report->results['filters'][$filter];
$self->out($report->render($options['name'], compact('data')));
}
$self->hr();
$self->nl();
return $report;
},
'json' => function($runner, $path) use ($self) {
$report = $runner();
if ($results = $report->filters()) {
$filters = array();
foreach ($results as $filter => $options) {
$filters[$options['name']] = $report->results['filters'][$filter];
}
}
$self->out($report->render('stats', $report->stats() + compact('filters')));
return $report;
}
);
}