Golden Test Fixtures
运行:python -m online_dev.report_manager.engine.test_golden
格式
{
"name": "用例名",
"snapshot": { "sheets": { ... } },
"cells": { "cells": [ ... ] },
"datasets": { "别名": [ { ... } ] },
"params": {},
"column_list": [],
"expect": {
"sheet1": { "行,列": "期望值" }
}
}
Golden 样例(23 fixtures)
运行后应输出 ok (23 fixtures)。
JNPF DB 真实样例
从 JNPF jnpf_db_init.sql 提取(人员花名册 列表/分组/行列):
cd backend-fastapi
python -m online_dev.report_manager.engine.fixtures.extract_jnpf_fixtures
| 文件 | 场景 |
|---|---|
golden_jnpf_db_user_list.json |
列表 portrait |
golden_jnpf_db_user_group.json |
分组 |
golden_jnpf_db_user_matrix.json |
行列 landscape |
手写对标样例仍放在 golden_jnpf_*.json / golden_*.json,
在 expect 中填写本引擎 transform() 后应对的单元格值。
参考样例:golden_jnpf_style.json(参数 + 双列列表 + 占位符)。
阶段说明
| 阶段 | 能力 |
|---|---|
| 已完成 | transform 流水线、分栏、表达式、图表 chartData、fillEmptyRows |
| Phase 8 | 父格拓扑扩展、polymerizationType、JNPF golden、图表拾色器 |
| Phase 8+ | 跨行上父格、全表 row_registry、parent_scoped 子格数据切片 |
JNPF 父格 Golden
| 文件 | 场景 |
|---|---|
golden_jnpf_parent_group.json |
左父格 + 分组/列表 |
golden_jnpf_top_parent.json |
同行上父格链(年→月→金额) |
golden_jnpf_cross_row.json |
跨行上父格(同列子格优先显示) |
golden_jnpf_poly_summary.json |
汇总格 |
golden_jnpf_export_list.json |
字符串行列 + fillDirection |