diff --git a/.eslintrc.cjs b/.eslintrc.cjs
index 6021776..778d507 100644
--- a/.eslintrc.cjs
+++ b/.eslintrc.cjs
@@ -23,6 +23,9 @@ module.exports = {
parserOptions: {
parser: '@typescript-eslint/parser',
},
+ rules: {
+ 'no-undef-init': 'off',
+ },
},
{
files: ['*.ts'],
diff --git a/.prettierignore b/.prettierignore
index 113f29b..5e50c20 100644
--- a/.prettierignore
+++ b/.prettierignore
@@ -1,3 +1,4 @@
scripts/*
.eslintignore
.prettierignore
+.all-contributorsrc
diff --git a/.prettierrc.yaml b/.prettierrc.yaml
index e1bf864..0a2ace3 100644
--- a/.prettierrc.yaml
+++ b/.prettierrc.yaml
@@ -4,6 +4,6 @@ trailingComma: es5
plugins:
- prettier-plugin-svelte
overrides:
- - files: "*.svelte"
+ - files: '*.svelte'
options:
parser: svelte
diff --git a/src/__tests__/act.test.js b/src/__tests__/act.test.js
index 57fa5b9..75c9ded 100644
--- a/src/__tests__/act.test.js
+++ b/src/__tests__/act.test.js
@@ -1,25 +1,13 @@
-import { beforeEach, describe, expect, test } from 'vitest'
+import { setTimeout } from 'node:timers/promises'
+
+import { act, render } from '@testing-library/svelte'
+import { describe, expect, test } from 'vitest'
-import { act, fireEvent, render as stlRender } from '@testing-library/svelte'
import Comp from './fixtures/Comp.svelte'
describe('act', () => {
- let props
-
- const render = () => {
- return stlRender(Comp, {
- props
- })
- }
-
- beforeEach(() => {
- props = {
- name: 'World'
- }
- })
-
test('state updates are flushed', async () => {
- const { getByText } = render()
+ const { getByText } = render(Comp)
const button = getByText('Button')
expect(button).toHaveTextContent('Button')
@@ -31,24 +19,13 @@ describe('act', () => {
expect(button).toHaveTextContent('Button Clicked')
})
- test('findByTestId returns the element', async () => {
- const { findByTestId } = render()
-
- expect(await findByTestId('test')).toHaveTextContent(`Hello ${props.name}!`)
- })
-
test('accepts async functions', async () => {
- const sleep = (ms) =>
- new Promise((resolve) => {
- setTimeout(() => resolve(), ms)
- })
-
- const { getByText } = render()
+ const { getByText } = render(Comp)
const button = getByText('Button')
await act(async () => {
- await sleep(100)
- await fireEvent.click(button)
+ await setTimeout(100)
+ button.click()
})
expect(button).toHaveTextContent('Button Clicked')
diff --git a/src/__tests__/auto-cleanup.test.js b/src/__tests__/auto-cleanup.test.js
index 4d38d35..206d101 100644
--- a/src/__tests__/auto-cleanup.test.js
+++ b/src/__tests__/auto-cleanup.test.js
@@ -1,6 +1,6 @@
+import { render } from '@testing-library/svelte'
import { describe, expect, test } from 'vitest'
-import { render } from '@testing-library/svelte'
import Comp from './fixtures/Comp.svelte'
describe('auto-cleanup', () => {
diff --git a/src/__tests__/cleanup.test.js b/src/__tests__/cleanup.test.js
index 3e49548..7131624 100644
--- a/src/__tests__/cleanup.test.js
+++ b/src/__tests__/cleanup.test.js
@@ -1,7 +1,6 @@
+import { cleanup, render } from '@testing-library/svelte'
import { describe, expect, test, vi } from 'vitest'
-import { VERSION as SVELTE_VERSION } from 'svelte/compiler'
-import { act, cleanup, render } from '@testing-library/svelte'
import Mounter from './fixtures/Mounter.svelte'
const onExecuted = vi.fn()
@@ -16,8 +15,8 @@ describe('cleanup', () => {
expect(document.body).toBeEmptyDOMElement()
})
- test.runIf(SVELTE_VERSION < '5')('cleanup unmounts component', async () => {
- await act(renderSubject)
+ test('cleanup unmounts component', () => {
+ renderSubject()
cleanup()
expect(onDestroyed).toHaveBeenCalledOnce()
diff --git a/src/__tests__/context.test.js b/src/__tests__/context.test.js
index e7f2fd5..0fd672d 100644
--- a/src/__tests__/context.test.js
+++ b/src/__tests__/context.test.js
@@ -1,6 +1,6 @@
+import { render } from '@testing-library/svelte'
import { expect, test } from 'vitest'
-import { render } from '@testing-library/svelte'
import Comp from './fixtures/Context.svelte'
import { IS_HAPPYDOM, IS_SVELTE_5 } from './utils.js'
diff --git a/src/__tests__/debug.test.js b/src/__tests__/debug.test.js
index 769c0c7..e2a9eda 100644
--- a/src/__tests__/debug.test.js
+++ b/src/__tests__/debug.test.js
@@ -1,19 +1,13 @@
import { prettyDOM } from '@testing-library/dom'
-import { afterEach, beforeEach, describe, expect, test, vi } from 'vitest'
-
import { render } from '@testing-library/svelte'
+import { describe, expect, test, vi } from 'vitest'
+
import Comp from './fixtures/Comp.svelte'
describe('debug', () => {
- beforeEach(() => {
- vi.spyOn(console, 'log').mockImplementation(() => {})
- })
-
- afterEach(() => {
- console.log.mockRestore()
- })
-
test('pretty prints the base element', () => {
+ vi.stubGlobal('console', { log: vi.fn(), warn: vi.fn(), error: vi.fn() })
+
const { baseElement, debug } = render(Comp, { props: { name: 'world' } })
debug()
diff --git a/src/__tests__/events.test.js b/src/__tests__/events.test.js
index 16f688c..9074db9 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', () => {
@@ -21,7 +21,7 @@ describe('events', () => {
button,
new MouseEvent('click', {
bubbles: true,
- cancelable: true
+ cancelable: true,
})
)
diff --git a/src/__tests__/fixtures/Comp.svelte b/src/__tests__/fixtures/Comp.svelte
index c739725..ba23d88 100644
--- a/src/__tests__/fixtures/Comp.svelte
+++ b/src/__tests__/fixtures/Comp.svelte
@@ -1,7 +1,7 @@