Files
Nexus/tests/test_server_status_field.py
T
r 6720ca3474 feat(servers): 主列表宝塔登录 + 健康检查写心跳
主服务器列表操作列一键登录宝塔;SSH 健康检查写入 Redis 心跳并刷新在线状态。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-21 11:05:43 +08:00

28 lines
827 B
Python

"""Server list status field derived from is_online + agent_version."""
from server.api.servers import _derive_server_status
def test_online_with_agent():
assert _derive_server_status(True, "2.0.0") == "online"
def test_offline_with_agent():
assert _derive_server_status(False, "2.0.0") == "offline"
def test_unknown_without_agent():
assert _derive_server_status(False, None) == "unknown"
assert _derive_server_status(False, "") == "unknown"
def test_offline_with_agent_key_only():
assert _derive_server_status(False, None, has_agent=True) == "offline"
def test_offline_with_ssh_heartbeat_only():
assert _derive_server_status(False, None, has_heartbeat=True) == "offline"
def test_online_with_ssh_heartbeat_only():
assert _derive_server_status(True, None, has_heartbeat=True) == "online"