@forsakringskassan/vitest-config-jsdom
Forsakringskassan shareable config for Vitest
Vitest preset for Försäkringskassan.
This preset is for using with browser projects.
If you do not need JSDOM use @forsakringskassan/vitest-config.
Installation
Install Vitest and this preset:
npm install --save-dev vitest @forsakringskassan/vitest-config-jsdom
vitest must be also installed in your project; we do not support global mode.
Usage
vite.config.mts
import { defineConfig } from "vitest/config";
+import { defineTestConfig } from "@forsakringskassan/vitest-config-jsdom";
export default defineConfig({
+ test: defineTestConfig(),
});
Override defaults
You can pass your own config to defineTestConfig to override defaults:
vite.config.mts
import { defineConfig } from "vitest/config";
import { defineTestConfig } from "@forsakringskassan/vitest-config-jsdom";
export default defineConfig({
test: defineTestConfig({
+ environment: "node",
}),
});
Setup
This preset installs a setup file which:
- Configures
@fkui/logic(if present) to reset element id between tests. - Configures
@vue/test-utils(if present) to automatically unmount (destroy) any mounted wrapper. - Configures
@vue/test-utils(if present) to treat Vue.js warnings as errors.
To disable this explicitly set setupFiles to an empty array:
import { defineConfig } from "vitest/config";
import { defineTestConfig } from "@forsakringskassan/vitest-config-jsdom";
export default defineConfig({
test: defineTestConfig({
+ setupFiles: [],
}),
});
If you need additional setup, you can explicitly include @forsakringskassan/vitest-config-jsdom/setup in setupFiles (or import it directly from your custom setup file):
import { defineConfig } from "vitest/config";
import { defineTestConfig } from "@forsakringskassan/vitest-config-jsdom";
export default defineConfig({
test: defineTestConfig({
+ setupFiles: [
+ "@forsakringskassan/vitest-config-jsdom/setup"],
+ "./custom-setup.mts",
+ ],
}),
});