问题描述
新添加的 test/unit/test_path_guard.php 使用 phpMan.php 作为测试引导,而非 05-PLAN.md §v4.4 指定的方式:
// 当前做法(引入完整 phpMan.php)
define(PHPMAN_TEST_MODE, true);
require_once __DIR__ . /../../phpMan.php;
// PLAN 文档指定的方式(引入 src/bootstrap.php)
define(PHPMAN_TEST_MODE, true);
require_once PHPMAN_HOME . /src/bootstrap.php;
背景
05-PLAN.md §v4.4 明确说明:
"Tests unchanged — define(PHPMAN_TEST_MODE, true) before requiring phpMan.php loads all functions without running the web dispatch. Every test file replaces require 'phpMan.php' with require PHPMAN_HOME . '/src/bootstrap.php'."
影响
- 当前做法能够工作(
PHPMAN_TEST_MODE 在 dispatcher 之前 return),但加载了 ~250 行不必要的 web dispatch 代码
- 与 PLAN 文档描述不一致,未来若有其他开发者参考文档写新测试会困惑
- v4.4 代码拆分完成后的目标架构应是 bootstrap.php 模式
建议
将 test_path_guard.php 中的 require_once 改为加载 src/bootstrap.php,与 PLAN 文档保持一致。路径解析的示例实现:
$srcDir = is_dir(__DIR__ . /../../src) ? __DIR__ . /../../src : PHPMAN_HOME . /src;
require_once $srcDir . /bootstrap.php;
问题描述
新添加的
test/unit/test_path_guard.php使用phpMan.php作为测试引导,而非05-PLAN.md§v4.4 指定的方式:背景
05-PLAN.md§v4.4 明确说明:影响
PHPMAN_TEST_MODE在 dispatcher 之前 return),但加载了 ~250 行不必要的 web dispatch 代码建议
将
test_path_guard.php中的require_once改为加载src/bootstrap.php,与 PLAN 文档保持一致。路径解析的示例实现: