diff options
author | Luigi Pinca <luigipinca@gmail.com> | 2018-04-07 14:51:15 +0200 |
---|---|---|
committer | Luigi Pinca <luigipinca@gmail.com> | 2018-04-11 09:30:02 +0200 |
commit | 96e82beac353c2607228590b49b3d232d33a64bf (patch) | |
tree | 76adfbe513179acea188df7765b2a0e59bb54192 /test | |
parent | 2852521c49da64857fa8f49aca387f1bd6b93c26 (diff) | |
download | android-node-v8-96e82beac353c2607228590b49b3d232d33a64bf.tar.gz android-node-v8-96e82beac353c2607228590b49b3d232d33a64bf.tar.bz2 android-node-v8-96e82beac353c2607228590b49b3d232d33a64bf.zip |
test: fix test-http-dump-req-when-res-ends
Fix test-http-dump-req-when-res-ends and move it back to test/parallel/
PR-URL: https://github.com/nodejs/node/pull/19866
Refs: https://github.com/nodejs/node/pull/19823
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Diffstat (limited to 'test')
-rw-r--r-- | test/parallel/test-http-dump-req-when-res-ends.js (renamed from test/sequential/test-http-dump-req-when-res-ends.js) | 42 |
1 files changed, 16 insertions, 26 deletions
diff --git a/test/sequential/test-http-dump-req-when-res-ends.js b/test/parallel/test-http-dump-req-when-res-ends.js index e00f9c5fec..718797fae1 100644 --- a/test/sequential/test-http-dump-req-when-res-ends.js +++ b/test/parallel/test-http-dump-req-when-res-ends.js @@ -1,25 +1,24 @@ 'use strict'; -const common = require('../common'); -const http = require('http'); -const assert = require('assert'); -const fs = require('fs'); +const { mustCall } = require('../common'); -let resEnd = null; +const fs = require('fs'); +const http = require('http'); +const { strictEqual } = require('assert'); -const server = http.createServer(common.mustCall(function(req, res) { +const server = http.createServer(mustCall(function(req, res) { + strictEqual(req.socket.listenerCount('data'), 1); + req.socket.once('data', mustCall(function() { + // Ensure that a chunk of data is received before calling `res.end()`. + res.end('hello world'); + })); // This checks if the request gets dumped // resume will be triggered by res.end(). - req.on('resume', common.mustCall(function() { + req.on('resume', mustCall(function() { // There is no 'data' event handler anymore // it gets automatically removed when dumping the request. - assert.strictEqual(req.listenerCount('data'), 0); - - req.on('data', common.mustCallAtLeast(function(d) { - // Leaving the console.log explicitly, so that - // we can know how many chunks we have received. - console.log('data', d); - }, 1)); + strictEqual(req.listenerCount('data'), 0); + req.on('data', mustCall()); })); // We explicitly pause the stream @@ -30,15 +29,9 @@ const server = http.createServer(common.mustCall(function(req, res) { // Start sending the response. res.flushHeaders(); - - resEnd = function() { - setImmediate(function() { - res.end('hello world'); - }); - }; })); -server.listen(0, common.mustCall(function() { +server.listen(0, mustCall(function() { const req = http.request({ method: 'POST', port: server.address().port @@ -48,13 +41,10 @@ server.listen(0, common.mustCall(function() { // for the body. req.flushHeaders(); - req.on('response', common.mustCall(function(res) { + req.on('response', mustCall(function(res) { // Pipe the body as soon as we get the headers of the // response back. - const readFileStream = fs.createReadStream(__filename); - readFileStream.on('end', resEnd); - - readFileStream.pipe(req); + fs.createReadStream(__filename).pipe(req); res.resume(); |