diff --git a/src/__tests__/fixtures/Transitioner.svelte b/src/__tests__/fixtures/Transitioner.svelte
index 2ee1557..f817ce8 100644
--- a/src/__tests__/fixtures/Transitioner.svelte
+++ b/src/__tests__/fixtures/Transitioner.svelte
@@ -1,8 +1,8 @@
diff --git a/src/__tests__/transition.test.js b/src/__tests__/transition.test.js
index 5b1ff18..fdd83eb 100644
--- a/src/__tests__/transition.test.js
+++ b/src/__tests__/transition.test.js
@@ -1,30 +1,42 @@
import { userEvent } from '@testing-library/user-event'
-import { beforeEach, describe, expect, test, vi } from 'vitest'
+import { beforeEach, expect, test, vi } from 'vitest'
import { render, screen, waitFor } from '..'
import Transitioner from './fixtures/Transitioner.svelte'
-describe('transitions', () => {
- beforeEach(() => {
- if (window.navigator.userAgent.includes('jsdom')) {
- const raf = (fn) => setTimeout(() => fn(new Date()), 16)
- vi.stubGlobal('requestAnimationFrame', raf)
- }
+beforeEach(() => {
+ if (window.navigator.userAgent.includes('jsdom')) {
+ const raf = (fn) => setTimeout(() => fn(new Date()), 16)
+ vi.stubGlobal('requestAnimationFrame', raf)
+ }
+})
+
+test('on:introend', async () => {
+ const user = userEvent.setup()
+
+ render(Transitioner)
+ const start = screen.getByRole('button')
+ await user.click(start)
+
+ const pending = screen.getByTestId('intro-pending')
+ expect(pending).toBeInTheDocument()
+
+ await waitFor(() => {
+ const done = screen.queryByTestId('intro-done')
+ expect(done).toBeInTheDocument()
})
+})
- test('on:introend', async () => {
- const user = userEvent.setup()
+test('on:introend with prop change', async () => {
+ const { rerender } = render(Transitioner)
- render(Transitioner)
- const start = screen.getByRole('button')
- await user.click(start)
+ await rerender({ show: true })
- const pending = screen.getByTestId('intro-pending')
- expect(pending).toBeInTheDocument()
+ const pending = screen.getByTestId('intro-pending')
+ expect(pending).toBeInTheDocument()
- await waitFor(() => {
- const done = screen.queryByTestId('intro-done')
- expect(done).toBeInTheDocument()
- })
+ await waitFor(() => {
+ const done = screen.queryByTestId('intro-done')
+ expect(done).toBeInTheDocument()
})
})