Files
crypto_monitor/tests/test_instance_settings_lib.py
T
dekun d87081205d feat: instance system settings page with risk docs, export and transfer
顶栏新增系统设置;风控说明读取 .env;数据导出与资金划转迁入三张卡片;顶栏移除导出条与手动划转。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 01:26:38 +08:00

44 lines
1.4 KiB
Python

"""instance_settings_lib 单元测试。"""
from __future__ import annotations
import os
import unittest
from lib.instance.instance_settings_lib import build_instance_settings_view
class InstanceSettingsLibTest(unittest.TestCase):
def test_build_settings_view_sections(self):
view = build_instance_settings_view(
exchange_key="gate",
exchange_display="Gate.io",
risk_status={"status_label": "正常", "can_trade": True},
data_export_version=3,
)
titles = [s["title"] for s in view["sections"]]
self.assertIn("交易执行", titles)
self.assertIn("账户冷静期", titles)
self.assertEqual(view["data_export_version"], 3)
self.assertTrue(view["show_transfer"])
def test_force_close_section_when_enabled(self):
old = os.environ.get("FORCE_CLOSE_ENABLED")
try:
os.environ["FORCE_CLOSE_ENABLED"] = "true"
view = build_instance_settings_view(
exchange_key="gate",
exchange_display="Gate.io",
risk_status={},
)
titles = [s["title"] for s in view["sections"]]
self.assertIn("整点强制清仓", titles)
finally:
if old is None:
os.environ.pop("FORCE_CLOSE_ENABLED", None)
else:
os.environ["FORCE_CLOSE_ENABLED"] = old
if __name__ == "__main__":
unittest.main()