From 47e5fd940e440e73c0cc166841b202daff08f912 Mon Sep 17 00:00:00 2001 From: hmammedzadeh Date: Sun, 3 Dec 2017 21:16:05 +0100 Subject: [PATCH] test: update test-http-response-multiheaders to use countdown PR-URL: https://github.com/nodejs/node/pull/17419 Reviewed-By: Anna Henningsen Reviewed-By: Luigi Pinca Reviewed-By: Jon Moss --- test/parallel/test-http-response-multiheaders.js | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/test/parallel/test-http-response-multiheaders.js b/test/parallel/test-http-response-multiheaders.js index 5739dac31d690b..71d55ef7e3cd70 100644 --- a/test/parallel/test-http-response-multiheaders.js +++ b/test/parallel/test-http-response-multiheaders.js @@ -3,6 +3,7 @@ const common = require('../common'); const http = require('http'); const assert = require('assert'); +const Countdown = require('../common/countdown'); // Test that certain response header fields do not repeat. // 'content-length' should also be in this list but it is @@ -27,6 +28,7 @@ const norepeat = [ 'age', 'expires' ]; +const runCount = 2; const server = http.createServer(function(req, res) { const num = req.headers['x-num']; @@ -47,8 +49,8 @@ const server = http.createServer(function(req, res) { }); server.listen(0, common.mustCall(function() { - let count = 0; - for (let n = 1; n <= 2; n++) { + const countdown = new Countdown(runCount, () => server.close()); + for (let n = 1; n <= runCount; n++) { // this runs twice, the first time, the server will use // setHeader, the second time it uses writeHead. The // result on the client side should be the same in @@ -58,7 +60,7 @@ server.listen(0, common.mustCall(function() { http.get( {port: this.address().port, headers: {'x-num': n}}, common.mustCall(function(res) { - if (++count === 2) server.close(); + countdown.dec(); for (const name of norepeat) { assert.strictEqual(res.headers[name], 'A'); }