/// import tailwindcss from "@tailwindcss/vite"; import { defineConfig } from "vitest/config"; import { playwright } from "@vitest/browser-playwright"; import { sveltekit } from "@sveltejs/kit/vite"; import path from "node:path"; import { fileURLToPath } from "node:url"; import { storybookTest } from "@storybook/addon-vitest/vitest-plugin"; const dirname = typeof __dirname !== "undefined" ? __dirname : path.dirname(fileURLToPath(import.meta.url)); // More info at: https://storybook.js.org/docs/next/writing-tests/integrations/vitest-addon export default defineConfig({ plugins: [tailwindcss(), sveltekit()], test: { expect: { requireAssertions: true }, projects: [ { extends: "./vite.config.ts", test: { name: "client", browser: { enabled: true, provider: playwright(), instances: [ { browser: "chromium", headless: true } ] }, include: ["src/**/*.svelte.{test,spec}.{js,ts}"], exclude: ["src/lib/server/**"] } }, { extends: "./vite.config.ts", test: { name: "server", environment: "node", include: ["src/**/*.{test,spec}.{js,ts}"], exclude: ["src/**/*.svelte.{test,spec}.{js,ts}"] } }, { extends: true, plugins: [ // The plugin will run tests for the stories defined in your Storybook config // See options at: https://storybook.js.org/docs/next/writing-tests/integrations/vitest-addon#storybooktest storybookTest({ configDir: path.join(dirname, ".storybook") }) ], test: { name: "storybook", browser: { enabled: true, headless: true, provider: playwright({}), instances: [ { browser: "chromium" } ] } } } ] } });