generated from graasp/graasp-repo
-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathvitest.workspace.ts
65 lines (64 loc) · 1.78 KB
/
vitest.workspace.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
import { storybookTest } from '@storybook/experimental-addon-test/vitest-plugin';
import { configDefaults, defineWorkspace } from 'vitest/config';
const queryClientInclude = 'src/query/**/*.test.ts';
// More info at: https://storybook.js.org/docs/writing-tests/vitest-plugin
export default defineWorkspace([
{
extends: './vite.config.js',
test: {
name: 'unit',
include: ['src/**/*.test.ts'],
exclude: [...configDefaults.exclude, queryClientInclude],
},
},
{
// add "extends" to merge two configs together
extends: './vite.config.js',
test: {
include: [queryClientInclude],
// it is recommended to define a name when using inline configs
name: 'query',
environment: 'happy-dom',
},
},
{
extends: 'vite.config.ts',
plugins: [
// See options at: https://storybook.js.org/docs/writing-tests/vitest-plugin#storybooktest
storybookTest({ configDir: '.storybook' }),
],
optimizeDeps: {
entries: ['src/**/*.stories.tsx', '.storybook/preview.tsx'],
include: [
'react-dom/client',
'react-helmet-async',
'@graasp/stylis-plugin-rtl',
'@emotion/cache',
'@emotion/react',
'stylis',
'i18next-browser-languagedetector',
'i18next-fetch-backend',
'@tanstack/zod-adapter',
'zod',
'react-hook-form',
'@tanstack/router-devtools',
'date-fns/isAfter',
'jwt-decode',
'react-i18next',
'react',
],
},
test: {
include: ['src/**/*.stories.tsx'],
name: 'storybook',
retry: 1,
browser: {
enabled: true,
headless: true,
name: 'chromium',
provider: 'playwright',
},
setupFiles: ['.storybook/vitest.setup.ts'],
},
},
]);