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

jest.mock('@/i18n', () => jest.fn().mockResolvedValue({messages: {Carpool: {page_title: 'Covoiturage', page_intro: 'Les covoiturages à venir.'}}}));
jest.mock('@/components/community/CovoituragesBoard', () => ({
  __esModule: true,
  default: ({locale}: {locale: string}) => <div data-testid="board" data-locale={locale} />,
}));

import Page, {generateMetadata} from '../page';

const props = {params: Promise.resolve({locale: 'bzh'})};

describe('Page covoiturage', () => {
  it('shouldMountTheBoardForTheLocale', async () => {
    render(await Page(props));

    expect(screen.getByRole('heading', {level: 1})).toHaveTextContent('Covoiturage');
    expect(screen.getByText('Les covoiturages à venir.')).toBeInTheDocument();
    expect(screen.getByTestId('board')).toHaveAttribute('data-locale', 'bzh');
  });

  it('shouldTitleTheDocument', async () => {
    expect((await generateMetadata(props)).title).toContain('Covoiturage');
  });
});
