Test harness stops at the first thrown error and prints a stale check count

未关闭
#203 1 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

维护者通常 1 天内回复

还没有人认领这个 Issue。

评估

难度
3/5
预计耗时
1-2 天
新手友好度
45/100
Issue 类型
重构
描述清晰度
基本清楚
活跃度
活跃
技术栈
javascript, nodejs
领域
testing-qa

调研方向

The harness is hand-rolled eq/has/throws helpers in site/checks.test.mjs (around lines 52-75 and the summary near 817-822) and site/lib/lib.test.mjs (lines 16-38 and the summary near 1156-1162). Read those helpers and run npm test to see how one thrown exception stops the run. Done means a thrown error in one section no longer hides later results, the printed check count matches the real number of sections, and a single test can be selected by name, ideally via node:test's --test-name-pattern while keeping npm test as the entry point.

由索引模型根据 Issue 内容生成。

描述

help wanted priority: low tests

Summary

Both test files hand-roll eq/has/throws. An exception inside any section (as opposed to a failed eq) kills the process before the failure report prints, hiding every later assertion.

Where

  • site/checks.test.mjs:52-75, 817-822
  • site/lib/lib.test.mjs:16-38, 1156-1162

Details

checks.test.mjs prints a hard-coded "across 30 checks" while the file has 26 V-sections. lib.test.mjs is 1,163 lines in one scope and is the most-changed file in the repo.

Impact

One crash masks all other failures; no way to run a single test.

Suggested fix

Migrate section by section to the built-in node:test + node:assert (ships with Node 22, no dependency): per-test isolation, --test-name-pattern, real counts. Keep npm test as the entry point.

Acceptance criteria

  • A thrown error in one test does not hide the others
  • npm test reports real counts
  • A single test can be run by name

Getting started

  • Relevant files: site/checks.test.mjs, site/lib/lib.test.mjs, package.json
  • How to run tests: npm test (unit tests), npm run check (tests + validate + build). Node 22+, no dependencies.
  • Related docs: site/README.md, CONTRIBUTING.md

Filed by repo-audit/full-audit at 982fcd9. Severity: low. Effort: M. audit-key: testing|site/lib/lib.test.mjs|harness

主要语言
JavaScript
星标
58
派生
15
平均合并
1 天 14 小时
30 天内合并 PR
11

环境准备

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

TMHSDigital/Free-Game-Dev-Assets 的其他 Issue

查看 TMHSDigital/Free-Game-Dev-Assets 的全部 Issue

相似的 Issue

更多 JavaScript Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。