diff options
Diffstat (limited to 'deps/npm/node_modules/npm-profile/node_modules/mississippi/node_modules/pump/test.js')
-rw-r--r-- | deps/npm/node_modules/npm-profile/node_modules/mississippi/node_modules/pump/test.js | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/deps/npm/node_modules/npm-profile/node_modules/mississippi/node_modules/pump/test.js b/deps/npm/node_modules/npm-profile/node_modules/mississippi/node_modules/pump/test.js new file mode 100644 index 0000000000..64e772ca5b --- /dev/null +++ b/deps/npm/node_modules/npm-profile/node_modules/mississippi/node_modules/pump/test.js @@ -0,0 +1,46 @@ +var pump = require('./index') + +var rs = require('fs').createReadStream('/dev/random') +var ws = require('fs').createWriteStream('/dev/null') + +var toHex = function () { + var reverse = new (require('stream').Transform)() + + reverse._transform = function (chunk, enc, callback) { + reverse.push(chunk.toString('hex')) + callback() + } + + return reverse +} + +var wsClosed = false +var rsClosed = false +var callbackCalled = false + +var check = function () { + if (wsClosed && rsClosed && callbackCalled) process.exit(0) +} + +ws.on('close', function () { + wsClosed = true + check() +}) + +rs.on('close', function () { + rsClosed = true + check() +}) + +pump(rs, toHex(), toHex(), toHex(), ws, function () { + callbackCalled = true + check() +}) + +setTimeout(function () { + rs.destroy() +}, 1000) + +setTimeout(function () { + throw new Error('timeout') +}, 5000) |