import React from 'react';
import {render, screen} from '@testing-library/react';
import MediaPageContent from '../MediaPageContent';

const page = {
  slug: 'mentions-legales',
  langue: 'fr',
  titre: 'Mentions légales',
  contenu: '<p>Éditeur du site</p><script>alert(1)</script>',
};

describe('MediaPageContent', () => {
  it('shouldRenderTheTitleAsMainHeading', () => {
    render(<MediaPageContent page={page} />);

    expect(screen.getByRole('heading', {level: 1})).toHaveTextContent('Mentions légales');
  });

  it('shouldRenderSanitizedHtmlContent', () => {
    render(<MediaPageContent page={page} />);

    const body = screen.getByTestId('article-body');
    expect(body.innerHTML).toContain('<p>Éditeur du site</p>');
    expect(body.innerHTML).not.toContain('<script>');
  });

  it('shouldRenderChildrenBelowTheContent', () => {
    render(
      <MediaPageContent page={page}>
        <nav data-testid="menu">menu</nav>
      </MediaPageContent>
    );

    expect(screen.getByTestId('menu')).toBeInTheDocument();
  });
});
