1 | var test = require('tape')
|
2 | var co = require('./common.js')
|
3 | var sleep = require('./sleep.js')
|
4 | var loop = require('./loop.js')
|
5 |
|
6 | test('loop async', async t => {
|
7 | var i = 0
|
8 | var n = 0
|
9 | await loop(async () => {
|
10 | await sleep(10)
|
11 | n++
|
12 | if (n === 10) return false
|
13 | return true
|
14 | })
|
15 |
|
16 | t.equal(n, 10)
|
17 |
|
18 | loop(async () => {
|
19 | await sleep(100)
|
20 | n++
|
21 | if (n === 20) return false
|
22 | return true
|
23 | })
|
24 | await sleep(1000)
|
25 | t.notEqual(n, 20)
|
26 | await sleep(1100)
|
27 | t.equal(n, 20)
|
28 | t.end()
|
29 | })
|
30 |
|
31 | test('loop sync', async t => {
|
32 | var i = 0
|
33 | var n = 0
|
34 | await loop(() => {
|
35 | n++
|
36 | if (n === 10) return false
|
37 | return true
|
38 | })
|
39 |
|
40 | t.equal(n, 10)
|
41 | t.end()
|
42 | })
|