From 6b9323e9a6186dc5e133986e9443cf2fc67bf025 Mon Sep 17 00:00:00 2001 From: Michael Cousins Date: Mon, 29 Apr 2024 09:27:42 -0400 Subject: [PATCH] docs(svelte-testing-library): add sveltekit setup instructions Closes #1388 --- docs/svelte-testing-library/setup.mdx | 31 +++++++++++++++++++++------ 1 file changed, 24 insertions(+), 7 deletions(-) diff --git a/docs/svelte-testing-library/setup.mdx b/docs/svelte-testing-library/setup.mdx index 7da928a09..f7b14938c 100644 --- a/docs/svelte-testing-library/setup.mdx +++ b/docs/svelte-testing-library/setup.mdx @@ -49,7 +49,7 @@ runner that's ESM compatible. your DOM library of choice and optionally configure your setup file from step (2). - ```js title="vitest.config.js" + ```js title="vite.config.js" import {defineConfig} from 'vitest/config' import {svelte} from '@sveltejs/vite-plugin-svelte' import {svelteTesting} from '@testing-library/svelte/vite' @@ -63,6 +63,22 @@ runner that's ESM compatible. }) ``` + Or, if you're using [SvelteKit][sveltekit]: + + ```js title="vite.config.js" + import {defineConfig} from 'vitest/config' + import {sveltekit} from '@sveltejs/kit/vite' + import {svelteTesting} from '@testing-library/svelte/vite' + + export default defineConfig({ + plugins: [sveltekit(), svelteTesting()], + test: { + environment: 'jsdom', + setupFiles: ['./vitest-setup.js'], + }, + }) + ``` + :::note The `svelteTesting` plugin: @@ -115,6 +131,7 @@ runner that's ESM compatible. [happy-dom]: https://github.com/capricorn86/happy-dom [@vitest/ui]: https://vitest.dev/guide/ui.html [vitest dom]: https://vitest.dev/guide/environment.html +[sveltekit]: https://kit.svelte.dev/ [testing-library/svelte-testing-library#222]: https://github.com/testing-library/svelte-testing-library/issues/222 [test-setup-files]: https://vitest.dev/config/#setupfiles @@ -155,13 +172,13 @@ you must use Jest in [ESM mode][jest esm mode]. ```js title="jest.config.js" module.exports = { - "transform": { - "^.+\\.svelte$": "svelte-jester" + transform: { + '^.+\\.svelte$': 'svelte-jester', }, - "moduleFileExtensions": ["js", "svelte"], - "extensionsToTreatAsEsm": ["svelte"] - "testEnvironment": "jsdom", - "setupFilesAfterEnv": ["/jest-setup.js"] + moduleFileExtensions: ['js', 'svelte'], + extensionsToTreatAsEsm: ['.svelte'], + testEnvironment: 'jsdom', + setupFilesAfterEnv: ['/jest-setup.js'], } ```