A tester to check expected type errors
npm install type-tester




A tester to check expected type errors.
This package provides utility to verify that the type you have written stricter reports expected type errors, for TypeScript.
Use [npm] or a compatible tool to install this package.
```
npm install type-tester typescript
- Requires Node.js >=6.0.0.
1. Write fixture files.
2. Write test files.
3. Run test files with test runner such as [mocha].
The fixture file should include the situation of type error.
You must add directive comments such as // @expected 2345 for each line of expected errors.
The number is the error code of TypeScript.
For example: test/fixtures/event-target-shim/fixture.ts
The test file should execute TypeTester#verify() method with the path to the fixture files and compiler options.
For example: test/example.ts
Because the TypeTester#verify() method defines test cases with describe / it global functions, you must run it with test runners.
For example:
`
mocha test/example.ts --require ts-node/register
this test runs the type tester merely.
fixture.ts
√ should have an error TS2345 at L98.
√ should have an error TS2345 at L101.
√ should have an error TS7006 at L102.
√ should have an error TS2345 at L105.
√ should have an error TS7006 at L106.
√ should have an error TS2322 at L108.
√ should have an error TS2322 at L109.
√ should have an error TS2345 at L152.
8 passing (11ms)
`
The class to verify expected type errors.
#### Parameters
Name | Description
:----|:-----------
ts | API to use type checking.options.describe | Optional. Function to declare test suites. Use global.describe by default.options.it | Optional. Function to declare test cases. Use global.it by default.
Verify the given fixture files.
#### Parameters
Name | Description
:----|:-----------
fixtureFiles | Path to fixture files.compilerOptions | Compiler options to verify the fixture files.
- https://github.com/mysticatea/type-tester/releases
Contribution is welcome!
Please use GitHub issues and pull requests.
- npm run build generates files into dist directory.npm run clean
- removes temporary files.npm run coverage
- opens the coverage report the last npm test command generated.npm run lint
- runs ESLint.npm test
- runs tests.npm run watch` runs tests on each file edits.
-
[mocha]: https://mochajs.org/
[npm]: https://www.npmjs.com/