tests: golden files + bless mode for the suite runner's assertion blocks
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
- 难度
- 5/5
- 预计耗时
- 一周以上
- 新手友好度
- 45/100
- Issue 类型
- 功能
- 描述清晰度
- 基本清楚
- 活跃度
- 活跃
- 技术栈
- shell
- 领域
- testing-qa, tooling
调研方向
Start by reading tests/run_all_tests.sh, focusing on its assertion-block sections and how the suite runner selects and reports them. Run the suite on main and record the current wc -l value before identifying the five largest sections. Done means those sections use checked-in golden files, --bless
rewrites the expected-output files, unchanged main passes, and a planted output change produces a readable diff that bless resolves.由索引模型根据 Issue 内容生成。
描述
Split from #1275 (plan step 4; see the DoD check in #1275). #1275's DoD bounds tools/, not the suite runner, so this is its own work.
Problem. Much of tests/run_all_tests.sh (7,606 lines) is hand-written grep -qE / count assertions. Each one is code that can be wrong, and each new case adds more assertion code.
Prior art. rustc compiletest compares against checked-in .stdout/.stderr files, and --bless regenerates them for review as an ordinary diff. LLVM uses RUN: + FileCheck. The checker is diff, so it needs no self-test.
Done when:
- The runner has a bless mode (
--bless <section>) that rewrites a section's expected-output files. - The five largest assertion-block sections are converted to golden files and pass unchanged on
main. - A deliberate output change in one converted section fails with a readable diff, and
--blessfixes it (planted once, recorded in the PR). wc -l tests/run_all_tests.shbefore and after is recorded here.
- 主要语言
- C
- 星标
- 3
- 派生
- 7
- 平均合并
- 4 小时 15 分钟
- 30 天内合并 PR
- 106
环境准备
在浏览器里用你自己的 GitHub 账号启动这个项目的开发容器。
- 提供 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
InauguralSystems/EigenScript 的其他 Issue
-
area:lint-tooling bug
难度 2/5 1-3 小时 新手友好度 88/100
InauguralSystems/EigenScript#1340 ·
维护者通常 1 天内回复
-
area:stdlib found-by:code-review kind:silent-wrong
难度 2/5 1-3 小时 新手友好度 88/100
InauguralSystems/EigenScript#1338 ·
维护者通常 1 天内回复
-
area:lint-tooling found-by:critic kind:docs-drift
难度 2/5 1-3 小时 新手友好度 76/100
InauguralSystems/EigenScript#1335 ·
维护者通常 1 天内回复
-
area:ci found-by:critic kind:gate-defect
难度 2/5 1-3 小时 新手友好度 86/100
InauguralSystems/EigenScript#1311 ·
维护者通常 1 天内回复
-
enrolment: decide test_gc_runner_controls.py (exempt vs enrol) and whether floors need a ratchet未关闭area:gates found-by:critic kind:decision
难度 2/5 1-3 小时 新手友好度 65/100
InauguralSystems/EigenScript#1280 · 1 条评论 ·
维护者通常 1 天内回复
查看 InauguralSystems/EigenScript 的全部 Issue
相似的 Issue
-
bug needs triage
难度 2/5 1-3 小时 新手友好度 78/100
netdata/netdata#24062 · 1 条评论 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 76/100
-
难度 2/5 1-3 小时 新手友好度 88/100
BasedHardware/omi#19463 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 72/100
EchoTools/nevr-runtime#30 ·
-
难度 2/5 1-3 小时 新手友好度 88/100
riscv-software-src/riscv-isa-sim#2448 ·
维护者通常 2 天内回复