buba
v4.0.2
Published
Buble + little bit of babel for your esnext tests
Downloads
1,876
Maintainers
Readme
buba
Bublé transform + a little bit of Babel
Why?
Because a wise man once said your source code should be transpiled with same tool as your tests to avoid any hidden bugs.
The usecase would be transpiling es* source code with Bublé and have tests match as well. An alternative to using babel-register
The primary transformer here is Bublé we only use Babel for support with module import/exports.
Install
npm install buba --save-dev
Usage
Source code
CLI
buba -i input.js -o output.js
# or with a directory
buba -i src/ -o lib/
# to enable sourceMaps
buba -i input.js -o output.js -s
API Usage
import { transformFile } from 'buba'
const { code, map } = transformFile('input.js', {
buble: {} // buble options
babel: {} // babel options
})
Tests
mocha --require buba/register tests/**/*.js
# or
tape --require buba/register tests/**/*.js
With mocha
you can also provide buba within the mocha.opts
config file:
--require buba/register
--reporter spec
--ui bdd
Currently we only plan to use Babel for modules but you can add support for something like generators by adding a .babelrc
file.
API Usage
Just make sure that buba
is the 1st thing you require
require('buba/register')
const prelude = require('./prelude') // prelude has import/export, arrow functions, etc
Todo
- [x] Add Tests
- [x] Add Bublé options
- [x] Add CLI supoort - thanks @TylorS