power-assert instrumentor for TypeScript
espower-typescript v10.x is compatible with TypeScript v2.7+
Install
$ npm install -D espower-typescript power-assert mocha typescript @types/node @types/mocha
Create a test file (intensionally failed)
// test/test.ts import assert = require('assert'); describe('Array#join', () => { it('joins all elements into a string with separator', () => { assert(['a', 'b', 'c'].join(':') === 'a:b:c:'); }); });
Run test
$ ./node_modules/.bin/mocha --require espower-typescript/guess "test/**/*.ts"
Output
1) Array#join
joins all elements into a string with separator:
AssertionError [ERR_ASSERTION]: # test.ts:6
assert(['a','b','c'].join(':') === 'a:b:c:')
| | |
["a","b","c"] "a:b:c" false
CAUTION: don't use import assert from 'assert'
Just use old style import assert = require('assert')
for assert module. This is limitation.
test
directory
You can set test directory in your package.json
{ "name": "your-module", "description": "Your module", "version": "0.0.1", "directories": { "test": "spec/" }, ... }
Then, run mocha with --require espower-typescript/guess
$ ./node_modules/.bin/mocha --require espower-typescript/guess "spec/**/*.ts"
Note: 'espower-typescript/guess'
is inspired by intelli-espower-loader
tsconfig.json
espower-typescript uses ts-node internally. It loads your tsconfig.json automatically.
Disable type check (transpile only)Use TS_NODE_TRANSPILE_ONLY
env of ts-node
$ TS_NODE_TRANSPILE_ONLY=1 ./node_modules/.bin/mocha --require espower-typescript/guess "test/**/*.ts"
.tsx
files are supported.
If allowJs: true
in your tsconfig.json
, assertions in test/**/*.(js|jsx)
are empowered.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4