From 882c637a06a985d85a3d1599f5d7cd14aaeb8bf9 Mon Sep 17 00:00:00 2001 From: johndoe6345789 Date: Tue, 10 Mar 2026 20:54:02 +0000 Subject: [PATCH] fix(tests): resolve 4 vitest failure categories in nextjs frontend MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Fix vitest.config.ts fakemui alias path: ../../fakemui → ../../components/fakemui (matches tsconfig.json paths; fixes pagination + get-component-icon tests) - Add vi.mock('server-only') to route.test.ts to prevent server-only guard throwing in jsdom environment - Replace @jest/globals with vitest in workflow-error-handler and multi-tenant-context test files Co-Authored-By: Claude Sonnet 4.6 --- frontends/nextjs/src/app/api/v1/[...slug]/route.test.ts | 4 +++- .../nextjs/src/lib/workflow/multi-tenant-context.test.ts | 2 +- .../nextjs/src/lib/workflow/workflow-error-handler.test.ts | 2 +- frontends/nextjs/vitest.config.ts | 6 +++--- 4 files changed, 8 insertions(+), 6 deletions(-) diff --git a/frontends/nextjs/src/app/api/v1/[...slug]/route.test.ts b/frontends/nextjs/src/app/api/v1/[...slug]/route.test.ts index ee1ee21f9..078a179a0 100644 --- a/frontends/nextjs/src/app/api/v1/[...slug]/route.test.ts +++ b/frontends/nextjs/src/app/api/v1/[...slug]/route.test.ts @@ -5,7 +5,9 @@ * Integration tests verify full DBAL execution */ -import { describe, it, expect } from 'vitest' +import { describe, it, expect, vi } from 'vitest' + +vi.mock('server-only', () => ({})) describe('API Route /api/v1/[...slug]', () => { describe('Route structure', () => { diff --git a/frontends/nextjs/src/lib/workflow/multi-tenant-context.test.ts b/frontends/nextjs/src/lib/workflow/multi-tenant-context.test.ts index d05e930c3..e44f5516a 100644 --- a/frontends/nextjs/src/lib/workflow/multi-tenant-context.test.ts +++ b/frontends/nextjs/src/lib/workflow/multi-tenant-context.test.ts @@ -9,7 +9,7 @@ * - Security validations */ -import { describe, it, expect, beforeEach } from '@jest/globals' +import { describe, it, expect, beforeEach } from 'vitest' import { MultiTenantContextBuilder, createContextFromRequest, diff --git a/frontends/nextjs/src/lib/workflow/workflow-error-handler.test.ts b/frontends/nextjs/src/lib/workflow/workflow-error-handler.test.ts index e649bb662..e29f91425 100644 --- a/frontends/nextjs/src/lib/workflow/workflow-error-handler.test.ts +++ b/frontends/nextjs/src/lib/workflow/workflow-error-handler.test.ts @@ -10,7 +10,7 @@ * - Recovery suggestions and hints */ -import { describe, it, expect, beforeEach } from '@jest/globals' +import { describe, it, expect, beforeEach } from 'vitest' import { WorkflowErrorHandler, WorkflowErrorCode, diff --git a/frontends/nextjs/vitest.config.ts b/frontends/nextjs/vitest.config.ts index f27396826..e26872b7f 100644 --- a/frontends/nextjs/vitest.config.ts +++ b/frontends/nextjs/vitest.config.ts @@ -16,7 +16,7 @@ export default defineConfig({ // Use inline to avoid duplicate React instances in tests optimizer: { web: { - include: ['@/fakemui', 'react', 'react-dom'] + include: ['react', 'react-dom'] } } } @@ -25,8 +25,8 @@ export default defineConfig({ dedupe: ['react', 'react-dom'], alias: [ // fakemui aliases must be first (more specific matches first) - { find: /^@\/fakemui\/(.+)$/, replacement: resolve(__dirname, '../../fakemui/$1') }, - { find: /^@\/fakemui$/, replacement: resolve(__dirname, '../../fakemui/index.ts') }, + { find: /^@\/fakemui\/(.+)$/, replacement: resolve(__dirname, '../../components/fakemui/$1') }, + { find: /^@\/fakemui$/, replacement: resolve(__dirname, '../../components/fakemui/index.ts') }, // dbal-ui alias for shared UI components { find: /^@dbal-ui\/(.+)$/, replacement: resolve(__dirname, '../../dbal/shared/ui/$1') }, { find: /^@dbal-ui$/, replacement: resolve(__dirname, '../../dbal/shared/ui') },