Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
56 changes: 56 additions & 0 deletions devel/216_32.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
# [216_32] 拆分 complex-test.scm 到 tests/scheme/complex/ 目录

## 任务相关的代码文件
- tests/goldfish/scheme/complex-test.scm(原聚合测试文件,已删除)
- tests/scheme/complex-test.scm(入口说明文件)
- tests/scheme/complex/*.scm(目标目录)

## 如何测试

```bash
# 1. 构建
xmake b goldfish

# 2. 逐个运行迁移后的测试文件
bin/gf tests/scheme/complex/real-part-test.scm
bin/gf tests/scheme/complex/imag-part-test.scm
bin/gf tests/scheme/complex/angle-test.scm
bin/gf tests/scheme/complex/magnitude-test.scm
bin/gf tests/scheme/complex/make-polar-test.scm
bin/gf tests/scheme/complex/make-rectangular-test.scm

# 3. 按正式入口风格验证入口说明文件可被加载
bin/gf tests/scheme/complex-test.scm

# 或批量测试所有文件
for f in tests/scheme/complex/*.scm; do bin/gf "$f"; done
```

## 2026-03-30 拆分 (scheme complex)的测试文件

### What
将 `tests/goldfish/scheme/complex-test.scm` 按"一个函数一个测试文件"的方式迁移到 `tests/scheme/complex/` 目录,并新增轻量入口说明文件 `tests/scheme/complex-test.scm`。

本次拆分覆盖的函数如下(共 6 个文件):

1. `real-part` -> `real-part-test.scm`
2. `imag-part` -> `imag-part-test.scm`
3. `angle` -> `angle-test.scm`
4. `magnitude` -> `magnitude-test.scm`
5. `make-polar` -> `make-polar-test.scm`
6. `make-rectangular` -> `make-rectangular-test.scm`

### 注释格式
每个测试文件都使用统一的文档块注释格式:函数名、简要说明、`语法 / 参数 / 返回值 / 描述 / 数学定义 / 示例 / 错误处理`。

### Why
1. 原 `tests/goldfish/scheme/complex-test.scm` 聚合了 6 个函数的测试,文件较大,定位和维护成本较高。
2. 拆成单文件后,可以像其他模块目录一样单独运行和回归。
3. 入口说明文件保留模块级导航,同时避免旧聚合文件继续承担测试职责。
4. 统一每个测试文件的文档格式,便于后续继续迁移同类模块。

### How
1. 参考已有的 `tests/liii/time/` 等拆分方式,按函数边界切分测试。
2. 对测试文件使用统一的注释结构,使用 `;;` 行注释。
3. 保留原有测试覆盖范围,只调整目录结构和说明文字,不改测试语义。
4. 迁移完成后,逐个运行新测试文件,验证全部通过。
Loading
Loading