Browse Source

test: increase timeout in break-on-uncaught

As the failures suggest, this test expects the uncaught exception to
be thrown within 100 milliseconds, but on some of the test machines it
takes longer than that limit to notify the exception. Thats why the
test was failing.

This patch polls every 10 ms to see if the exception is received.

PR-URL: https://github.com/nodejs/node/pull/10822

Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
v6
Sakthipriyan Vairamani (thefourtheye) 8 years ago
parent
commit
cc899a4c81
No known key found for this signature in database GPG Key ID: C71F2437E9591758
  1. 7
      test/debugger/test-debug-break-on-uncaught.js

7
test/debugger/test-debug-break-on-uncaught.js

@ -73,6 +73,7 @@ function runScenario(scriptName, throwsOnLine, next) {
client.connect(port);
}
let interval;
function runTest(client) {
client.req(
{
@ -91,14 +92,15 @@ function runScenario(scriptName, throwsOnLine, next) {
client.reqContinue(function(error) {
assert.ifError(error);
setTimeout(assertHasPaused.bind(null, client), 100);
interval = setInterval(assertHasPaused.bind(null, client), 10);
});
}
);
}
function assertHasPaused(client) {
assert(exceptions.length, 'no exceptions thrown, race condition in test?');
if (!exceptions.length) return;
assert.strictEqual(exceptions.length, 1,
'debugger did not pause on exception');
assert.strictEqual(exceptions[0].uncaught, true);
@ -106,5 +108,6 @@ function runScenario(scriptName, throwsOnLine, next) {
assert.strictEqual(exceptions[0].sourceLine + 1, throwsOnLine);
asserted = true;
client.reqContinue(assert.ifError);
clearInterval(interval);
}
}

Loading…
Cancel
Save