UNPKG

1.38 kBJavaScriptView Raw
1// Load in our dependencies
2// DEV: By using an internal require here, we have verified that we support internal requires
3var assert = require('assert');
4
5// Start our tests
6describe('All core Node.js integrations', function () {
7 it('exist as expected', function () {
8 assert(require);
9 assert(module);
10 assert(process);
11 assert(setImmediate);
12 assert(clearImmediate);
13 assert.strictEqual(global, window);
14 });
15});
16
17describe('setImmediate', function () {
18 it('runs before `setTimeout`', function (done) {
19 // Set up a setImmediate
20 var setImmediateRan = false;
21 setImmediate(function handleSetImmediate () {
22 setImmediateRan = true;
23 });
24
25 // Set up a setTimeout to assert and callback
26 setTimeout(function handleSetTimeout () {
27 assert.strictEqual(setImmediateRan, true);
28 done();
29 }, 100);
30 });
31});
32
33describe('clearImmediate', function () {
34 it('clears an existing `setImmediate`', function (done) {
35 // Set up a setImmediate
36 var setImmediateRan = false;
37 var setImmediateId = setImmediate(function handleSetImmediate () {
38 setImmediateRan = true;
39 });
40
41 // Set up a setTimeout to assert and callback
42 setTimeout(function handleSetTimeout () {
43 assert.strictEqual(setImmediateRan, false);
44 done();
45 }, 100);
46
47 // Clear our setImmediate
48 clearImmediate(setImmediateId);
49 });
50});