summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorRoman Reiss <me@silverwind.io>2015-04-07 20:41:07 +0200
committerRoman Reiss <me@silverwind.io>2015-04-09 15:10:34 +0200
commit7049d7b4746dc5dae82d608ac12dc6e1cf11035e (patch)
treec567d2abd2cf2d152d14b120a397282bcce41c3f /test
parentd2b62a49731b9204359b4d346ca0d017fa2c985f (diff)
downloadandroid-node-v8-7049d7b4746dc5dae82d608ac12dc6e1cf11035e.tar.gz
android-node-v8-7049d7b4746dc5dae82d608ac12dc6e1cf11035e.tar.bz2
android-node-v8-7049d7b4746dc5dae82d608ac12dc6e1cf11035e.zip
test: increase timeouts on ARM
This commit introduces platform-specific test timeouts for the ARM architectures. ARMv6 is notoriously slow so gets very large timeouts on both the timeout value for each test, as well as certain problematic individual tests. ARMv7 and ARMv8 also get slightly increased headroom. PR-URL: https://github.com/iojs/io.js/pull/1366 Fixes: https://github.com/iojs/io.js/issues/1343 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Diffstat (limited to 'test')
-rw-r--r--test/common.js10
-rw-r--r--test/parallel/test-child-process-fork-net2.js11
-rw-r--r--test/parallel/test-debug-signal-cluster.js2
-rw-r--r--test/parallel/test-fs-empty-readStream.js4
-rw-r--r--test/parallel/test-http-end-throw-socket-handling.js2
-rw-r--r--test/parallel/test-repl-timeout-throw.js2
-rw-r--r--test/parallel/test-tls-fast-writing.js2
-rw-r--r--test/parallel/test-tls-wrap-timeout.js4
-rw-r--r--test/sequential/test-force-repl.js2
-rw-r--r--test/sequential/test-net-GH-5504.js2
10 files changed, 28 insertions, 13 deletions
diff --git a/test/common.js b/test/common.js
index 1ef491e403..1e85d3db33 100644
--- a/test/common.js
+++ b/test/common.js
@@ -179,6 +179,16 @@ exports.spawnPwd = function(options) {
}
};
+exports.platformTimeout = function(ms) {
+ if (process.arch !== 'arm')
+ return ms;
+
+ if (process.config.variables.arm_version === '6')
+ return 6 * ms; // ARMv6
+
+ return 2 * ms; // ARMv7 and up.
+};
+
var knownGlobals = [setTimeout,
setInterval,
setImmediate,
diff --git a/test/parallel/test-child-process-fork-net2.js b/test/parallel/test-child-process-fork-net2.js
index 171abb729a..c69fe84ead 100644
--- a/test/parallel/test-child-process-fork-net2.js
+++ b/test/parallel/test-child-process-fork-net2.js
@@ -128,13 +128,13 @@ if (process.argv[2] === 'child') {
server.listen(common.PORT, '127.0.0.1');
- var timeElasped = 0;
+ var timeElapsed = 0;
var closeServer = function() {
console.error('[m] closeServer');
var startTime = Date.now();
server.on('close', function() {
console.error('[m] emit(close)');
- timeElasped = Date.now() - startTime;
+ timeElapsed = Date.now() - startTime;
});
console.error('[m] calling server.close');
@@ -149,11 +149,14 @@ if (process.argv[2] === 'child') {
}, 200);
};
+ var min = 190;
+ var max = common.platformTimeout(1500);
process.on('exit', function() {
assert.equal(disconnected, count);
assert.equal(connected, count);
assert.ok(closeEmitted);
- assert.ok(timeElasped >= 190 && timeElasped <= 1000,
- 'timeElasped was not between 190 and 1000 ms');
+ assert.ok(timeElapsed >= min && timeElapsed <= max,
+ `timeElapsed was not between ${min} and ${max} ms:` +
+ `${timeElapsed}`);
});
}
diff --git a/test/parallel/test-debug-signal-cluster.js b/test/parallel/test-debug-signal-cluster.js
index 026e293262..c8b0387590 100644
--- a/test/parallel/test-debug-signal-cluster.js
+++ b/test/parallel/test-debug-signal-cluster.js
@@ -51,7 +51,7 @@ function onNoMoreLines() {
setTimeout(function testTimedOut() {
assert(false, 'test timed out.');
-}, 6000).unref();
+}, common.platformTimeout(3000)).unref();
process.on('exit', function onExit() {
// Kill processes in reverse order to avoid timing problems on Windows where
diff --git a/test/parallel/test-fs-empty-readStream.js b/test/parallel/test-fs-empty-readStream.js
index bd6e191297..0c470076da 100644
--- a/test/parallel/test-fs-empty-readStream.js
+++ b/test/parallel/test-fs-empty-readStream.js
@@ -22,7 +22,7 @@ fs.open(emptyFile, 'r', function (error, fd) {
setTimeout(function () {
assert.equal(readEmit, true);
- }, 50);
+ }, common.platformTimeout(50));
});
fs.open(emptyFile, 'r', function (error, fd) {
@@ -43,5 +43,5 @@ fs.open(emptyFile, 'r', function (error, fd) {
setTimeout(function () {
assert.equal(readEmit, false);
- }, 50);
+ }, common.platformTimeout(50));
});
diff --git a/test/parallel/test-http-end-throw-socket-handling.js b/test/parallel/test-http-end-throw-socket-handling.js
index a8566beac8..92a5ae6a38 100644
--- a/test/parallel/test-http-end-throw-socket-handling.js
+++ b/test/parallel/test-http-end-throw-socket-handling.js
@@ -32,7 +32,7 @@ server.listen(common.PORT, function() {
setTimeout(function() {
process.removeListener('uncaughtException', catcher);
throw new Error('Taking too long!');
-}, 1000).unref();
+}, common.platformTimeout(1000)).unref();
process.on('uncaughtException', catcher);
var errors = 0;
diff --git a/test/parallel/test-repl-timeout-throw.js b/test/parallel/test-repl-timeout-throw.js
index f171341345..eea2bea3ac 100644
--- a/test/parallel/test-repl-timeout-throw.js
+++ b/test/parallel/test-repl-timeout-throw.js
@@ -44,7 +44,7 @@ child.stdout.once('data', function() {
' });\n' +
'});"";\n');
- setTimeout(child.stdin.end.bind(child.stdin), 200);
+ setTimeout(child.stdin.end.bind(child.stdin), common.platformTimeout(200));
}
});
diff --git a/test/parallel/test-tls-fast-writing.js b/test/parallel/test-tls-fast-writing.js
index 7fd3c8f9dc..e9245aa0d5 100644
--- a/test/parallel/test-tls-fast-writing.js
+++ b/test/parallel/test-tls-fast-writing.js
@@ -22,7 +22,7 @@ var gotDrain = false;
var timer = setTimeout(function() {
console.log('not ok - timed out');
process.exit(1);
-}, 500);
+}, common.platformTimeout(500));
function onconnection(conn) {
conn.on('data', function(c) {
diff --git a/test/parallel/test-tls-wrap-timeout.js b/test/parallel/test-tls-wrap-timeout.js
index 7bb5bb1b0d..3013f68886 100644
--- a/test/parallel/test-tls-wrap-timeout.js
+++ b/test/parallel/test-tls-wrap-timeout.js
@@ -27,7 +27,9 @@ var server = tls.createServer(options, function(c) {
server.listen(common.PORT, function() {
var socket = net.connect(common.PORT, function() {
- socket.setTimeout(240, assert.fail);
+ socket.setTimeout(common.platformTimeout(240), function() {
+ throw new Error('timeout');
+ });
var tsocket = tls.connect({
socket: socket,
diff --git a/test/sequential/test-force-repl.js b/test/sequential/test-force-repl.js
index fa17297ad2..c0ad1484ff 100644
--- a/test/sequential/test-force-repl.js
+++ b/test/sequential/test-force-repl.js
@@ -7,7 +7,7 @@ var cp = spawn(process.execPath, ['-i']);
var gotToEnd = false;
var timeoutId = setTimeout(function() {
throw new Error('timeout!');
-}, 1000); // give node + the repl 1 second to boot up
+}, common.platformTimeout(1000)); // give node + the repl 1 second to boot up
cp.stdout.setEncoding('utf8');
diff --git a/test/sequential/test-net-GH-5504.js b/test/sequential/test-net-GH-5504.js
index ef2e1ceb29..2ee0a1d86d 100644
--- a/test/sequential/test-net-GH-5504.js
+++ b/test/sequential/test-net-GH-5504.js
@@ -72,7 +72,7 @@ function parent() {
setTimeout(function() {
throw new Error('hang');
});
- }, 4000).unref();
+ }, common.platformTimeout(2000)).unref();
var s = spawn(node, [__filename, 'server'], opt);
var c;