From 186f7927baa76f6e963cbe2340187f9504df641b Mon Sep 17 00:00:00 2001 From: codex Date: Tue, 21 Apr 2026 04:29:51 -0300 Subject: [PATCH] test(ariadne): cover cluster node summary edges --- .../test_cluster_state_kubernetes_domains.py | 59 +++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/tests/unit/services/test_cluster_state_kubernetes_domains.py b/tests/unit/services/test_cluster_state_kubernetes_domains.py index 378e163..3fa8b05 100644 --- a/tests/unit/services/test_cluster_state_kubernetes_domains.py +++ b/tests/unit/services/test_cluster_state_kubernetes_domains.py @@ -56,6 +56,65 @@ def test_node_summary_inventory_and_hardware_usage() -> None: assert usage[0]["hardware"] == "rpi5" +def test_node_summary_edge_filters_and_hardware_hints() -> None: + usage = nodes._node_usage_by_hardware( + [None, {"node": ""}, {"node": "titan-1", "cpu": 50.0, "load_index": 0.5}], + [None, {"name": "titan-1", "hardware": ""}], + ) + assert usage[0]["hardware"] == "unknown" + assert nodes._hardware_map([None, {"name": "titan-1", "hardware": "rpi5"}]) == {"titan-1": "rpi5"} + + assert nodes._node_ready("bad") is False + assert nodes._node_ready([None]) is False + summary = nodes._summarize_nodes({"items": [{"metadata": {}}, {"metadata": {"name": "titan-1"}, "status": {"conditions": "bad"}}]}) + assert summary["not_ready_names"] == ["titan-1"] + + assert nodes._node_labels("bad") == {} + assert nodes._node_addresses({"addresses": [None, {"type": "InternalIP", "address": "10.0.0.1"}]}) == {"InternalIP": "10.0.0.1"} + assert nodes._node_details({"items": [{"metadata": {}}, {"metadata": {"name": "titan-1"}, "status": {}, "spec": {}}]})[0]["name"] == "titan-1" + assert nodes._node_flagged([None, {"name": ""}, {"name": "titan-1", "taints": [{"key": "dedicated"}]}], "taints") == ["titan-1"] + assert nodes._node_taints([None, {"key": "dedicated", "effect": "NoSchedule", "value": 5}]) == [ + {"key": "dedicated", "value": "", "effect": "NoSchedule"} + ] + assert nodes._hardware_groups([None, {"name": ""}, {"name": "titan-1", "hardware": "rpi5"}]) == [ + {"hardware": "rpi5", "count": 1, "nodes": ["titan-1"]} + ] + + inventory = nodes._summarize_inventory( + [ + {"name": "", "ready": True}, + {"name": "worker", "ready": True, "is_worker": True, "roles": ["worker"], "pressure": "bad"}, + { + "name": "master", + "ready": False, + "is_worker": False, + "roles": ["control-plane"], + "pressure": {"DiskPressure": True}, + "taints": [{"key": "dedicated"}], + "unschedulable": True, + }, + ] + ) + assert inventory["workers"] == {"total": 1, "ready": 1} + assert inventory["by_role"]["worker"] == 1 + assert inventory["pressure_nodes"]["DiskPressure"] == ["master"] + + assert nodes._node_pressure_conditions("bad") == {} + assert nodes._node_pressure_conditions([None, {"type": "DiskPressure", "status": "True"}]) == {"DiskPressure": True} + assert nodes._node_is_worker({"node-role.kubernetes.io/master": ""}) is False + assert nodes._node_is_worker({"node-role.kubernetes.io/worker": ""}) is True + assert nodes._hardware_hint({}, {"kernelVersion": "tegra", "osImage": ""}) == "jetson" + assert nodes._hardware_hint({}, {"kernelVersion": "raspi", "osImage": ""}) == "rpi" + + assert nodes._condition_status("bad", "Ready") == (None, "", "") + assert nodes._condition_status([None, {"type": "DiskPressure"}], "Ready") == (None, "", "") + assert nodes._condition_status([{"type": "Ready", "status": "Unknown", "reason": "Checking", "message": "wait"}], "Ready") == ( + None, + "Checking", + "wait", + ) + + def test_flux_and_event_summaries() -> None: flux_payload = { "items": [