| var common = require('../common'); | |
| var assert = common.assert; | |
| var DelayedStream = common.DelayedStream; | |
| var http = require('http'); | |
| var UPLOAD = new Buffer(10 * 1024 * 1024); | |
| var server = http.createServer(function(req, res) { | |
| var delayed = DelayedStream.create(req, {maxDataSize: UPLOAD.length}); | |
| setTimeout(function() { | |
| res.writeHead(200); | |
| delayed.pipe(res); | |
| }, 10); | |
| }); | |
| server.listen(common.PORT, function() { | |
| var request = http.request({ | |
| method: 'POST', | |
| port: common.PORT, | |
| }); | |
| request.write(UPLOAD); | |
| request.end(); | |
| request.on('response', function(res) { | |
| var received = 0; | |
| res | |
| .on('data', function(chunk) { | |
| received += chunk.length; | |
| }) | |
| .on('end', function() { | |
| assert.equal(received, UPLOAD.length); | |
| server.close(); | |
| }); | |
| }); | |
| }); | |