From a07c2b21f4189b3545653a3cbd00912f67fa3e28 Mon Sep 17 00:00:00 2001 From: Michael Cousins Date: Sun, 17 Mar 2024 01:34:20 -0400 Subject: [PATCH] fix: ensure fireEvent is exported --- src/__tests__/events.test.js | 10 ++++++---- src/index.js | 6 +++++- src/svelte5-index.js | 8 ++++++-- vite.config.js | 3 ++- 4 files changed, 19 insertions(+), 8 deletions(-) diff --git a/src/__tests__/events.test.js b/src/__tests__/events.test.js index 16f688c..e0aba4d 100644 --- a/src/__tests__/events.test.js +++ b/src/__tests__/events.test.js @@ -1,6 +1,6 @@ +import { fireEvent, render } from '@testing-library/svelte' import { describe, expect, test } from 'vitest' -import { fireEvent, render } from '@testing-library/svelte' import Comp from './fixtures/Comp.svelte' describe('events', () => { @@ -8,8 +8,9 @@ describe('events', () => { const { getByText } = render(Comp, { props: { name: 'World' } }) const button = getByText('Button') - await fireEvent.click(button) + const result = fireEvent.click(button) + await expect(result).resolves.toBe(true) expect(button).toHaveTextContent('Button Clicked') }) @@ -17,14 +18,15 @@ describe('events', () => { const { getByText } = render(Comp, { props: { name: 'World' } }) const button = getByText('Button') - await fireEvent( + const result = fireEvent( button, new MouseEvent('click', { bubbles: true, - cancelable: true + cancelable: true, }) ) + await expect(result).resolves.toBe(true) expect(button).toHaveTextContent('Button Clicked') }) }) diff --git a/src/index.js b/src/index.js index 3e58608..46fd662 100644 --- a/src/index.js +++ b/src/index.js @@ -13,5 +13,9 @@ if (typeof afterEach === 'function' && !process.env.STL_SKIP_AUTO_CLEANUP) { }) } -export * from './pure.js' +// export all base queries, screen, etc. export * from '@testing-library/dom' + +// export svelte-specific functions and custom `fireEvent` +// `fireEvent` must be a named export to take priority over wildcard export above +export { act, cleanup, fireEvent, render } from './pure.js' diff --git a/src/svelte5-index.js b/src/svelte5-index.js index 8dc11e8..86ff742 100644 --- a/src/svelte5-index.js +++ b/src/svelte5-index.js @@ -13,6 +13,10 @@ if (typeof afterEach === 'function' && !process.env.STL_SKIP_AUTO_CLEANUP) { }) } -export { act, fireEvent } from './pure.js' -export * from './svelte5.js' +// export all base queries, screen, etc. export * from '@testing-library/dom' + +// export svelte-specific functions and custom `fireEvent` +// `fireEvent` must be a named export to take priority over wildcard export above +export { act, fireEvent } from './pure.js' +export { cleanup, render } from './svelte5.js' diff --git a/vite.config.js b/vite.config.js index 1ef160e..d9085ef 100644 --- a/vite.config.js +++ b/vite.config.js @@ -1,5 +1,6 @@ +import path from 'node:path' + import { svelte } from '@sveltejs/vite-plugin-svelte' -import path from 'path' import { VERSION as SVELTE_VERSION } from 'svelte/compiler' import { defineConfig } from 'vite'