Use `test/tsconfig.json` with ts-node for testing.
MIT License
Use test/tsconfig.json
with ts-node for testing.
test/tsconfig.json
This register library load tsconfig.json
file by following priority.
project/{test}/tsconfig.test.json
project/{test}/tsconfig.json
project/tsconfig.test.json
project/tsconfig.json
{test}
is test
directory by default.
You can specified the {test}
by directories
of package.json
.
"directories": {
"test": "test"
},
Notes: Why need to load different tsconfig.json
between main and test?
In some times, we use different tsconfig.json
between main code and test code.
For example, you can enable allowJs
in test code.
It supports gradual migration that convert JavaScript to TypeScript.
ts-node
(v4) disable type-check
by default.This behavior is reverted in v6.0.0
The motivation is based on so not good experience.
mocha
runs fine while tsc
cannot compile the script · Issue #448 · textlint/textlintThis register library supports Mike Haas's opinion.
test code is still code, if there's type errors in such test code, shouldn't it fail? -- https://github.com/kulshekhar/ts-jest/issues/79#issuecomment-355397865
Install with npm:
npm install ts-node ts-node-test-register --save-dev
⚠️ ts-node is peerDependencies.
You need to install ts-node
.
Using with mocha.
mocha --require ts-node-test-register "test/**/*.ts"
Or define --require ts-node-test-register
to .mocharc.{js,json,yml}
.
├── package.json
├── .mocharc.json (--require ts-node-test-register)
├── src
│ └── index.ts
└── test
├── tsconfig.json // <= load this tsconfig.json
└── index-test.ts
For more details, see example.
See Releases page.
Install devDependencies and Run yarn test
:
yarn test
yarn run test:example
Pull requests and stars are always welcome.
For bugs and feature requests, please create an issue.
git checkout -b my-new-feature
git commit -am 'Add some feature'
git push origin my-new-feature
MIT © azu