57 lines
1.9 KiB
Python
57 lines
1.9 KiB
Python
from __future__ import annotations
|
|
|
|
from typing import Any
|
|
|
|
from auto_test_domains.base import build_domain_report, run_pipeline_round
|
|
|
|
|
|
SUPPLIER_ID = "1ff5b102-2f9e-496c-8591-1a8e32407c7f"
|
|
|
|
|
|
def run_case(config: dict[str, Any], report_root) -> dict[str, Any]:
|
|
"""
|
|
supplier domain 回归。
|
|
|
|
supplier 当前只测读取/绑定,不支持 create/update/delete。
|
|
同时借此确认 strategy 中没有通过“已绑定后直接跳过更新”来短路通过。
|
|
"""
|
|
|
|
dataset_root = f"{config['project_root']}/tests/fixtures/auto_sync/datasource/supplier"
|
|
common_root = f"{config['project_root']}/tests/fixtures/auto_sync/datasource/common_baseline"
|
|
|
|
round_1 = run_pipeline_round(
|
|
config=config,
|
|
dataset_dir=f"{dataset_root}/round_1_bind",
|
|
previous_dataset_dir=None,
|
|
base_dataset_dir=common_root,
|
|
base_dataset_files=["supplier_1.jsonl"],
|
|
domain_name="supplier",
|
|
round_name="round_1_bind",
|
|
purpose="加载供应商列表并验证 supplier 绑定链路",
|
|
required_bindings={
|
|
"supplier": [SUPPLIER_ID],
|
|
},
|
|
expected_binding_pairs={
|
|
"supplier": {SUPPLIER_ID: SUPPLIER_ID},
|
|
},
|
|
expected_bound_fields={
|
|
"remote": {
|
|
"supplier": {
|
|
SUPPLIER_ID: {
|
|
"name": "中国葛洲坝集团三峡建设工程有限公司",
|
|
"credit_code": "91420000615573462P",
|
|
}
|
|
}
|
|
}
|
|
},
|
|
coverage={
|
|
"api": ["GET /supplier/list"],
|
|
"notes": "supplier 为只读域,本用例验证远端加载、自动绑定和基础字段一致性。",
|
|
},
|
|
)
|
|
|
|
return build_domain_report(
|
|
domain="supplier",
|
|
description="供应商 domain 的只读回归测试。验证 supplier 列表加载、绑定与关键字段对齐。",
|
|
rounds=[round_1],
|
|
) |