node/test/parallel/test-microtask-queue-integration.js
Chiahao Lin 289ebb19b5
test: use crashOnUnhandledRejection
Add common.crashOnUnhandledRejection to test-microtask-queue-integration.js

PR-URL: https://github.com/nodejs/node/pull/17219
Reviewed-By: Myles Borins <myles.borins@gmail.com>
Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com>
Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
2017-12-19 15:59:55 -05:00

44 lines
789 B
JavaScript

'use strict';
const common = require('../common');
const assert = require('assert');
common.crashOnUnhandledRejection();
const implementations = [
function(fn) {
Promise.resolve().then(fn);
}
];
let expected = 0;
let done = 0;
process.on('exit', function() {
assert.strictEqual(done, expected);
});
function test(scheduleMicrotask) {
let nextTickCalled = false;
expected++;
scheduleMicrotask(function() {
process.nextTick(function() {
nextTickCalled = true;
});
setTimeout(function() {
assert(nextTickCalled);
done++;
}, 0);
});
}
// first tick case
implementations.forEach(test);
// tick callback case
setTimeout(function() {
implementations.forEach(function(impl) {
process.nextTick(test.bind(null, impl));
});
}, 0);