kahlan\Specification::_process PHP Method

_process() protected method

Processes a child specs.
See also: Kahlan\Suite::process()
protected _process ( )
    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;
    }