1 | const settle = require('./settle')
|
2 |
|
3 | describe('settle', () => {
|
4 | it('should resolve even if all input promises reject', async () => {
|
5 | await expect(
|
6 | settle([
|
7 | Promise.reject(new Error('oops')),
|
8 | Promise.reject(new Error('this went wrong'))
|
9 | ])
|
10 | ).resolves.toMatchObject({
|
11 | successful: [],
|
12 | failed: [new Error('oops'), new Error('this went wrong')]
|
13 | })
|
14 | })
|
15 |
|
16 | it('should resolve with an object if some input promises resolve', async () => {
|
17 | await expect(
|
18 | settle([
|
19 | Promise.reject(new Error('rejected')),
|
20 | Promise.resolve('resolved'),
|
21 | Promise.resolve('also-resolved')
|
22 | ])
|
23 | ).resolves.toMatchObject({
|
24 | successful: ['resolved', 'also-resolved'],
|
25 | failed: [new Error('rejected')]
|
26 | })
|
27 | })
|
28 | })
|