fix(config): 修复切换充值渠道报错及补齐 peace_enabled 字段声明
- 在 DouyuConfigOut 与 DouyuConfigUpdate 中补齐 peace_enabled 声明与序列化 - 在 update_config 中使用 getattr(req, field, None) 安全读取属性,避免 AttributeError 导致 500 - 在 _config_out 中加入 peace_enabled 输出映射 - 增加切换充值渠道与配置更新的单元测试
This commit is contained in:
@@ -140,6 +140,32 @@ class TestDouyuGoldRechargeChannel:
|
||||
|
||||
assert channel == {"gold_recharge_channel": "supplier_api"}
|
||||
|
||||
def test_update_config_switching_recharge_channel_and_peace_enabled(self):
|
||||
from web.backend.routers.douyu import update_config
|
||||
from web.backend.schemas import DouyuConfigUpdate
|
||||
|
||||
admin_user = self.session.get(User, self.task.created_by)
|
||||
|
||||
# 1. 切换到 supplier_api
|
||||
req = DouyuConfigUpdate(
|
||||
gold_recharge_channel="supplier_api",
|
||||
peace_enabled=True,
|
||||
)
|
||||
res = update_config(req, db=self.session, current=admin_user)
|
||||
dumped = res.model_dump()
|
||||
assert dumped["gold_recharge_channel"] == "supplier_api"
|
||||
assert dumped["peace_enabled"] is True
|
||||
|
||||
# 2. 切换回 wechat_qr
|
||||
req2 = DouyuConfigUpdate(
|
||||
gold_recharge_channel="wechat_qr",
|
||||
peace_enabled=False,
|
||||
)
|
||||
res2 = update_config(req2, db=self.session, current=admin_user)
|
||||
dumped2 = res2.model_dump()
|
||||
assert dumped2["gold_recharge_channel"] == "wechat_qr"
|
||||
assert dumped2["peace_enabled"] is False
|
||||
|
||||
def test_recharge_audit_detail_includes_safe_account_identity(self):
|
||||
record_audit(
|
||||
self.session,
|
||||
|
||||
Reference in New Issue
Block a user