import { describe, it, expect } from 'vitest' import { screen } from '@testing-library/react' import userEvent from '@testing-library/user-event' import CookieBanner from '../../components/CookieBanner' import { renderWithProviders } from '../renderWithProviders' describe('CookieBanner', () => { it("s'affiche quand aucun choix n'a été fait", () => { renderWithProviders() expect(screen.getByText(/ce site utilise des cookies/i)).toBeInTheDocument() }) it('enregistre le consentement et disparaît quand on accepte', async () => { renderWithProviders() await userEvent.click(screen.getByRole('button', { name: /accepter/i })) expect(screen.queryByText(/ce site utilise des cookies/i)).not.toBeInTheDocument() expect(localStorage.getItem('cookieConsent')).toBe('accepted') }) it('enregistre le refus et disparaît quand on refuse', async () => { renderWithProviders() await userEvent.click(screen.getByRole('button', { name: /refuser/i })) expect(screen.queryByText(/ce site utilise des cookies/i)).not.toBeInTheDocument() expect(localStorage.getItem('cookieConsent')).toBe('refused') }) it("ne s'affiche pas si un choix a déjà été fait", () => { localStorage.setItem('cookieConsent', 'accepted') renderWithProviders() expect(screen.queryByText(/ce site utilise des cookies/i)).not.toBeInTheDocument() }) })