test: use Countdown in http-agent test

PR-URL: https://github.com/nodejs/node/pull/17537
Reviewed-By: Anatoli Papirovski <apapirovski@mac.com>
This commit is contained in:
Federico Kauffman 2017-12-07 19:20:54 -03:00 committed by Anatoli Papirovski
parent b7ff3c0e04
commit f373a1d814
No known key found for this signature in database
GPG Key ID: 614E2E1ABEB4B2C0

View File

@ -21,6 +21,7 @@
'use strict';
const common = require('../common');
const Countdown = require('../common/countdown');
const assert = require('assert');
const http = require('http');
common.crashOnUnhandledRejection();
@ -33,14 +34,17 @@ const server = http.Server(common.mustCall(function(req, res) {
}, (N * M))); // N * M = good requests (the errors will not be counted)
function makeRequests(outCount, inCount, shouldFail) {
let responseCount = outCount * inCount;
const countdown = new Countdown(
outCount * inCount,
common.mustCall(() => server.close())
);
let onRequest = common.mustNotCall(); // Temporary
const p = new Promise((resolve) => {
onRequest = common.mustCall((res) => {
if (--responseCount === 0) {
server.close();
if (countdown.dec() === 0) {
resolve();
}
if (!shouldFail)
res.resume();
}, outCount * inCount);