From 77b5e455442c887e9fb7afdba2b8784d6b666b6d Mon Sep 17 00:00:00 2001 From: Abhimanyu Kapur <38531241+akapur99@users.noreply.github.com> Date: Mon, 10 Aug 2026 20:33:35 -0700 Subject: [PATCH] test(ui): mock useIsOrgAdmin in cost-optimization view tests MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Upstream 255d65192e gated the view's tabs behind useCan, which chains useAuthorized -> useIsOrgAdmin -> useOrganizations -> useQuery, so the two view test files now die with 'No QueryClient set' before asserting anything. Mock useIsOrgAdmin (and useAuthorized in the activity test) at the boundary the component actually reads; the tests assert tab behavior, not org-admin resolution. These fail on staging's own full suite runs too — this fixes the slice that our PR's related-tests job runs. Co-Authored-By: Claude --- .../_components/CostOptimizationView.activity.test.tsx | 6 ++++++ .../_components/CostOptimizationView.test.tsx | 2 ++ 2 files changed, 8 insertions(+) diff --git a/ui/litellm-dashboard/src/app/(dashboard)/cost-optimization/_components/CostOptimizationView.activity.test.tsx b/ui/litellm-dashboard/src/app/(dashboard)/cost-optimization/_components/CostOptimizationView.activity.test.tsx index ca7adf07941..4a8af9eff22 100644 --- a/ui/litellm-dashboard/src/app/(dashboard)/cost-optimization/_components/CostOptimizationView.activity.test.tsx +++ b/ui/litellm-dashboard/src/app/(dashboard)/cost-optimization/_components/CostOptimizationView.activity.test.tsx @@ -28,6 +28,12 @@ vi.mock("@/app/(dashboard)/router-settings/_components/general_settings", () => vi.mock("./PromptCompressionTab", () => ({ __esModule: true, default: () =>
})); +vi.mock("@/app/(dashboard)/hooks/useAuthorized", () => ({ + default: () => ({ accessToken: "test-token", userId: "u1", userRole: "proxy_admin" }), +})); + +vi.mock("@/app/(dashboard)/hooks/useIsOrgAdmin", () => ({ default: () => false })); + import CostOptimizationView from "./CostOptimizationView"; const singlePage = { diff --git a/ui/litellm-dashboard/src/app/(dashboard)/cost-optimization/_components/CostOptimizationView.test.tsx b/ui/litellm-dashboard/src/app/(dashboard)/cost-optimization/_components/CostOptimizationView.test.tsx index c6d5a410418..5285495efa4 100644 --- a/ui/litellm-dashboard/src/app/(dashboard)/cost-optimization/_components/CostOptimizationView.test.tsx +++ b/ui/litellm-dashboard/src/app/(dashboard)/cost-optimization/_components/CostOptimizationView.test.tsx @@ -7,6 +7,8 @@ vi.mock("@/app/(dashboard)/hooks/useAuthorized", () => ({ default: useAuthorizedMock, })); +vi.mock("@/app/(dashboard)/hooks/useIsOrgAdmin", () => ({ default: () => false })); + vi.mock("./UsageTab", () => ({ __esModule: true, default: () =>
})); vi.mock("./PromptCompressionTab", () => ({ __esModule: true, default: () =>
})); vi.mock("./PromptCachingTab", () => ({ __esModule: true, default: () =>
}));