mirror of
https://github.com/storybookjs/storybook.git
synced 2025-04-07 22:21:47 +08:00
34 lines
780 B
Plaintext
34 lines
780 B
Plaintext
```js
|
|
// MyComponent.stories.js
|
|
|
|
import { screen, userEvent } from '@storybook/testing-library';
|
|
|
|
import MyComponent from './MyComponent.svelte';
|
|
|
|
export default {
|
|
component: MyComponent,
|
|
};
|
|
|
|
// Custom function to emulate a pause
|
|
function sleep(ms) {
|
|
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
}
|
|
|
|
// Queries the element by it's role and fires the event
|
|
export const ExampleChangeEvent = {
|
|
play: async () => {
|
|
const select = screen.getByRole('listbox');
|
|
|
|
await userEvent.selectOptions(select, ['One Item']);
|
|
await sleep(2000);
|
|
|
|
await userEvent.selectOptions(select, ['Another Item']);
|
|
await sleep(2000);
|
|
|
|
await userEvent.selectOptions(select, ['Yet another item']);
|
|
},
|
|
render: () => ({
|
|
Component: MyComponent,
|
|
}),
|
|
};
|
|
``` |