refactor(api): yun8_sync 并入 tests 分层框架(接口层 apis/yun8 + 用例层 api + Allure)
- tests/core: 新增 BaseHttpClient 统一 HTTP 封装(直连绕行/超时/日志/自定义编码); db_helper 追加 Db 长连接类(事务/mogrify/自动重连),既有函数不动 - tests/apis/yun8: 21 个 step 方法按域拆分为 5 个 Mixin(driver/accounting/ audit_payment/receipt/third_party),Yun8Pipeline 24 步编排原样迁移, SQL 全部参数化并集中至 sql_templates - tests/api: 5 阶段有序 P0 E2E 用例(业务失败由 print 改为真实报错)+ README 迁移(删除明文密码段,修正步骤编号漂移) - yun8_sync 目录退役:配置并入 test_config.yaml 的 yun8_api 段; 造数 CLI 保留(python -m tests.apis.yun8.cli,兼容旧 config.yaml 结构) - pytest.ini 注册 api/yun8_sync marker;requirements.txt 补 requests>=2.28 - 静态验证: compileall / 全仓 collect 24 条 / marker 过滤 / CLI --help / 客户端与 pipeline 离线实例化 / SQL 占位符核对 / cross_end 兼容
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
"""第三方(滇运通)接口 Mixin — step21。
|
||||
|
||||
签名/返回值与旧 yun8_sync/client.py 逐字一致;
|
||||
滇运通为独立 host/token 会话(self.tp_http,base_url 为滇运通域名)。
|
||||
|
||||
Usage:
|
||||
from tests.apis.yun8.third_party_api import ThirdPartyApi
|
||||
class Yun8ApiClient(ThirdPartyApi, ...): ...
|
||||
"""
|
||||
|
||||
|
||||
class ThirdPartyApi:
|
||||
"""滇运通接口(挂载于 Yun8ApiClient,依赖 tp_http / tp_enabled 属性)。"""
|
||||
|
||||
# ==================================================================
|
||||
# Step 21: 滇运通审核 (updateOrderDetailExt)
|
||||
# ==================================================================
|
||||
def step21_owner_review(self, order_detail_code: str) -> dict:
|
||||
"""
|
||||
POST /ntocc-tms-api/orderDetail/updateOrderDetailExt
|
||||
滇运通独立接口,独立 token / host。
|
||||
仅在 config.dianyuntong.enabled=true 时执行。
|
||||
"""
|
||||
if not self.tp_enabled or not self.tp_http:
|
||||
raise RuntimeError("dianyuntong 未启用,请检查配置 yun8_api.dianyuntong.enabled")
|
||||
params = {
|
||||
"orderDetailCode": order_detail_code,
|
||||
"reviewStatus": "1",
|
||||
"reviewMsg": "",
|
||||
"invoiceApplicationStatus": "0",
|
||||
"invoiceApplicationMsg": "",
|
||||
}
|
||||
return self.tp_http.post(
|
||||
"/ntocc-tms-api/orderDetail/updateOrderDetailExt", params=params)
|
||||
Reference in New Issue
Block a user