Skip to content

Commit 3bde48f

Browse files
committed
test: centralize vitest config and update test setup
1 parent 11ea3f1 commit 3bde48f

File tree

10 files changed

+89
-27
lines changed

10 files changed

+89
-27
lines changed

.changeset/great-humans-pump.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
'create-mcp-kit': patch
3+
'@mcp-tool-kit/shared': patch
4+
---
5+
6+
test: centralize vitest config and update test setup

package.json

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,9 @@
88
"build": "pnpm -r --aggregate-output --filter=./packages/* build",
99
"dev": "pnpm -r --aggregate-output --filter=./packages/create-mcp-kit dev",
1010
"start": "pnpm -r --aggregate-output --filter=./packages/create-mcp-kit start",
11-
"test": "pnpm -r --aggregate-output --filter=./packages/* test",
12-
"coverage": "pnpm -r --aggregate-output --filter=./packages/* coverage",
11+
"test": "vitest run",
12+
"coverage": "rimraf coverage && cross-env NODE_V8_COVERAGE=./coverage/tmp vitest run && npm run report",
13+
"report": "c8 report --reporter=lcov --reporter=html",
1314
"changeset": "changeset",
1415
"version": "changeset version"
1516
},
@@ -42,6 +43,7 @@
4243
"@typescript-eslint/eslint-plugin": "^8.38.0",
4344
"@typescript-eslint/parser": "^8.38.0",
4445
"@vitest/coverage-v8": "^3.2.4",
46+
"c8": "^10.1.3",
4547
"cross-env": "^10.0.0",
4648
"eslint": "^9.32.0",
4749
"eslint-plugin-import": "^2.32.0",

packages/create-mcp-kit/package.json

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,7 @@
4040
"build:types": "tsc --noEmit",
4141
"build": "cross-env NODE_ENV=production && npm run clean:dist && npm run build:types && rolldown -c rolldown.config.ts",
4242
"dev": "cross-env NODE_ENV=local && rolldown -c rolldown.config.ts --watch",
43-
"start": "node ./dist/index.js",
44-
"test": "vitest run"
43+
"start": "node ./dist/index.js"
4544
},
4645
"bugs": {
4746
"url": "https://github.com/my-mcp-hub/mcp-kit/issues"

packages/create-mcp-kit/tests/index.test.ts

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,14 @@ describe('test index cli', () => {
99
const testDir = join(tmpdir(), `test-cli-${Date.now()}`)
1010
mkdirSync(testDir, { recursive: true })
1111
const userInput = ['\x0D', '\x0D', '\x0D', '\x0D', 'y\x0D']
12-
const scriptPath = resolve('./src/index.ts')
13-
const subprocess = execa('tsx', [scriptPath], {
12+
const scriptPath = resolve('./packages/create-mcp-kit/src/index.ts')
13+
const subprocess = execa('c8', ['--reporter=lcov', '--reporter=text', 'tsx', scriptPath], {
1414
// stdio: ['pipe', 'inherit', 'inherit'],
1515
cwd: testDir,
16-
timeout: 30000,
16+
timeout: 60000,
17+
env: {
18+
...process.env,
19+
},
1720
})
1821
userInput.forEach((input, index) => {
1922
setTimeout(
@@ -26,5 +29,5 @@ describe('test index cli', () => {
2629
const result = await subprocess
2730
expect(result.stdout).toContain('Project created successfully!')
2831
rmSync(testDir, { recursive: true, force: true })
29-
}, 30000)
32+
}, 60000)
3033
})
Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,7 @@
1-
import { defineConfig } from 'vitest/config'
1+
import { defineProject } from 'vitest/config'
22

3-
export default defineConfig({
3+
export default defineProject({
44
test: {
5-
environment: 'node',
65
include: ['./tests/**/*.test.ts'],
7-
coverage: {
8-
provider: 'v8',
9-
include: ['src/**/*.ts'],
10-
},
116
},
127
})

packages/shared/package.json

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,7 @@
3636
"scripts": {
3737
"clean:dist": "rimraf dist",
3838
"build:types": "tsc",
39-
"build": "cross-env NODE_ENV=production && npm run clean:dist && npm run build:types && rolldown -c rolldown.config.ts",
40-
"test": "vitest run",
41-
"coverage": "rimraf coverage && vitest run --coverage"
39+
"build": "cross-env NODE_ENV=production && npm run clean:dist && npm run build:types && rolldown -c rolldown.config.ts"
4240
},
4341
"bugs": {
4442
"url": "https://github.com/my-mcp-hub/mcp-kit/issues"

packages/shared/tests/projectSetup.test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,5 +13,5 @@ describe('test project setup file', () => {
1313
await createProject(testDir, templatePath, { projectName })
1414
await installDependencies(testDir)
1515
rmSync(testDir, { recursive: true, force: true })
16-
}, 30000)
16+
}, 60000)
1717
})

packages/shared/vitest.config.ts

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,5 @@
1-
import { defineConfig } from 'vitest/config'
1+
import { defineProject } from 'vitest/config'
22

3-
export default defineConfig({
4-
test: {
5-
coverage: {
6-
provider: 'v8',
7-
include: ['src/**/*.ts'],
8-
},
9-
},
3+
export default defineProject({
4+
test: {},
105
})

pnpm-lock.yaml

Lines changed: 47 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

vitest.config.ts

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
import { defineConfig } from 'vitest/config'
2+
3+
export default defineConfig({
4+
test: {
5+
projects: [
6+
'packages/*/vitest.config.ts',
7+
],
8+
coverage: {
9+
provider: 'v8',
10+
include: [
11+
'packages/*/src/*.ts',
12+
],
13+
reporter: ['json'],
14+
reportsDirectory: './coverage/tmp',
15+
},
16+
},
17+
})

0 commit comments

Comments
 (0)