go test ./... 从 21 个失败回到 0。根因都是测试没跟上代码改动,其中两处
被「自动补位」的补丁 hack 掩盖住了:
- handler 的 materialRow 在「列数 20、值 18」时自动插两个 nil,掩盖了
materials 新增 supplier_id/manufacturer_id 后的列错位。它碰巧补对位置,
而 order 测试的 activeMaterialRows 没走这个 helper,直接 panic。
已删掉补丁、把测试数据补齐到 20 列。
- 导入测试的 buildTestWorkbookWithHeaders 按 7 列给数据补位,而表头这时
已经扩到 9 列(多了供应商、制造商),把「大类/小类」静默塞进了
「来源/备注」。已按 materialImportHeaders 的实际列序修正补位。
其余为非补丁式的期望过时:materials 的 INSERT 参数补到 15 个、物料列表
查询结果集补到 20 列、导入模板表头断言改为按 materialImportHeaders 取末列
而不是写死下标。
顺带清掉已废弃的升级路径残留:upgrades/ 目录在
|
||
|---|---|---|
| .. | ||
| handler | ||
| middleware | ||
| model | ||
| repository | ||
| service | ||
| testutil | ||
| web | ||