mirror of https://github.com/vuejs/core.git
build: adjust dts test setup
This commit is contained in:
parent
d10a81eacb
commit
1ddde63b40
|
@ -32,7 +32,7 @@ module.exports = {
|
|||
overrides: [
|
||||
// tests, no restrictions (runs in Node / jest with jsdom)
|
||||
{
|
||||
files: ['**/__tests__/**', 'test-dts/**'],
|
||||
files: ['**/__tests__/**', 'packages/dts-test/**'],
|
||||
rules: {
|
||||
'no-restricted-globals': 'off',
|
||||
'no-restricted-syntax': 'off',
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
"test-unit": "vitest -c vitest.unit.config.ts",
|
||||
"test-e2e": "node scripts/build.mjs vue -f global -d && vitest -c vitest.e2e.config.ts",
|
||||
"test-dts": "run-s build-dts test-dts-only",
|
||||
"test-dts-only": "tsc -p ./test-dts/tsconfig.build.json",
|
||||
"test-dts-only": "tsc -p ./packages/dts-test/tsconfig.test.json",
|
||||
"test-coverage": "vitest -c vitest.unit.config.ts --coverage",
|
||||
"release": "node scripts/release.mjs",
|
||||
"changelog": "conventional-changelog -p angular -i CHANGELOG.md -s",
|
||||
|
@ -37,7 +37,6 @@
|
|||
"preinstall": "node ./scripts/preinstall.mjs",
|
||||
"postinstall": "simple-git-hooks"
|
||||
},
|
||||
"types": "test-dts/index.d.ts",
|
||||
"simple-git-hooks": {
|
||||
"pre-commit": "pnpm lint-staged && pnpm check",
|
||||
"commit-msg": "node scripts/verifyCommit.mjs"
|
||||
|
@ -69,9 +68,6 @@
|
|||
"@typescript-eslint/parser": "^5.23.0",
|
||||
"@vitest/coverage-istanbul": "^0.28.2",
|
||||
"@vue/consolidate": "0.17.3",
|
||||
"@vue/reactivity": "workspace:*",
|
||||
"@vue/runtime-core": "workspace:*",
|
||||
"@vue/runtime-dom": "workspace:*",
|
||||
"brotli": "^1.3.2",
|
||||
"chalk": "^4.1.0",
|
||||
"conventional-changelog-cli": "^2.0.31",
|
||||
|
@ -105,7 +101,6 @@
|
|||
"tslib": "^2.4.0",
|
||||
"typescript": "^4.9.0",
|
||||
"vite": "^4.0.4",
|
||||
"vitest": "^0.28.2",
|
||||
"vue": "workspace:*"
|
||||
"vitest": "^0.28.2"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
# dts-test
|
||||
|
||||
Tests Typescript types to ensure the types remain as expected.
|
||||
|
||||
- This directory is included in the root `tsconfig.json`, where package imports are aliased to `src` directories, so in IDEs and the `pnpm check` script the types are validated against source code.
|
||||
|
||||
- When runnong `tsc` with `packages/dts-test/tsconfig.test.json`, packages are resolved using using normal `node` resolution, so the types are validated against actual **built** types. This requires the types to be built first via `pnpm build-types`.
|
|
@ -1,7 +1,7 @@
|
|||
// This directory contains a number of d.ts assertions
|
||||
// use \@ts-expect-error where errors are expected.
|
||||
|
||||
export * from '@vue/runtime-dom'
|
||||
export * from 'vue'
|
||||
|
||||
export function describe(_name: string, _fn: () => void): void
|
||||
export function test(_name: string, _fn: () => any): void
|
|
@ -0,0 +1,10 @@
|
|||
{
|
||||
"name": "dts-test",
|
||||
"private": true,
|
||||
"dependencies": {
|
||||
"vue": "workspace:*",
|
||||
"@vue/runtime-core": "workspace:*",
|
||||
"@vue/runtime-dom": "workspace:*",
|
||||
"@vue/reactivity": "workspace:*"
|
||||
}
|
||||
}
|
|
@ -1,5 +1,11 @@
|
|||
import { WritableComputedRef } from '@vue/reactivity'
|
||||
import { expectType, ref, computed, Ref, ComputedRef } from './index'
|
||||
import {
|
||||
expectType,
|
||||
ref,
|
||||
computed,
|
||||
Ref,
|
||||
ComputedRef,
|
||||
WritableComputedRef
|
||||
} from './index'
|
||||
import 'vue/macros-global'
|
||||
import { RefType, RefTypes } from 'vue/macros'
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
import { ComponentPropsOptions } from '@vue/runtime-core'
|
||||
import { isArray, isPromise, isFunction } from '@vue/shared'
|
||||
import {
|
||||
getCurrentInstance,
|
||||
|
@ -8,7 +7,11 @@ import {
|
|||
unsetCurrentInstance
|
||||
} from './component'
|
||||
import { EmitFn, EmitsOptions } from './componentEmits'
|
||||
import { ComponentObjectPropsOptions, ExtractPropTypes } from './componentProps'
|
||||
import {
|
||||
ComponentPropsOptions,
|
||||
ComponentObjectPropsOptions,
|
||||
ExtractPropTypes
|
||||
} from './componentProps'
|
||||
import { warn } from './warning'
|
||||
|
||||
// dev only
|
||||
|
|
|
@ -18,9 +18,6 @@ importers:
|
|||
'@typescript-eslint/parser': ^5.23.0
|
||||
'@vitest/coverage-istanbul': ^0.28.2
|
||||
'@vue/consolidate': 0.17.3
|
||||
'@vue/reactivity': workspace:*
|
||||
'@vue/runtime-core': workspace:*
|
||||
'@vue/runtime-dom': workspace:*
|
||||
brotli: ^1.3.2
|
||||
chalk: ^4.1.0
|
||||
conventional-changelog-cli: ^2.0.31
|
||||
|
@ -55,7 +52,6 @@ importers:
|
|||
typescript: ^4.9.0
|
||||
vite: ^4.0.4
|
||||
vitest: ^0.28.2
|
||||
vue: workspace:*
|
||||
devDependencies:
|
||||
'@babel/parser': 7.20.15
|
||||
'@babel/types': 7.20.7
|
||||
|
@ -71,9 +67,6 @@ importers:
|
|||
'@typescript-eslint/parser': 5.50.0_jofidmxrjzhj7l6vknpw5ecvfe
|
||||
'@vitest/coverage-istanbul': 0.28.3_jsdom@21.1.0+terser@5.16.2
|
||||
'@vue/consolidate': 0.17.3
|
||||
'@vue/reactivity': link:packages/reactivity
|
||||
'@vue/runtime-core': link:packages/runtime-core
|
||||
'@vue/runtime-dom': link:packages/runtime-dom
|
||||
brotli: 1.3.3
|
||||
chalk: 4.1.2
|
||||
conventional-changelog-cli: 2.2.2
|
||||
|
@ -108,7 +101,6 @@ importers:
|
|||
typescript: 4.9.5
|
||||
vite: 4.1.1_ghge5pqdvzsmxto52quo4r2say
|
||||
vitest: 0.28.3_jsdom@21.1.0+terser@5.16.2
|
||||
vue: link:packages/vue
|
||||
|
||||
packages/compiler-core:
|
||||
specifiers:
|
||||
|
@ -188,6 +180,18 @@ importers:
|
|||
'@vue/compiler-dom': link:../compiler-dom
|
||||
'@vue/shared': link:../shared
|
||||
|
||||
packages/dts-test:
|
||||
specifiers:
|
||||
'@vue/reactivity': workspace:*
|
||||
'@vue/runtime-core': workspace:*
|
||||
'@vue/runtime-dom': workspace:*
|
||||
vue: workspace:*
|
||||
dependencies:
|
||||
'@vue/reactivity': link:../reactivity
|
||||
'@vue/runtime-core': link:../runtime-core
|
||||
'@vue/runtime-dom': link:../runtime-dom
|
||||
vue: link:../vue
|
||||
|
||||
packages/reactivity:
|
||||
specifiers:
|
||||
'@vue/shared': 3.2.47
|
||||
|
|
|
@ -22,7 +22,8 @@ const entries = {
|
|||
const nonSrcPackages = [
|
||||
'sfc-playground',
|
||||
'size-check',
|
||||
'template-explorer'
|
||||
'template-explorer',
|
||||
'dts-test'
|
||||
]
|
||||
|
||||
for (const dir of dirs) {
|
||||
|
|
|
@ -1,13 +0,0 @@
|
|||
# Test-ts
|
||||
|
||||
Tests Typescript types to ensure the types remain as expected.
|
||||
|
||||
## Configuration
|
||||
|
||||
### tsconfig.json
|
||||
|
||||
Config used to test against the package source
|
||||
|
||||
### tsconfig.build.json
|
||||
|
||||
Replaces the `vue` and `@vue/*` dependencies with the built Typescript to ensure the published types are correct.
|
|
@ -1,8 +0,0 @@
|
|||
{
|
||||
"extends": "../tsconfig.json",
|
||||
"compilerOptions": {
|
||||
"noEmit": true,
|
||||
"declaration": true
|
||||
},
|
||||
"exclude": ["../packages/*/__tests__", "../packages/template-explorer"]
|
||||
}
|
|
@ -10,6 +10,6 @@
|
|||
"packages/template-explorer",
|
||||
"packages/sfc-playground",
|
||||
"packages/size-check",
|
||||
"test-dts"
|
||||
"packages/dts-test"
|
||||
]
|
||||
}
|
||||
|
|
|
@ -32,6 +32,6 @@
|
|||
"packages/*/src",
|
||||
"packages/runtime-dom/types/jsx.d.ts",
|
||||
"packages/*/__tests__",
|
||||
"test-dts"
|
||||
"packages/dts-test"
|
||||
]
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue