test: добавляет Vitest и CI-workflow по образцу request-portal
Покрыты чистые функции бизнес-логики: validateFeedback (обязательность полей по видам обращения, минимальная длина текста, анонимность) и getAppealFieldsConfig (согласованность конфига — обязательное поле не может быть скрыто). React-компоненты пока не тестируются: сначала нужно решить, куда форма отправляет данные, иначе тесты придётся сразу переписывать. vite.config.ts: defineConfig теперь из 'vitest/config' — один файл конфига на сборку и тесты вместо двух рассинхронизирующихся. globals: true и environment: 'node', т.к. тестируется логика, а не DOM. .gitea/workflows/test.yml — тот же принцип, что в request-portal (push в main, PR, ретраи npm install), но npm run ci вместо heft test: здесь нет SPFx/Jest, и деплой пока не добавлен — куда разворачивать dist/, не решено. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
+7
-3
@@ -8,9 +8,12 @@
|
||||
},
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
"build": "tsc --noEmit && vite build",
|
||||
"build": "tsc --noEmit && vitest run && vite build",
|
||||
"preview": "vite preview",
|
||||
"typecheck": "tsc --noEmit"
|
||||
"typecheck": "tsc --noEmit",
|
||||
"test": "vitest run",
|
||||
"test:watch": "vitest",
|
||||
"ci": "tsc --noEmit && vitest run"
|
||||
},
|
||||
"dependencies": {
|
||||
"@fluentui/react": "^8.106.4",
|
||||
@@ -26,6 +29,7 @@
|
||||
"@vitejs/plugin-react": "^4.3.4",
|
||||
"sass": "^1.83.0",
|
||||
"typescript": "~5.8.0",
|
||||
"vite": "^6.0.7"
|
||||
"vite": "^6.0.7",
|
||||
"vitest": "^4.1.11"
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user