import React from 'react';
import { render, screen } from '@testing-library/react';
import { GrapesProvider } from '../GrapesProvider/GrapesProvider';
import { LOCALES } from '../GrapesProvider/exampleLocales';
import { Tag } from './';
import userEvent from '@testing-library/user-event';
describe('Tag component', () => {
it('displays the text from props', () => {
render(Tag);
expect(screen.getByText('Tag')).toBeVisible();
});
it('displays a close button when onClose is provided', async () => {
const handleClose = vi.fn();
render(
Tag
);
,
);
expect(screen.getByText('Tag')).toBeVisible();
expect(handleClose).not.toHaveBeenCalled();
await userEvent.click(screen.getByRole('button', { name: 'Close' }));
expect(handleClose).toHaveBeenCalled();
});
describe('given accessibility attribut', () => {
it('adds relevant ARIA attributs to target it', () => {
render(Tag);
expect(screen.getByRole('status', { name: 'Tag' })).toBeVisible();
});
});
});