test: harden test-gc-http-client-timeout

* decrease number of requests 500 -> 300
* extract 'cb' to a file-local function

This should make test more reliable and less resource intensive.

PR-URL: https://github.com/nodejs/node/pull/23184
Refs: https://github.com/nodejs/node/issues/23066
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: James M Snell <jasnell@gmail.com>
This commit is contained in:
Denys Otrishko 2018-09-30 22:04:14 +03:00 committed by Daniel Bevenius
parent 6696354dba
commit 69a422bba7

View File

@ -3,7 +3,7 @@
// just like test-gc-http-client.js, // just like test-gc-http-client.js,
// but with a timeout set // but with a timeout set
require('../common'); const common = require('../common');
const onGC = require('../common/ongc'); const onGC = require('../common/ongc');
function serverHandler(req, res) { function serverHandler(req, res) {
@ -15,7 +15,7 @@ function serverHandler(req, res) {
} }
const http = require('http'); const http = require('http');
const todo = 550; const todo = 300;
let done = 0; let done = 0;
let count = 0; let count = 0;
let countGC = 0; let countGC = 0;
@ -23,18 +23,12 @@ let countGC = 0;
console.log(`We should do ${todo} requests`); console.log(`We should do ${todo} requests`);
const server = http.createServer(serverHandler); const server = http.createServer(serverHandler);
server.listen(0, getall); server.listen(0, common.mustCall(getall));
function getall() { function getall() {
if (count >= todo) if (count >= todo)
return; return;
(function() {
function cb(res) {
res.resume();
done += 1;
}
const req = http.get({ const req = http.get({
hostname: 'localhost', hostname: 'localhost',
pathname: '/', pathname: '/',
@ -47,7 +41,6 @@ function getall() {
count++; count++;
onGC(req, { ongc }); onGC(req, { ongc });
})();
setImmediate(getall); setImmediate(getall);
} }
@ -55,6 +48,11 @@ function getall() {
for (let i = 0; i < 10; i++) for (let i = 0; i < 10; i++)
getall(); getall();
function cb(res) {
res.resume();
done += 1;
}
function ongc() { function ongc() {
countGC++; countGC++;
} }