think\PhpunitHelper::dispatch PHP Method

dispatch() protected method

protected dispatch ( )
    protected function dispatch()
    {
        $urlCase = C('URL_CASE_INSENSITIVE');
        // 定义当前模块路径
        defined('MODULE_PATH') or define('MODULE_PATH', APP_PATH . MODULE_NAME . '/');
        // 定义当前模块的模版缓存路径
        C('CACHE_PATH', CACHE_PATH . MODULE_NAME . '/');
        if (!file_exists(LOG_PATH)) {
            mkdir(LOG_PATH, 0755);
        }
        C('LOG_PATH', realpath(LOG_PATH) . '/' . MODULE_NAME . '/');
        // 模块检测
        Hook::listen('module_check');
        // 加载模块配置文件
        if (is_file(MODULE_PATH . 'Conf/config.php')) {
            C(include MODULE_PATH . 'Conf/config.php');
        }
        // 加载模块别名定义
        if (is_file(MODULE_PATH . 'Conf/alias.php')) {
            $map = (include MODULE_PATH . 'Conf/alias.php');
            foreach ($map as $class => $file) {
                include $file;
            }
        }
        // 加载模块函数文件
        if (is_file(MODULE_PATH . 'Common/function.php')) {
            include MODULE_PATH . 'Common/function.php';
        }
        // 加载模块的扩展配置文件
        load_ext_file(MODULE_PATH);
        $depr = C('URL_PATHINFO_DEPR');
        defined('MODULE_PATHINFO_DEPR') or define('MODULE_PATHINFO_DEPR', $depr);
        if (!defined('__APP__')) {
            $urlMode = C('URL_MODEL');
            if ($urlMode == URL_COMPAT) {
                // 兼容模式判断
                $varPath = C('VAR_PATHINFO');
                defined('PHP_FILE') || define('PHP_FILE', _PHP_FILE_ . '?' . $varPath . '=');
            } elseif ($urlMode == URL_REWRITE) {
                $url = dirname(_PHP_FILE_);
                if ($url == '/' || $url == '\\') {
                    $url = '';
                }
                defined('PHP_FILE') || define('PHP_FILE', $url);
            } else {
                defined('PHP_FILE') || define('PHP_FILE', _PHP_FILE_);
            }
            // 当前应用地址
            defined('__APP__') || define('__APP__', strip_tags(PHP_FILE));
        }
        $moduleName = MODULE_NAME;
        $controllerName = CONTROLLER_NAME;
        defined('__MODULE__') or define('__MODULE__', defined('BIND_MODULE') || !C('MULTI_MODULE') ? __APP__ : __APP__ . '/' . ($urlCase ? strtolower($moduleName) : $moduleName));
        defined('__CONTROLLER__') or define('__CONTROLLER__', __MODULE__ . $depr . (defined('BIND_CONTROLLER') ? '' : ($urlCase ? parse_name($controllerName) : $controllerName)));
        defined('__ACTION__') || define('__ACTION__', __CONTROLLER__ . $depr . $this->action_name);
        defined('__SELF__') || define('__SELF__', strip_tags(isset($_SERVER[C('URL_REQUEST_URI')]) ? $_SERVER[C('URL_REQUEST_URI')] : ''));
    }