-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.spec.js
More file actions
46 lines (36 loc) · 950 Bytes
/
Copy pathindex.spec.js
File metadata and controls
46 lines (36 loc) · 950 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
const test = require('tape')
const toAll = require('./index')
function createResolve(message, ms) {
return new Promise(resolve => {
setTimeout(() => resolve(message), ms)
})
}
function createReject(message, ms) {
return new Promise((resolve, reject) => {
setTimeout(() => reject(new Error(message)), ms)
})
}
test('onFulfilled', async t => {
const promises = [
createResolve('fulfilled', 100),
createResolve('fulfilled', 200),
createResolve('fulfilled', 300)
]
const [error, [first, second, third] = data] = await toAll(promises)
t.equal(first, 'fulfilled')
t.equal(second, 'fulfilled')
t.equal(third, 'fulfilled')
t.end()
})
test('onRejected', async t => {
const promises = [
createReject('rejected', 100),
createReject('rejected', 200),
createReject('rejected', 300)
]
const [error] = await toAll(promises)
if (error) {
t.equal(error.message, 'rejected')
}
t.end()
})