summaryrefslogtreecommitdiff
path: root/test/common
diff options
context:
space:
mode:
authorArtur Hayrapetyan <hayarur@gmail.com>2018-10-12 10:35:08 -0700
committerDaniel Bevenius <daniel.bevenius@gmail.com>2018-10-15 07:41:12 +0200
commit2a1492a00dc07516e1446c9504a60c03dc4cef12 (patch)
tree0bf9827ef5df6c7a1083f0358ae05f27d07977ba /test/common
parent98d1d53b2009b72ef85792977d3cf68e2118b381 (diff)
downloadandroid-node-v8-2a1492a00dc07516e1446c9504a60c03dc4cef12.tar.gz
android-node-v8-2a1492a00dc07516e1446c9504a60c03dc4cef12.tar.bz2
android-node-v8-2a1492a00dc07516e1446c9504a60c03dc4cef12.zip
test: move tick.js from test/async-hooks to test/common
PR-URL: https://github.com/nodejs/node/pull/23551 Reviewed-By: Tobias Nießen <tniessen@tnie.de> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Denys Otrishko <shishugi@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Diffstat (limited to 'test/common')
-rw-r--r--test/common/README.md6
-rw-r--r--test/common/tick.js13
2 files changed, 19 insertions, 0 deletions
diff --git a/test/common/README.md b/test/common/README.md
index 63b7905113..6d86e51d5e 100644
--- a/test/common/README.md
+++ b/test/common/README.md
@@ -13,6 +13,7 @@ This directory contains modules used to test the Node.js implementation.
* [Heap dump checker module](#heap-dump-checker-module)
* [HTTP2 module](#http2-module)
* [Internet module](#internet-module)
+* [tick module](#tick-module)
* [tmpdir module](#tmpdir-module)
* [WPT module](#wpt-module)
@@ -744,6 +745,11 @@ a full `setImmediate()` invocation passes.
should not be in scope when `listener.ongc()` is created.
+## tick Module
+
+The `tick` module provides a helper function that can be used to call a callback
+after a given number of event loop "ticks".
+
## tmpdir Module
The `tmpdir` module supports the use of a temporary directory for testing.
diff --git a/test/common/tick.js b/test/common/tick.js
new file mode 100644
index 0000000000..b02315b10c
--- /dev/null
+++ b/test/common/tick.js
@@ -0,0 +1,13 @@
+'use strict';
+require('../common');
+
+module.exports = function tick(x, cb) {
+ function ontick() {
+ if (--x === 0) {
+ if (typeof cb === 'function') cb();
+ } else {
+ setImmediate(ontick);
+ }
+ }
+ setImmediate(ontick);
+};