import { render, screen } from '@testing-library/react';
import Header from '@/app/components/Header';

// Mock next-intl
jest.mock('next-intl', () => ({
  useLocale: () => 'en',
  useTranslations: () => (key: string) => {
    const messages: Record<string, string> = {
      home: 'Home',
      about: 'About',
      projects: 'Projects',
      contact: 'Contact'
    };
    return messages[key] || key;
  },
}));

// Mock next/navigation
jest.mock('next/navigation', () => ({
  usePathname: () => '/en',
}));

describe('Header', () => {
  it('renders the header with the dk logo', () => {
    render(<Header />);
    expect(screen.getByText('dk0')).toBeInTheDocument();
    
    // Check for navigation links (appear in both desktop and mobile menus)
    expect(screen.getAllByText('Home').length).toBeGreaterThan(0);
    expect(screen.getAllByText('About').length).toBeGreaterThan(0);
    expect(screen.getAllByText('Projects').length).toBeGreaterThan(0);
    expect(screen.getAllByText('Contact').length).toBeGreaterThan(0);
  });
});
