From 0ffbdce0ef5b98d2706da617a2e0ea8a5697838c Mon Sep 17 00:00:00 2001 From: saravanakumardb1 Date: Sun, 22 Mar 2026 21:11:24 -0700 Subject: [PATCH] fix(ci): fix admin-web test mocks + workflow build command - Add getCurrentUserFromRequest + requireAdmin to all 8 auth-server test mocks - Fixes Vitest 4.x strict mock requiring all accessed exports - Skip pnpm install in CI workflow (deps already installed locally) --- .gitea/workflows/ci.yml | 5 +---- dashboards/admin-web/src/__tests__/audit.test.ts | 2 ++ .../admin-web/src/__tests__/dashboard-stats.test.ts | 11 +++++++++-- dashboards/admin-web/src/__tests__/flags.test.ts | 2 ++ .../admin-web/src/__tests__/invitations.test.ts | 2 ++ dashboards/admin-web/src/__tests__/licenses.test.ts | 2 ++ dashboards/admin-web/src/__tests__/promos.test.ts | 2 ++ .../admin-web/src/__tests__/referrals-admin.test.ts | 2 ++ dashboards/admin-web/src/__tests__/users.test.ts | 2 ++ 9 files changed, 24 insertions(+), 6 deletions(-) diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index 55fcfe52..37b7ae55 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -20,11 +20,8 @@ jobs: - name: Pull latest run: git pull --ff-only origin main || true - - name: Install dependencies - run: pnpm install --frozen-lockfile - - name: Build all packages - run: pnpm build + run: pnpm -r --filter './packages/**' build - name: Typecheck run: pnpm typecheck diff --git a/dashboards/admin-web/src/__tests__/audit.test.ts b/dashboards/admin-web/src/__tests__/audit.test.ts index 5413edd0..e34143d2 100644 --- a/dashboards/admin-web/src/__tests__/audit.test.ts +++ b/dashboards/admin-web/src/__tests__/audit.test.ts @@ -13,6 +13,8 @@ import { describe, it, expect, vi, beforeEach } from 'vitest'; const mockGetCurrentUser = vi.fn(); vi.mock('@/lib/auth-server', () => ({ getCurrentUser: (...args: unknown[]) => mockGetCurrentUser(...args), + getCurrentUserFromRequest: (...args: unknown[]) => mockGetCurrentUser(...args), + requireAdmin: (...args: unknown[]) => mockGetCurrentUser(...args), })); const mockQueryAudit = vi.fn(); diff --git a/dashboards/admin-web/src/__tests__/dashboard-stats.test.ts b/dashboards/admin-web/src/__tests__/dashboard-stats.test.ts index f9162d5c..2625b6dc 100644 --- a/dashboards/admin-web/src/__tests__/dashboard-stats.test.ts +++ b/dashboards/admin-web/src/__tests__/dashboard-stats.test.ts @@ -12,6 +12,8 @@ import { describe, it, expect, vi, beforeEach } from 'vitest'; const mockRequireAdmin = vi.fn(); vi.mock('@/lib/auth-server', () => ({ requireAdmin: (...args: unknown[]) => mockRequireAdmin(...args), + getCurrentUser: (...args: unknown[]) => mockRequireAdmin(...args), + getCurrentUserFromRequest: (...args: unknown[]) => mockRequireAdmin(...args), })); const mockCountActiveTokens = vi.fn(); @@ -55,7 +57,10 @@ describe('GET /api/dashboard/stats', () => { it('returns aggregated stats on success', async () => { mockRequireAdmin.mockResolvedValue(admin); - mockGetUserCounts.mockResolvedValue({ total: 150, byPlan: { free: 100, pro: 40, enterprise: 10 } }); + mockGetUserCounts.mockResolvedValue({ + total: 150, + byPlan: { free: 100, pro: 40, enterprise: 10 }, + }); mockCountActiveTokens.mockResolvedValue(25); mockGetUsageSummary.mockResolvedValue({ totalWords: 500000, @@ -95,7 +100,9 @@ describe('GET /api/dashboard/stats', () => { mockGetUserCounts.mockResolvedValue({ total: 0, byPlan: {} }); mockCountActiveTokens.mockResolvedValue(0); mockGetUsageSummary.mockResolvedValue({ - totalWords: 0, totalDictations: 0, totalCost: 0, + totalWords: 0, + totalDictations: 0, + totalCost: 0, }); mockGetAuditStats.mockResolvedValue({ stats: {}, days: 90 }); diff --git a/dashboards/admin-web/src/__tests__/flags.test.ts b/dashboards/admin-web/src/__tests__/flags.test.ts index 084b5b31..552cca41 100644 --- a/dashboards/admin-web/src/__tests__/flags.test.ts +++ b/dashboards/admin-web/src/__tests__/flags.test.ts @@ -7,6 +7,8 @@ import { describe, it, expect, vi, beforeEach } from 'vitest'; const mockRequireAdmin = vi.fn(); vi.mock('@/lib/auth-server', () => ({ requireAdmin: (...args: unknown[]) => mockRequireAdmin(...args), + getCurrentUser: (...args: unknown[]) => mockRequireAdmin(...args), + getCurrentUserFromRequest: (...args: unknown[]) => mockRequireAdmin(...args), })); const mockListFlags = vi.fn(); diff --git a/dashboards/admin-web/src/__tests__/invitations.test.ts b/dashboards/admin-web/src/__tests__/invitations.test.ts index 8bc119af..04e2068e 100644 --- a/dashboards/admin-web/src/__tests__/invitations.test.ts +++ b/dashboards/admin-web/src/__tests__/invitations.test.ts @@ -23,6 +23,8 @@ import { describe, it, expect, vi, beforeEach } from 'vitest'; const mockGetCurrentUser = vi.fn(); vi.mock('@/lib/auth-server', () => ({ getCurrentUser: (...args: unknown[]) => mockGetCurrentUser(...args), + getCurrentUserFromRequest: (...args: unknown[]) => mockGetCurrentUser(...args), + requireAdmin: (...args: unknown[]) => mockGetCurrentUser(...args), })); const mockListInvitations = vi.fn(); diff --git a/dashboards/admin-web/src/__tests__/licenses.test.ts b/dashboards/admin-web/src/__tests__/licenses.test.ts index d3b7ce4e..f69709a7 100644 --- a/dashboards/admin-web/src/__tests__/licenses.test.ts +++ b/dashboards/admin-web/src/__tests__/licenses.test.ts @@ -7,6 +7,8 @@ import { describe, it, expect, vi, beforeEach } from 'vitest'; const mockRequireAdmin = vi.fn(); vi.mock('@/lib/auth-server', () => ({ requireAdmin: (...args: unknown[]) => mockRequireAdmin(...args), + getCurrentUser: (...args: unknown[]) => mockRequireAdmin(...args), + getCurrentUserFromRequest: (...args: unknown[]) => mockRequireAdmin(...args), })); const mockGetUserLicenses = vi.fn(); diff --git a/dashboards/admin-web/src/__tests__/promos.test.ts b/dashboards/admin-web/src/__tests__/promos.test.ts index 7ef2d4d0..94c98281 100644 --- a/dashboards/admin-web/src/__tests__/promos.test.ts +++ b/dashboards/admin-web/src/__tests__/promos.test.ts @@ -26,6 +26,8 @@ import { describe, it, expect, vi, beforeEach } from 'vitest'; const mockGetCurrentUser = vi.fn(); vi.mock('@/lib/auth-server', () => ({ getCurrentUser: (...args: unknown[]) => mockGetCurrentUser(...args), + getCurrentUserFromRequest: (...args: unknown[]) => mockGetCurrentUser(...args), + requireAdmin: (...args: unknown[]) => mockGetCurrentUser(...args), })); const mockListPromos = vi.fn(); diff --git a/dashboards/admin-web/src/__tests__/referrals-admin.test.ts b/dashboards/admin-web/src/__tests__/referrals-admin.test.ts index 7fe70471..7cc97985 100644 --- a/dashboards/admin-web/src/__tests__/referrals-admin.test.ts +++ b/dashboards/admin-web/src/__tests__/referrals-admin.test.ts @@ -15,6 +15,8 @@ import { describe, it, expect, vi, beforeEach } from 'vitest'; const mockGetCurrentUser = vi.fn(); vi.mock('@/lib/auth-server', () => ({ getCurrentUser: (...args: unknown[]) => mockGetCurrentUser(...args), + getCurrentUserFromRequest: (...args: unknown[]) => mockGetCurrentUser(...args), + requireAdmin: (...args: unknown[]) => mockGetCurrentUser(...args), })); const mockListReferrals = vi.fn(); diff --git a/dashboards/admin-web/src/__tests__/users.test.ts b/dashboards/admin-web/src/__tests__/users.test.ts index 06d59176..98970054 100644 --- a/dashboards/admin-web/src/__tests__/users.test.ts +++ b/dashboards/admin-web/src/__tests__/users.test.ts @@ -13,6 +13,8 @@ import { describe, it, expect, vi, beforeEach } from 'vitest'; const mockRequireAdmin = vi.fn(); vi.mock('@/lib/auth-server', () => ({ requireAdmin: (...args: unknown[]) => mockRequireAdmin(...args), + getCurrentUser: (...args: unknown[]) => mockRequireAdmin(...args), + getCurrentUserFromRequest: (...args: unknown[]) => mockRequireAdmin(...args), })); const mockListUsers = vi.fn();