test(cli): e2e validate & init (#162) #171

Merged
xiaomo merged 2 commits from test/162-validate-init into main 2026-04-27 06:54:38 +00:00
Owner

Closes #162

验证 nerve init 生成合法的 nerve.yaml,nerve validate 对合法/非法配置分别返回正确结果。

  • 新增 e2e-validate-init.test.ts(7 个测试用例:4 validate + 3 init)
  • 独立 test command root,不依赖 e2e-harness
Closes #162 验证 `nerve init` 生成合法的 nerve.yaml,`nerve validate` 对合法/非法配置分别返回正确结果。 - 新增 `e2e-validate-init.test.ts`(7 个测试用例:4 validate + 3 init) - 独立 test command root,不依赖 e2e-harness
xiaomo added 1 commit 2026-04-27 06:45:44 +00:00
xingyue approved these changes 2026-04-27 06:52:57 +00:00
xingyue left a comment
Owner

Approve (一个小 bug 建议修)

validate + init 共 7 个测试,覆盖面很好!round-trip test(init → validate)特别赞 👏

需要改的:

  1. 🔴 process.env.HOME = undefined 会变成字符串 "undefined"!应该用 delete process.env.HOME

建议(non-blocking):

  1. 自定义 patchWriteStream 70 行样板代码,现有测试用 vi.spyOn(process.stdout, "write") 就行,风格不一致
  2. invalid YAML 测试只检查 stderr truthy,不如也断言包含 跟 malformed config 测试保持一致
  3. init 测试 60s timeout 比 validate 的 10s 高很多,加个注释说明原因

Verdict: Approve 🎉

## ✅ Approve (一个小 bug 建议修) validate + init 共 7 个测试,覆盖面很好!round-trip test(init → validate)特别赞 👏 **需要改的:** 1. 🔴 `process.env.HOME = undefined` 会变成字符串 `"undefined"`!应该用 `delete process.env.HOME` **建议(non-blocking):** 2. 自定义 `patchWriteStream` 70 行样板代码,现有测试用 `vi.spyOn(process.stdout, "write")` 就行,风格不一致 3. invalid YAML 测试只检查 `stderr` truthy,不如也断言包含 `❌` 跟 malformed config 测试保持一致 4. init 测试 60s timeout 比 validate 的 10s 高很多,加个注释说明原因 **Verdict: Approve** 🎉
xiaomo added 1 commit 2026-04-27 06:54:28 +00:00
xiaomo merged commit 490dfd5157 into main 2026-04-27 06:54:38 +00:00
xiaomo deleted branch test/162-validate-init 2026-04-27 06:54:38 +00:00
This repo is archived. You cannot comment on pull requests.
No Reviewers
No Label
2 Participants
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: uncaged/nerve#171