10 lines
2.1 KiB
Markdown
10 lines
2.1 KiB
Markdown
FAIL
|
|
|
|
scripts/inert-lo.sh:14 — 注销操作缺少幂等性,阻断后续构建。复现:对真实构建包的副本先执行 `lsregister -f`,再连续执行两次 `scripts/inert-lo.sh`;第一次退出 0,第二次退出 1,报 `failed to scan ...: -10814`。尚未登记的新副本同样退出 1。`scripts/build-libreoffice.sh:87` 每次构建都调用该脚本,已注销状态因此使正常重建失败。修复方向:明确识别并接受登记记录已经不存在的状态,继续暴露其他注销错误,覆盖首次执行与重复执行。
|
|
|
|
tests/scripts/lo-unregistered.sh:23 — `|| true` 吞掉 Swift 查询失败,并将空输出当作验收成功。复现:在 PATH 前置一个向 stderr 输出错误并退出 42 的 `swift`,运行该检查仍退出 0,打印 `ok: no LibreOffice in Open With`,整个 NSWorkspace 查询均未执行。修复方向:单独检查 Swift 的退出状态,成功取得查询结果后再筛选 LibreOffice;查询失败必须使验收失败。
|
|
|
|
tests/scripts/lo-unregistered.sh:10 — PlistBuddy 的读取错误被当作声明键缺失。复现:在隔离副本中创建预期的 `LibreOffice.app/Contents/Info.plist`,内容写入 `this is invalid plist data`,运行检查仍退出 0 并打印成功。损坏的构建包配置因此通过结构验收。修复方向:先要求 plist 存在、可读且解析成功,再检查各声明键是否缺失;为损坏或缺失 plist 添加失败用例。
|
|
|
|
crates/ely-lok/src/client/tests.rs:294 — 官方内核负向测试接受任意启动错误,无法证明提取出的内核实际经过版本与图块检查。复现:官方内核目录存在时,设置 `ELY_LOK_WORKER=/usr/bin/false`,单独运行 `client::tests::an_unpatched_build_is_rejected`,测试仍在 0.00 秒内通过,LibreOffice 完全未加载。独立实测提取出的官方内核能返回固定 BuildId,图块自检改写字节数为 0。修复方向:要求负向用例确实抵达该未打补丁的图块拒绝,并核对对应错误类型与原因;worker 启动失败、依赖缺失和版本错误应使该用例失败。
|