Skip to content
Proxyquire in Node and Proxyquireify in the browser with no code changes
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
test
.editorconfig
.gitattributes
.gitignore
.travis.yml
LICENSE
README.md
index.js
package.json
transform.js

README.md

proxyquire-universal Build Status Greenkeeper badge

Browserify plugin that allows you to replace proxyquire with proxyquireify without code changes. If you only need to run your tests in a browser, just use proxyquireify directly. Make sure you're not using proxyquire features that don't have proxyquireify counterparts.

Installing

$ npm install --save-dev proxyquire-universal proxyquire proxyquireify

proxyquire-universal sets proxyquire and proxyquireify as peer dependencies so all three packages will be siblings in your node_modules folder. You have full control over which versions are used.

Usage

Write your tests for Node:

var proxyquire = require('proxyquire');
proxyquire('./a', stubs);

Then add the 'proxyquire-universal' plugin when you build your test bundle for the browser:

browserify()
  .plugin('proxyquire-universal')
  .bundle()
  .pipe(fs.createWriteStream('test-bundle.js'));

proxyquire-universal takes care of calling bundle.plugin(proxyquireify.plugin) automatically. You should not register proxyquireify manually.

Unsupported Proxyquire Features

proxyquireify has a very similar API to proxyquire and will be a perfect drop-in replacement for most use cases. However, there are certain proxyquire features that are not available in proxyquireify:

If you discover a case where proxyquire and proxyquireify behave differently, please open an issue with relevant code.

License

MIT © Ben Drucker

You can’t perform that action at this time.