From 7519808e92cbdd0644ca93811e801e7fcc2addd6 Mon Sep 17 00:00:00 2001 From: Graham McIntire Date: Fri, 8 May 2026 18:27:06 -0500 Subject: [PATCH] test: AlertLive sort_alerts impact branch + minor sweep --- .../live/alert_live/index_helpers_test.exs | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/test/towerops_web/live/alert_live/index_helpers_test.exs b/test/towerops_web/live/alert_live/index_helpers_test.exs index f4fe9e6e..8d3d8a9f 100644 --- a/test/towerops_web/live/alert_live/index_helpers_test.exs +++ b/test/towerops_web/live/alert_live/index_helpers_test.exs @@ -80,6 +80,31 @@ defmodule ToweropsWeb.AlertLive.IndexHelpersTest do assert first.alert_type == "device_down" assert is_nil(first.resolved_at) end + + test "sort by impact puts highest subscriber count first" do + alert_a = %{ + gaiia_impact: %{"total_subscribers" => 5}, + device: %{site_id: "s1"}, + alert_type: "x", + resolved_at: nil, + triggered_at: ago(1) + } + + alert_b = %{ + gaiia_impact: %{"total_subscribers" => 100}, + device: %{site_id: "s2"}, + alert_type: "x", + resolved_at: nil, + triggered_at: ago(1) + } + + alert_c = %{gaiia_impact: nil, device: %{site_id: "s1"}, alert_type: "x", resolved_at: nil, triggered_at: ago(1)} + + [first, second, third] = Index.sort_alerts([alert_a, alert_b, alert_c], "impact", %{}) + assert first.gaiia_impact["total_subscribers"] == 100 + assert second.gaiia_impact["total_subscribers"] == 5 + assert is_nil(third.gaiia_impact) + end end describe "get_site_subscriber_count/1" do