https://github.com/power-assert-js/babel-plugin-empower-assert
Babel plugin to convert assert to power-assert at compile time
https://github.com/power-assert-js/babel-plugin-empower-assert
Last synced: about 1 year ago
JSON representation
Babel plugin to convert assert to power-assert at compile time
- Host: GitHub
- URL: https://github.com/power-assert-js/babel-plugin-empower-assert
- Owner: power-assert-js
- License: mit
- Created: 2016-04-12T07:32:54.000Z (about 10 years ago)
- Default Branch: master
- Last Pushed: 2023-01-04T11:27:03.000Z (over 3 years ago)
- Last Synced: 2025-03-17T23:19:43.393Z (over 1 year ago)
- Language: JavaScript
- Size: 54.7 KB
- Stars: 6
- Watchers: 2
- Forks: 1
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
[![power-assert][power-assert-banner]][power-assert-url]
[![Build Status][travis-image]][travis-url]
[![NPM version][npm-image]][npm-url]
[![License][license-image]][license-url]
`babel-plugin-empower-assert` is a [Babel](https://babeljs.io/) plugin to convert [assert](https://nodejs.org/api/assert.html) to [power-assert](https://github.com/power-assert-js/power-assert) at compile time.
INSTALL
---------------------------------------
```
$ npm install --save-dev babel-plugin-empower-assert power-assert
```
CAUTION
---------------------------------------
Babel7 is incompatible with Babel6.
For Babel6, you need to use [the 1.x release of babel-plugin-empower-assert](https://github.com/power-assert-js/babel-plugin-empower-assert/tree/v1.4.0).
```
$ npm install --save-dev babel-plugin-empower-assert@1.4.0
```
HOW TO USE
---------------------------------------
### via [.babelrc](http://babeljs.io/docs/usage/babelrc/) (Recommended)
```javascript
{
"presets": [
...
],
"env": {
"development": {
"plugins": [
"babel-plugin-empower-assert"
],
}
}
}
```
```
$ babel /path/to/src/target.js > /path/to/build/target.js
```
### via [Babel CLI](http://babeljs.io/docs/usage/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](http://babeljs.io/docs/usage/api/)
```javascript
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);
```
EXAMPLE
---------------------------------------
For given `math.js` below,
```javascript
'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`.
```javascript
'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;
}
```
AUTHOR
---------------------------------------
* [Takuto Wada](https://github.com/twada)
LICENSE
---------------------------------------
Licensed under the [MIT](https://github.com/power-assert-js/babel-plugin-empower-assert/blob/master/LICENSE) license.
[power-assert-url]: https://github.com/power-assert-js/power-assert
[power-assert-banner]: https://raw.githubusercontent.com/power-assert-js/power-assert-js-logo/master/banner/banner-official-fullcolor.png
[travis-url]: https://travis-ci.org/power-assert-js/babel-plugin-empower-assert
[travis-image]: https://secure.travis-ci.org/power-assert-js/babel-plugin-empower-assert.svg?branch=master
[npm-url]: https://npmjs.org/package/babel-plugin-empower-assert
[npm-image]: https://badge.fury.io/js/babel-plugin-empower-assert.svg
[license-url]: https://github.com/power-assert-js/babel-plugin-empower-assert/blob/master/LICENSE
[license-image]: https://img.shields.io/badge/license-MIT-brightgreen.svg