Skip to content

Commit

Permalink
test: fix http-many-ended-pipelines flakiness
Browse files Browse the repository at this point in the history
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: #4041
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Minwoo Jung <jmwsoft@gmail.com>
Reviewed-By: Evan Lucas <evanlucas@me.com>
  • Loading branch information
santigimeno authored and cjihrig committed Dec 15, 2015
1 parent 49ba2c9 commit 9271f0e
Showing 1 changed file with 8 additions and 4 deletions.
12 changes: 8 additions & 4 deletions test/parallel/test-http-many-ended-pipelines.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,15 +13,19 @@ var http = require('http');
var net = require('net');

var numRequests = 20;
var done = 0;
var first = false;

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!
req.socket.destroy();
if (++done == numRequests)
server.close();
});

server.listen(common.PORT);
Expand Down

0 comments on commit 9271f0e

Please sign in to comment.