storybook/docs/snippets/vue/portable-stories-vitest-compose-story.ts.mdx
2024-03-05 17:59:34 +01:00

20 lines
623 B
Plaintext

```ts
// Button.test.ts
import { vi, test, expect } from 'vitest';
import { render, screen } from '@testing-library/vue';
import { composeStory } from '@storybook/vue3';
import meta, { Primary } from './Button.stories';
test('onclick handler is called', () => {
// Returns a story which already contains all annotations from story, meta and global levels
const PrimaryStory = composeStory(Primary, meta);
const onClickSpy = vi.fn();
render(Primary, { props: { onClick: onClickSpy } });
const buttonElement = screen.getByRole('button');
buttonElement.click();
expect(onClickSpy).toHaveBeenCalled();
});
```