babel-plugin-empower-assert
raw JSON → 2.0.0 verified Sat Apr 25 auth: no javascript
Babel plugin that transforms standard Node.js assert() calls into power-assert empowered assertions at compile time, enabling detailed failure messages with expression graph visualization. Version 2.0.0 requires Babel 7 and power-assert 1.x. The package is lightweight, focused solely on the transformation step, and must be used alongside power-assert. For Babel 6, use version 1.x. Provides enhanced debugging for tests but adds no runtime overhead.
Common errors
error Error: Cannot find module 'babel-plugin-empower-assert' ↓
cause Plugin not installed or installed in wrong location (e.g., globally instead of locally)
fix
Run npm install --save-dev babel-plugin-empower-assert in your project directory.
error ReferenceError: assert is not defined ↓
cause The transformed code requires power-assert at runtime, but it is missing from dependencies
fix
Install power-assert: npm install power-assert --save
error Error: Plugin/Preset files are not allowed to export objects, only functions ↓
cause Using version 2.x with Babel 6; Babel 6 expects function-based plugins, but 2.x exports as object for Babel 7
fix
Use version 1.x for Babel 6: npm install babel-plugin-empower-assert@1.4.0 --save-dev
Warnings
breaking Babel 7 is incompatible with Babel 6. Use version 1.x for Babel 6. ↓
fix Downgrade to version 1.4.0 with npm install babel-plugin-empower-assert@1.4.0 --save-dev
gotcha You must have power-assert installed separately as a dependency; the plugin does not include it. ↓
fix Add power-assert to your dependencies: npm install power-assert --save-dev
gotcha The plugin only transforms require('assert') to require('power-assert'); it does not modify assert methods like assert.ok() beyond the replacement. ↓
fix Ensure power-assert is used in your runtime environment for the enhanced output.
deprecated Babel 6 version is on older release line (1.x); new development targets Babel 7. ↓
fix Migrate to Babel 7 and use version 2.0.0.
Install
npm install babel-plugin-empower-assert yarn add babel-plugin-empower-assert pnpm add babel-plugin-empower-assert Imports
- babel-plugin-empower-assert wrong
"plugins": ["empower-assert"]correct"plugins": ["babel-plugin-empower-assert"] - default wrong
import empowerAssert from 'babel-plugin-empower-assert';correctconst empowerAssert = require('babel-plugin-empower-assert'); - assert wrong
var assert = require('assert');correctvar assert = require('power-assert');
Quickstart
// Install dependencies:
// npm install --save-dev babel-plugin-empower-assert power-assert
// .babelrc
{
"env": {
"development": {
"plugins": ["babel-plugin-empower-assert"]
}
}
}
// source.js (before transformation)
'use strict';
var assert = require('assert');
function add(a, b) {
assert(!isNaN(a));
assert.equal(typeof b, 'number');
return a + b;
}
// After babel transformation, 'require("assert")' becomes 'require("power-assert")'