import userEvent from '@testing-library/user-event';
import { render } from '@testing-library/vue';
import N8nTooltip from './Tooltip.vue';
describe('components', () => {
describe('N8nTooltip', () => {
it('should work correctly', async () => {
const buttonSpy = vi.fn();
const { getByText } = render(N8nTooltip, {
props: {
teleported: false,
buttons: [
{
attrs: {
label: 'Button 1',
},
listeners: {
onClick: buttonSpy,
},
},
],
},
slots: {
default: 'Wrapped content',
content: 'Tooltip content',
},
});
expect(getByText('Wrapped content')).toBeVisible();
expect(getByText('Tooltip content')).not.toBeVisible();
await userEvent.hover(getByText('Wrapped content'));
expect(getByText('Tooltip content')).toBeVisible();
await userEvent.click(getByText('Button 1'));
expect(buttonSpy).toHaveBeenCalled();
});
});
});