babel-plugin-empower-assert
is a Babel plugin to convert assert to power-assert at compile time.
$ npm install --save-dev babel-plugin-empower-assert power-assert
Babel7 is incompatible with Babel6.
For Babel6, you need to use the 1.x release of babel-plugin-empower-assert.
$ npm install --save-dev babel-plugin-empower-assert@1.4.0
via .babelrc (Recommended)
{
"presets": [
...
],
"env": {
"development": {
"plugins": [
"babel-plugin-empower-assert"
],
}
}
}
$ babel /path/to/src/target.js > /path/to/build/target.js
via Babel CLI
$ babel --plugins babel-plugin-empower-assert /path/to/src/target.js > /path/to/build/target.js
or shortly,
$ babel --plugins empower-assert /path/to/src/target.js > /path/to/build/target.js
via Babel API
var babel = require('@babel/core');
var jsCode = fs.readFileSync('/path/to/src/target.js');
var transformed = babel.transform(jsCode, {
presets: [...],
plugins: ['babel-plugin-empower-assert']
});
console.log(transformed.code);
For given math.js
below,
'use strict';
var assert = require('assert');
function add (a, b) {
assert(!isNaN(a));
assert.equal(typeof b, 'number');
assert.ok(!isNaN(b));
return a + b;
}
Run babel
with --plugins empower-assert
to transform code.
$ babel --plugins empower-assert /path/to/demo/math.js > /path/to/build/math.js
You will see assert
is converted to power-assert
.
'use strict';
var assert = require('power-assert');
function add(a, b) {
assert(!isNaN(a));
assert.equal(typeof b, 'number');
assert.ok(!isNaN(b));
return a + b;
}
Licensed under the MIT license.