dev-mock —— 本地 mock GitHub API 测试
小于 1 分钟
dev-mock —— 本地 mock GitHub API 测试
纯本地、零依赖的 GitHub REST API 模拟器,用于离线端到端测试 upload.html 的发布/覆盖/删除全流程,不碰真实仓库。
文件
| 文件 | 说明 |
|---|---|
mock-github.cjs | mock 服务器:模拟 contents / git data / refs 接口,按真实 git 对象格式计算 SHA-1,带 CORS,同源托管 upload.html |
test-upload.cjs | 回归测试:把 upload.html 内联脚本加载进 Node vm(DOM 打桩)跑真实代码,驱动 8 个场景共 27 项断言 |
用法
# 终端 1:启动 mock(默认端口 8787)
node dev-mock/mock-github.cjs 8787
# 终端 2:跑回归测试
node dev-mock/test-upload.cjs 8787
浏览器手动体验(token 任意,如 test-token):
http://127.0.0.1:8787/upload.html?api=http://127.0.0.1:8787
注意
- 包根
package.json是"type": "module",所以本目录脚本用.cjs后缀(CommonJS)。 - mock 状态在内存里,重启即重置为种子 commit。
- 真实 GitHub 的坑:获取引用用单数
GET /git/ref/{ref},更新引用必须用复数PATCH /git/refs/{ref},mock 与工具均已按此实现。