import { Size } from '../common';
import { render, fireEvent, screen } from '../test-utils';
import Tile from '.';
describe(Tile, () => {
const onClick = jest.fn();
const defaultProps = {
description: 'Receive money from friends and family like a local',
href: '#href',
media: ,
onClick,
title: 'Receive money',
};
beforeEach(() => {
jest.clearAllMocks();
});
it('calls onClick when anchor is clicked', () => {
render();
const title = screen.getByText('Receive money');
expect(onClick).not.toHaveBeenCalled();
fireEvent.click(title);
expect(onClick).toHaveBeenCalledTimes(1);
});
it('calls onClick when space or enter keys are pressed', () => {
render();
const title = screen.getByText('Receive money');
fireEvent.keyDown(title, { key: 'Enter' });
expect(onClick).toHaveBeenCalledTimes(1);
fireEvent.keyDown(title, { key: ' ' });
expect(onClick).toHaveBeenCalledTimes(2);
});
it(`doesn't call onClick when disabled anchor is clicked`, () => {
render();
fireEvent.click(screen.getByText('Receive money'));
expect(onClick).not.toHaveBeenCalled();
});
it(`doesn't call onClick when space or enter keys are pressed on disabled anchor`, () => {
render();
const title = screen.getByText('Receive money');
fireEvent.keyDown(title, { key: 'Enter' });
expect(onClick).not.toHaveBeenCalled();
fireEvent.keyDown(title, { key: ' ' });
expect(onClick).not.toHaveBeenCalled();
});
});