UNPKG

1.34 kBJavaScriptView Raw
1"use strict";
2
3const resolve = require('./resolve');
4const assert = require('assert');
5
6describe(`reject`, function ()
7{
8 let rejectCalled = false;
9 let errorCalled = false;
10
11 function reject(a, e)
12 {
13 assert.equal(a, 'a_FAILURE');
14 assert.equal(e, 'e');
15 rejectCalled = true;
16 return function ()
17 {
18 errorCalled = true;
19 };
20 }
21 let successCalled = false;
22
23 function success(m, a, e)
24 {
25 assert.equal(m, 'm');
26 assert.equal(a, 'a_SUCCESS');
27 assert.equal(e, 'e');
28 successCalled = true;
29 }
30
31 beforeEach(function ()
32 {
33 rejectCalled = false;
34 errorCalled = false;
35 successCalled = false;
36 });
37
38 async function promiseSuccess()
39 {
40 return 'PASS'
41 }
42
43 async function promiseFailure()
44 {
45 throw new Error('FAIL');
46 }
47
48 it(`should call success`, function (done)
49 {
50 resolve({
51 reject,
52 success
53 }, promiseSuccess(), 'm', 'a', 'e');
54 setTimeout(() =>
55 {
56 assert(rejectCalled);
57 assert(!errorCalled);
58 assert(successCalled);
59 done();
60 }, 50);
61 })
62
63 it(`should call failure`, function (done)
64 {
65 resolve({
66 reject,
67 success
68 }, promiseFailure(), 'm', 'a', 'e');
69 setTimeout(() =>
70 {
71 assert(rejectCalled);
72 assert(errorCalled);
73 assert(!successCalled);
74 done();
75 }, 50);
76 })
77
78});