|
|
|
'use strict';
|
|
|
|
require('../common');
|
|
|
|
var assert = require('assert');
|
|
|
|
|
|
|
|
var complete = 0;
|
|
|
|
|
|
|
|
process.nextTick(function() {
|
|
|
|
complete++;
|
|
|
|
process.nextTick(function() {
|
|
|
|
complete++;
|
|
|
|
process.nextTick(function() {
|
|
|
|
complete++;
|
|
|
|
});
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
setTimeout(function() {
|
|
|
|
process.nextTick(function() {
|
|
|
|
complete++;
|
|
|
|
});
|
|
|
|
}, 50);
|
|
|
|
|
|
|
|
process.nextTick(function() {
|
|
|
|
complete++;
|
|
|
|
});
|
|
|
|
|
|
|
|
var obj = {};
|
|
|
|
|
|
|
|
process.nextTick(function(a, b) {
|
|
|
|
assert.equal(a, 42);
|
|
|
|
assert.equal(b, obj);
|
|
|
|
}, 42, obj);
|
|
|
|
|
|
|
|
process.on('exit', function() {
|
|
|
|
assert.equal(5, complete);
|
|
|
|
process.nextTick(function() {
|
|
|
|
throw new Error('this should not occur');
|
|
|
|
});
|
|
|
|
});
|