-
Notifications
You must be signed in to change notification settings - Fork 24
Closed
Description
// index.js
var crypto = require('crypto')
module.exports = {
randomBytes: crypto.randomBytes
}// test/index.js
var proxyquire = require('proxyquireify')(require)
// var proxyquire = require('proxyquire') //proxyquire works
var stubs = {
'crypto': {
randomBytes: function(size){
var buffer = new Buffer(size)
buffer.fill(0)
return buffer
}
}
}
var assert = require('assert')
var randomBytes = proxyquire('../', stubs).randomBytes
describe('randomBytes', function(){
it('works', function(){
assert.equal(randomBytes(1).toString('hex'), '00')
})
})// build.js
var proxyquire = require('proxyquireify');
var fs = require('fs')
proxyquire.browserify()
.require(require.resolve('./test/index.js'), {entry: true})
.bundle()
.pipe(fs.createWriteStream(__dirname + '/test/bundle.js'));node build.js && mocha test/bundle.js
/Users/weilu/Workspace/test-proxyquirify/test/bundle.js:3043
d requires to make browserify include dependencies in the bundle */;require('.
^
TypeError: undefined is not a functionIf I use proxyquire without browserify and proxyquireify (uncomment line 2 in test/index.js), my test passes.
I've put together the code above in a repo: https://github.com/weilu/test-proxyquireify The error can be reproduced by running npm test
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels