protected function _process()
{
if ($this->_root->focused() && !$this->focused()) {
return;
}
if ($this->excluded()) {
$this->log()->type('excluded');
$this->summary()->log($this->log());
$this->report('specEnd', $this->log());
return;
}
$result = null;
if (Suite::$PHP >= 7) {
try {
$this->_specStart();
try {
$result = $this->_execute();
} catch (Throwable $exception) {
$this->_exception($exception);
}
$this->_specEnd();
} catch (Throwable $exception) {
$this->_exception($exception, true);
$this->_specEnd(!$exception instanceof SkipException);
}
} else {
try {
$this->_specStart();
try {
$result = $this->_execute();
} catch (Exception $exception) {
$this->_exception($exception);
}
$this->_specEnd();
} catch (Exception $exception) {
$this->_exception($exception, true);
$this->_specEnd(!$exception instanceof SkipException);
}
}
return $this->_return = $result;
}