10.0.1 • Published 3 years ago

espower-typescript v10.0.1

Weekly downloads
27,315
License
MIT
Repository
github
Last release
3 years ago

espower-typescript

power-assert instrumentor for TypeScript

npm version Node.js Version Support TypeScript Version Support build status Dependency Status monthly downloads License

TypeScript versions

espower-typescript v10.x is compatible with TypeScript v2.7+

Usage (zero-config mode)

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.

Configure

If your tests are not in 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

ts-node and 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"

JSX/React

.tsx files are supported.

allowJs

If allowJs: true in your tsconfig.json, assertions in test/**/*.(js|jsx) are empowered.

License

10.0.1

3 years ago

10.0.0

5 years ago

9.0.2

6 years ago

9.0.1

7 years ago

9.0.0

7 years ago

8.1.4

7 years ago

9.0.0-beta.0

7 years ago

8.1.3

8 years ago

8.1.2

8 years ago

8.1.1

8 years ago

8.1.1-rc.0

8 years ago

8.1.0

8 years ago

8.0.2

8 years ago

8.0.1

8 years ago

8.0.0

8 years ago

7.0.1

8 years ago

7.0.0

9 years ago

6.1.0

9 years ago

6.0.2

9 years ago

6.0.1

9 years ago

6.0.0

9 years ago

5.0.1

9 years ago

5.0.0

9 years ago

4.1.0

10 years ago

4.0.1

10 years ago

4.0.0

10 years ago

3.0.0

10 years ago

2.0.0

10 years ago

1.0.0

10 years ago

0.1.1

10 years ago

0.1.0

10 years ago