Skip to content

madole/babel-strip-test-code

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
lib
 
 
src
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

babel-plugin-babel-strip-test-code

Build Status

####Testing your private functions made safe and easy

###What does it do?

strips exports __test__ = ... code from your codebase allowing you to expose private functions for testing

###How do I do it?

Add an ES2015 export to your js file and call it __test__ which will allow you to expose your private functions in test mode but when you run babel on your code for production, it will strip the exports from the production code.

Example

In

let foo;

function funkyFunc(str) {
    console.log(str);
}

function testFunc() {
    funkyFunc('over here');
}

export const __test__ = {
    test1: funkyFunc,
    test2: testFunc
};

export default funkyFunc;

Out

let foo;

function funkyFunc(str) {
    console.log(str);
}

function testFunc() {
    funkyFunc('over here');
}

export default funkyFunc;

Installation

$ npm install babel-strip-test-code

Usage

Via .babelrc (Recommended)

.babelrc

{
  "plugins": ["babel-strip-test-code"]
}

Via CLI

$ babel --plugins babel-strip-test-code script.js

Via Node API

require("babel-core").transform("code", {
  plugins: ["babel-strip-test-code"]
});

About

Testable private functions: strip ```exports ___test___ = ...``` code from your codebase

Resources

License

Stars

Watchers

Forks

Packages

No packages published