From e209f83b51957063f70f919985777035eed64098 Mon Sep 17 00:00:00 2001 From: Kirill Gavrilov Date: Tue, 21 Jan 2025 20:46:37 +0300 Subject: [PATCH] build: add Vitest --- package.json | 7 +++++-- vitest.config.ts | 14 ++++++++++++++ 2 files changed, 19 insertions(+), 2 deletions(-) create mode 100644 vitest.config.ts diff --git a/package.json b/package.json index 79553e5..869f519 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,8 @@ "scripts": { "dev": "node scripts/dev.js", "build": "tsc -noEmit -skipLibCheck && node scripts/esbuild.build.js production", - "test:eslint": "eslint --cache --cache-location out/.eslintcache" + "test:eslint": "eslint --cache --cache-location out/.eslintcache", + "test:unit": "vitest --coverage" }, "keywords": [ "obsidian.md", @@ -18,6 +19,7 @@ "@eslint/js": "9.18.0", "@stylistic/eslint-plugin": "2.13.0", "@types/node": "22.10.7", + "@vitest/coverage-v8": "3.0.3", "enquirer": "2.4.1", "esbuild": "0.24.2", "eslint": "9.18.0", @@ -26,7 +28,8 @@ "obsidian": "1.7.2", "obsidian-utils": "0.10.2", "typescript": "5.7.3", - "typescript-eslint": "8.21.0" + "typescript-eslint": "8.21.0", + "vitest": "3.0.3" }, "packageManager": "pnpm@9.15.4" } diff --git a/vitest.config.ts b/vitest.config.ts new file mode 100644 index 0000000..dd3e864 --- /dev/null +++ b/vitest.config.ts @@ -0,0 +1,14 @@ +import { defineConfig } from 'vitest/config' + +export default defineConfig({ + test: { + coverage: { + provider: 'v8', + reporter: ['lcov', 'html'], + reportsDirectory: 'out/coverage', + include: ['src/**/*.ts'], + }, + reporters: ['default', 'junit'], + outputFile: 'out/unit-tests-results.xml', + }, +})