Skip to content

Commit c4d211f

Browse files
authored
Ensure browser version of Svelte is used in tests (#471)
1 parent 889f8fd commit c4d211f

File tree

7 files changed

+32
-38
lines changed

7 files changed

+32
-38
lines changed

packages/blocks/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@
5151
"@sveltejs/vite-plugin-svelte": "^3.0.0",
5252
"@testing-library/dom": "^9.3.3",
5353
"@testing-library/jest-dom": "^6.1.5",
54-
"@testing-library/svelte": "^4.0.5",
54+
"@testing-library/svelte": "^4.1.0",
5555
"@threlte/core": "^7.0.12",
5656
"@threlte/extras": "^8.0.10",
5757
"@types/three": "^0.159.0",

packages/blocks/src/vitest.setup.ts

+1-6
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,2 @@
1-
import { afterEach } from 'vitest';
2-
import { cleanup } from '@testing-library/svelte';
31
import '@testing-library/jest-dom/vitest';
4-
5-
afterEach(() => {
6-
cleanup();
7-
});
2+
import '@testing-library/svelte/vitest';

packages/blocks/vite.config.ts

+5-2
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,21 @@
11
import { sveltekit } from '@sveltejs/kit/vite';
22
import { defineConfig } from 'vitest/config';
33

4-
export default defineConfig({
4+
export default defineConfig(({ mode }) => ({
55
plugins: [sveltekit()],
66
server: {
77
fs: {
88
allow: ['prime.css'],
99
},
1010
},
11+
resolve: {
12+
conditions: mode === 'test' ? ['browser'] : [],
13+
},
1114
test: {
1215
include: ['src/**/*.spec.ts'],
1316
setupFiles: ['src/vitest.setup.ts'],
1417
environment: 'jsdom',
1518
mockReset: true,
1619
unstubGlobals: true,
1720
},
18-
});
21+
}));

packages/core/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@
5353
"@sveltejs/vite-plugin-svelte": "^3.0.0",
5454
"@testing-library/dom": "^9.3.3",
5555
"@testing-library/jest-dom": "^6.1.5",
56-
"@testing-library/svelte": "^4.0.5",
56+
"@testing-library/svelte": "^4.1.0",
5757
"@testing-library/user-event": "^14.5.1",
5858
"@types/lodash-es": "^4.17.12",
5959
"@types/prismjs": "^1.26.3",

packages/core/src/vitest.setup.ts

+1-6
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
1-
import { afterEach } from 'vitest';
2-
import { cleanup } from '@testing-library/svelte';
31
import '@testing-library/jest-dom/vitest';
2+
import '@testing-library/svelte/vitest';
43

54
/**
65
* `PointerEvent` does not exist in `jsdom` so this polyfill is based off this
@@ -39,7 +38,3 @@ if (!global.PointerEvent) {
3938
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-explicit-any
4039
global.PointerEvent = PointerEvent as any;
4140
}
42-
43-
afterEach(() => {
44-
cleanup();
45-
});

packages/core/vite.config.ts

+5-4
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,21 @@
11
import { sveltekit } from '@sveltejs/kit/vite';
22
import { defineConfig } from 'vitest/config';
33

4-
export default defineConfig({
4+
export default defineConfig(({ mode }) => ({
55
plugins: [sveltekit()],
66
server: {
77
fs: {
88
allow: ['prime.css'],
99
},
1010
},
11+
resolve: {
12+
conditions: mode === 'test' ? ['browser'] : [],
13+
},
1114
test: {
1215
include: ['src/**/__tests__/*.spec.ts'],
1316
setupFiles: ['src/vitest.setup.ts'],
1417
environment: 'jsdom',
1518
mockReset: true,
1619
unstubGlobals: true,
17-
// For testing svelte internals like onMount, see: https://github.com/vitest-dev/vitest/issues/2834
18-
alias: [{ find: /^svelte$/u, replacement: 'svelte/internal' }],
1920
},
20-
});
21+
}));

pnpm-lock.yaml

+18-18
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)