diff options
author | Ben Noordhuis <info@bnoordhuis.nl> | 2017-02-08 15:33:52 +0100 |
---|---|---|
committer | Ben Noordhuis <info@bnoordhuis.nl> | 2017-02-11 14:20:50 +0100 |
commit | da52fcdcf5b502cf3fc23d1ab943422a19e956ac (patch) | |
tree | c48edcf1328e21f2596fcc424aa872c4590eb641 | |
parent | f8cdaaa16ad01b946c7528c473f7fb80cfbeb3a2 (diff) | |
download | android-node-v8-da52fcdcf5b502cf3fc23d1ab943422a19e956ac.tar.gz android-node-v8-da52fcdcf5b502cf3fc23d1ab943422a19e956ac.tar.bz2 android-node-v8-da52fcdcf5b502cf3fc23d1ab943422a19e956ac.zip |
test: don't call process.exit() in gc tests
Rewrite the tests in test/gc so that they no longer call process.exit().
Instead they exit gracefully now.
PR-URL: https://github.com/nodejs/node/pull/11239
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
-rw-r--r-- | test/gc/test-http-client-connaborted.js | 15 | ||||
-rw-r--r-- | test/gc/test-http-client-onerror.js | 15 | ||||
-rw-r--r-- | test/gc/test-http-client-timeout.js | 15 | ||||
-rw-r--r-- | test/gc/test-http-client.js | 9 | ||||
-rw-r--r-- | test/gc/test-net-timeout.js | 11 |
5 files changed, 9 insertions, 56 deletions
diff --git a/test/gc/test-http-client-connaborted.js b/test/gc/test-http-client-connaborted.js index 6ff2a282d8..30ec63b885 100644 --- a/test/gc/test-http-client-connaborted.js +++ b/test/gc/test-http-client-connaborted.js @@ -10,7 +10,6 @@ function serverHandler(req, res) { const http = require('http'); const weak = require('weak'); -const assert = require('assert'); const todo = 500; let done = 0; let count = 0; @@ -28,7 +27,6 @@ function getall() { (function() { function cb(res) { done += 1; - statusLater(); } const req = http.get({ @@ -51,20 +49,11 @@ function afterGC() { countGC++; } -let timer; -function statusLater() { - global.gc(); - if (timer) clearTimeout(timer); - timer = setTimeout(status, 1); -} +setInterval(status, 100).unref(); function status() { global.gc(); console.log('Done: %d/%d', done, todo); console.log('Collected: %d/%d', countGC, count); - if (done === todo) { - console.log('All should be collected now.'); - assert.strictEqual(count, countGC); - process.exit(0); - } + if (countGC === todo) server.close(); } diff --git a/test/gc/test-http-client-onerror.js b/test/gc/test-http-client-onerror.js index b17ab428a2..aac622b390 100644 --- a/test/gc/test-http-client-onerror.js +++ b/test/gc/test-http-client-onerror.js @@ -12,7 +12,6 @@ function serverHandler(req, res) { const http = require('http'); const weak = require('weak'); -const assert = require('assert'); const todo = 500; let done = 0; let count = 0; @@ -31,7 +30,6 @@ function getall() { function cb(res) { res.resume(); done += 1; - statusLater(); } function onerror(er) { throw er; @@ -59,20 +57,11 @@ function afterGC() { countGC++; } -let timer; -function statusLater() { - global.gc(); - if (timer) clearTimeout(timer); - timer = setTimeout(status, 1); -} +setInterval(status, 100).unref(); function status() { global.gc(); console.log('Done: %d/%d', done, todo); console.log('Collected: %d/%d', countGC, count); - if (done === todo) { - console.log('All should be collected now.'); - assert.strictEqual(count, countGC); - process.exit(0); - } + if (countGC === todo) server.close(); } diff --git a/test/gc/test-http-client-timeout.js b/test/gc/test-http-client-timeout.js index fb4e8ba0f7..2ef54cad79 100644 --- a/test/gc/test-http-client-timeout.js +++ b/test/gc/test-http-client-timeout.js @@ -14,7 +14,6 @@ function serverHandler(req, res) { const http = require('http'); const weak = require('weak'); -const assert = require('assert'); const todo = 550; let done = 0; let count = 0; @@ -33,7 +32,6 @@ function getall() { function cb(res) { res.resume(); done += 1; - statusLater(); } const req = http.get({ @@ -60,20 +58,11 @@ function afterGC() { countGC++; } -let timer; -function statusLater() { - global.gc(); - if (timer) clearTimeout(timer); - timer = setTimeout(status, 1); -} +setInterval(status, 100).unref(); function status() { global.gc(); console.log('Done: %d/%d', done, todo); console.log('Collected: %d/%d', countGC, count); - if (done === todo) { - console.log('All should be collected now.'); - assert.strictEqual(count, countGC); - process.exit(0); - } + if (countGC === todo) server.close(); } diff --git a/test/gc/test-http-client.js b/test/gc/test-http-client.js index f81cab0b09..03c159fa24 100644 --- a/test/gc/test-http-client.js +++ b/test/gc/test-http-client.js @@ -10,7 +10,6 @@ function serverHandler(req, res) { const http = require('http'); const weak = require('weak'); -const assert = require('assert'); const todo = 500; let done = 0; let count = 0; @@ -54,15 +53,11 @@ function afterGC() { countGC++; } -setInterval(status, 1000).unref(); +setInterval(status, 100).unref(); function status() { global.gc(); console.log('Done: %d/%d', done, todo); console.log('Collected: %d/%d', countGC, count); - if (done === todo) { - console.log('All should be collected now.'); - assert.strictEqual(count, countGC); - process.exit(0); - } + if (countGC === todo) server.close(); } diff --git a/test/gc/test-net-timeout.js b/test/gc/test-net-timeout.js index b8ea8e2089..ce71f4d9e8 100644 --- a/test/gc/test-net-timeout.js +++ b/test/gc/test-net-timeout.js @@ -62,14 +62,5 @@ function status() { global.gc(); console.log('Done: %d/%d', done, todo); console.log('Collected: %d/%d', countGC, count); - if (done === todo) { - /* Give libuv some time to make close callbacks. */ - setTimeout(function() { - global.gc(); - console.log('All should be collected now.'); - console.log('Collected: %d/%d', countGC, count); - assert.strictEqual(count, countGC); - process.exit(0); - }, 200); - } + if (countGC === todo) server.close(); } |