import * as React from 'react'; import { describe, it, expect, vi } from 'vitest'; import { render } from '@testing-library/react'; import { AISearchResults } from './AISearchResults'; // Mock lucide-react vi.mock('lucide-react', () => ({ ArrowUp: () =>
, X: () =>
, Sparkles: () =>
, ChevronRight: () =>
, RotateCcw: () =>
, Copy: () =>
, Check: () =>
, })); // Mock next/link vi.mock('next/link', () => ({ default: ({ children, href }: any) => {children}, })); // Mock useAnalytics vi.mock('../analytics/useAnalytics', () => ({ useAnalytics: () => ({ trackEvent: vi.fn(), }), })); // Mock react-markdown vi.mock('react-markdown', () => ({ default: ({ children }: any) =>
{children}
, })); // Mock remark-gfm vi.mock('remark-gfm', () => ({ default: {}, })); // Mock next-intl vi.mock('next-intl', () => ({ useTranslations: () => { const translate = (key: string) => key; translate.raw = (key: string) => { if (key === 'loadingTexts') return ['Lade...', 'Denke nach...']; if (key === 'prompts') return ['Prompt 1', 'Prompt 2']; return []; }; return translate; }, useLocale: () => 'en', })); describe('AISearchResults Component Test (TDD)', () => { it('renders correctly when open', () => { const handleClose = vi.fn(); const { container } = render( ); expect(container).toBeTruthy(); }); });