mirror of
https://github.com/nodejs/node.git
synced 2025-05-09 15:46:27 +00:00
test: fix http-many-ended-pipelines flakiness
It can happen that the HTTP connection is closed before the server has received all the requests, thus the server close condition is never reached. To solve this, close the server when the socket is fully closed. PR-URL: https://github.com/nodejs/node/pull/4041 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Minwoo Jung <jmwsoft@gmail.com> Reviewed-By: Evan Lucas <evanlucas@me.com>
This commit is contained in:
parent
84dea1bd0c
commit
23e7703c85
@ -13,15 +13,19 @@ var http = require('http');
|
|||||||
var net = require('net');
|
var net = require('net');
|
||||||
|
|
||||||
var numRequests = 20;
|
var numRequests = 20;
|
||||||
var done = 0;
|
var first = false;
|
||||||
|
|
||||||
var server = http.createServer(function(req, res) {
|
var server = http.createServer(function(req, res) {
|
||||||
res.end('ok');
|
if (!first) {
|
||||||
|
first = true;
|
||||||
|
req.socket.on('close', function() {
|
||||||
|
server.close();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
res.end('ok');
|
||||||
// Oh no! The connection died!
|
// Oh no! The connection died!
|
||||||
req.socket.destroy();
|
req.socket.destroy();
|
||||||
if (++done == numRequests)
|
|
||||||
server.close();
|
|
||||||
});
|
});
|
||||||
|
|
||||||
server.listen(common.PORT);
|
server.listen(common.PORT);
|
||||||
|
Loading…
Reference in New Issue
Block a user