import { describe, it, expect, beforeEach } from 'vitest'; import { render, screen } from '@testing-library/react'; import { BrowserRouter } from 'react-router-dom'; import { Header } from '../src/components/Header'; import { Footer } from '../src/components/Footer'; import { PageHeader } from '../src/components/PageHeader'; // Setup wrapper for components that use router const renderWithRouter = (ui: React.ReactElement) => { return render(ui, { wrapper: BrowserRouter }); }; describe('Header Component', () => { beforeEach(() => { renderWithRouter(
); }); it('renders the logo text', () => { expect(screen.getByText('SecCodeSmith')).toBeInTheDocument(); }); it('renders navigation links', () => { expect(screen.getByText('Home')).toBeInTheDocument(); expect(screen.getByText('Blog')).toBeInTheDocument(); expect(screen.getByText('About')).toBeInTheDocument(); expect(screen.getByText('Projects')).toBeInTheDocument(); expect(screen.getByText('Contact')).toBeInTheDocument(); }); }); describe('Footer Component', () => { beforeEach(() => { render(