1
1
2
2
import { expect , test } from '@jest/globals'
3
- import every from './every .mjs'
3
+ import asyncEvery from './asyncEvery .mjs'
4
4
import Deferred from './Deferred.mjs'
5
5
import { range } from 'itertools'
6
6
import delay from './delay.mjs'
7
7
8
8
// eslint-disable-next-line require-jsdoc
9
9
class TestError extends Error { }
10
10
11
- test ( 'every compatibility' , async ( ) => {
11
+ test ( 'asyncEvery compatibility' , async ( ) => {
12
12
let d = new Deferred ( )
13
- let p = every ( [ ...range ( 3 ) ] , async ( v ) => {
13
+ let p = asyncEvery ( [ ...range ( 3 ) ] , async ( v ) => {
14
14
await d . promise
15
15
return true
16
16
} , 1 )
17
17
d . resolve ( )
18
18
expect ( await p ) . toBe ( [ ...range ( 3 ) ] . every ( ( v ) => true ) )
19
19
20
20
d = new Deferred ( )
21
- p = every ( [ ...range ( 3 ) ] , async ( v ) => {
21
+ p = asyncEvery ( [ ...range ( 3 ) ] , async ( v ) => {
22
22
await d . promise
23
23
return v !== 2
24
24
} , 1 )
25
25
d . resolve ( )
26
26
expect ( await p ) . toBe ( [ ...range ( 3 ) ] . every ( ( v ) => v !== 2 ) )
27
27
28
28
d = new Deferred ( )
29
- p = every ( [ ...range ( 3 ) ] , async ( v ) => {
29
+ p = asyncEvery ( [ ...range ( 3 ) ] , async ( v ) => {
30
30
await d . promise
31
31
return false
32
32
} , 1 )
33
33
d . resolve ( )
34
34
expect ( await p ) . toBe ( [ ...range ( 3 ) ] . every ( ( v ) => false ) )
35
35
36
36
d = new Deferred ( )
37
- p = every ( [ ] , async ( v ) => {
37
+ p = asyncEvery ( [ ] , async ( v ) => {
38
38
await d . promise
39
39
return false
40
40
} , 1 )
41
41
d . resolve ( )
42
42
expect ( await p ) . toBe ( [ ] . every ( ( v ) => false ) )
43
43
44
44
d = new Deferred ( )
45
- p = every ( [ ] , async ( v ) => {
45
+ p = asyncEvery ( [ ] , async ( v ) => {
46
46
await d . promise
47
47
return true
48
48
} , 1 )
49
49
d . resolve ( )
50
50
expect ( await p ) . toBe ( [ ] . every ( ( v ) => true ) )
51
51
} )
52
52
53
- test ( 'every parallel' , async ( ) => {
53
+ test ( 'asyncEvery parallel' , async ( ) => {
54
54
let d = new Deferred ( )
55
- let p = every ( [ ...range ( 3 ) ] , async ( v ) => {
55
+ let p = asyncEvery ( [ ...range ( 3 ) ] , async ( v ) => {
56
56
await d . promise
57
57
return true
58
58
} , 10 )
59
59
d . resolve ( )
60
60
expect ( await p ) . toBe ( [ ...range ( 3 ) ] . every ( ( v ) => true ) )
61
61
62
62
d = new Deferred ( )
63
- p = every ( [ ...range ( 3 ) ] , async ( v ) => {
63
+ p = asyncEvery ( [ ...range ( 3 ) ] , async ( v ) => {
64
64
await d . promise
65
65
return v !== 2
66
66
} , 10 )
67
67
d . resolve ( )
68
68
expect ( await p ) . toBe ( [ ...range ( 3 ) ] . every ( ( v ) => v !== 2 ) )
69
69
70
70
d = new Deferred ( )
71
- p = every ( [ ...range ( 3 ) ] , async ( v ) => {
71
+ p = asyncEvery ( [ ...range ( 3 ) ] , async ( v ) => {
72
72
await d . promise
73
73
return false
74
74
} , 10 )
75
75
d . resolve ( )
76
76
expect ( await p ) . toBe ( [ ...range ( 3 ) ] . every ( ( v ) => false ) )
77
77
78
78
d = new Deferred ( )
79
- p = every ( [ ] , async ( v ) => {
79
+ p = asyncEvery ( [ ] , async ( v ) => {
80
80
await d . promise
81
81
return false
82
82
} , 10 )
83
83
d . resolve ( )
84
84
expect ( await p ) . toBe ( [ ] . every ( ( v ) => false ) )
85
85
86
86
d = new Deferred ( )
87
- p = every ( [ ] , async ( v ) => {
87
+ p = asyncEvery ( [ ] , async ( v ) => {
88
88
await d . promise
89
89
return true
90
90
} , 10 )
91
91
d . resolve ( )
92
92
expect ( await p ) . toBe ( [ ] . every ( ( v ) => true ) )
93
93
} )
94
94
95
- test ( 'every first in time' , async ( ) => {
95
+ test ( 'asyncEvery first in time' , async ( ) => {
96
96
const ds = [ ...range ( 3 ) ] . map ( ( ) => new Deferred ( ) )
97
- const p = every ( range ( 3 ) , async ( v , i ) => {
97
+ const p = asyncEvery ( range ( 3 ) , async ( v , i ) => {
98
98
await ds [ i ]
99
99
return false
100
100
} , 3 )
@@ -103,9 +103,9 @@ test('every first in time', async () => {
103
103
expect ( res ) . toBe ( false )
104
104
} )
105
105
106
- test ( 'every error' , async ( ) => {
106
+ test ( 'asyncEvery error' , async ( ) => {
107
107
const callList = [ ...range ( 3 ) ] . map ( ( ) => 0 )
108
- const p = every ( [ ...range ( 3 ) ] , async ( v , i ) => {
108
+ const p = asyncEvery ( [ ...range ( 3 ) ] , async ( v , i ) => {
109
109
callList [ i ] += 1
110
110
if ( i === 1 ) {
111
111
throw new TestError ( )
@@ -124,12 +124,12 @@ test('every error', async () => {
124
124
expect ( callList [ 2 ] ) . toStrictEqual ( 0 )
125
125
} )
126
126
127
- test ( 'every infinite concurrency all pass' , async ( ) => {
127
+ test ( 'asyncEvery infinite concurrency all pass' , async ( ) => {
128
128
const callCount = { }
129
129
; [ ...range ( 3 ) ] . forEach ( ( i ) => { callCount [ i ] = 0 } )
130
130
const d = new Deferred ( )
131
131
const ds = [ ...range ( 3 ) ] . map ( ( ) => new Deferred ( ) )
132
- const p = every ( [ ...range ( 3 ) ] , async ( v , i ) => {
132
+ const p = asyncEvery ( [ ...range ( 3 ) ] , async ( v , i ) => {
133
133
callCount [ i ] += 1
134
134
ds [ i ] . resolve ( )
135
135
await d . promise
@@ -147,12 +147,12 @@ test('every infinite concurrency all pass', async () => {
147
147
expect ( callCount [ 2 ] ) . toBe ( 1 )
148
148
} )
149
149
150
- test ( 'every infinite concurrency no all pass' , async ( ) => {
150
+ test ( 'asyncEvery infinite concurrency no all pass' , async ( ) => {
151
151
const callCount = { }
152
152
; [ ...range ( 3 ) ] . forEach ( ( i ) => { callCount [ i ] = 0 } )
153
153
const d = new Deferred ( )
154
154
const ds = [ ...range ( 3 ) ] . map ( ( ) => new Deferred ( ) )
155
- const p = every ( [ ...range ( 3 ) ] , async ( v , i ) => {
155
+ const p = asyncEvery ( [ ...range ( 3 ) ] , async ( v , i ) => {
156
156
callCount [ i ] += 1
157
157
ds [ i ] . resolve ( )
158
158
await d . promise
@@ -174,8 +174,8 @@ test('every infinite concurrency no all pass', async () => {
174
174
expect ( callCount [ 2 ] ) . toBe ( 1 )
175
175
} )
176
176
177
- test ( 'every infinite concurrency error' , async ( ) => {
178
- const p = every ( [ ...range ( 3 ) ] , async ( v , i ) => {
177
+ test ( 'asyncEvery infinite concurrency error' , async ( ) => {
178
+ const p = asyncEvery ( [ ...range ( 3 ) ] , async ( v , i ) => {
179
179
if ( i === 1 ) {
180
180
throw new TestError ( )
181
181
}
@@ -191,12 +191,12 @@ test('every infinite concurrency error', async () => {
191
191
await delay ( )
192
192
} )
193
193
194
- test ( 'every concurrency 1 all pass' , async ( ) => {
194
+ test ( 'asyncEvery concurrency 1 all pass' , async ( ) => {
195
195
const callCount = { }
196
196
; [ ...range ( 3 ) ] . forEach ( ( i ) => { callCount [ i ] = 0 } )
197
197
const d = new Deferred ( )
198
198
const ds = [ ...range ( 3 ) ] . map ( ( ) => new Deferred ( ) )
199
- const p = every ( [ ...range ( 3 ) ] , async ( v , i ) => {
199
+ const p = asyncEvery ( [ ...range ( 3 ) ] , async ( v , i ) => {
200
200
callCount [ i ] += 1
201
201
ds [ i ] . resolve ( )
202
202
await d . promise
@@ -214,12 +214,12 @@ test('every concurrency 1 all pass', async () => {
214
214
expect ( callCount [ 2 ] ) . toBe ( 1 )
215
215
} )
216
216
217
- test ( 'every concurrency 1 no all pass' , async ( ) => {
217
+ test ( 'asyncEvery concurrency 1 no all pass' , async ( ) => {
218
218
const callCount = { }
219
219
; [ ...range ( 3 ) ] . forEach ( ( i ) => { callCount [ i ] = 0 } )
220
220
const d = new Deferred ( )
221
221
const ds = [ ...range ( 3 ) ] . map ( ( ) => new Deferred ( ) )
222
- const p = every ( [ ...range ( 3 ) ] , async ( v , i ) => {
222
+ const p = asyncEvery ( [ ...range ( 3 ) ] , async ( v , i ) => {
223
223
callCount [ i ] += 1
224
224
ds [ i ] . resolve ( )
225
225
await d . promise
@@ -241,9 +241,9 @@ test('every concurrency 1 no all pass', async () => {
241
241
expect ( callCount [ 2 ] ) . toBe ( 0 )
242
242
} )
243
243
244
- test ( 'every concurrency 1 error' , async ( ) => {
244
+ test ( 'asyncEvery concurrency 1 error' , async ( ) => {
245
245
const callList = [ ...range ( 3 ) ] . map ( ( ) => 0 )
246
- const p = every ( [ ...range ( 3 ) ] , async ( v , i ) => {
246
+ const p = asyncEvery ( [ ...range ( 3 ) ] , async ( v , i ) => {
247
247
callList [ i ] += 1
248
248
if ( i === 1 ) {
249
249
throw new TestError ( )
0 commit comments