Skip to content

Commit 61041f4

Browse files
committed
missing test file
1 parent f0da751 commit 61041f4

File tree

1 file changed

+55
-0
lines changed

1 file changed

+55
-0
lines changed

test/backoff.test.js

+55
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
'use strict'
2+
3+
const test = require('tap').test
4+
const anger = require('..')
5+
6+
test('backoff test', { timeout: 3000 }, (t) => {
7+
t.plan(4)
8+
9+
const startTime = process.hrtime()
10+
11+
require('./authServer')((err, server) => {
12+
t.error(err)
13+
14+
t.tearDown(server.stop.bind(server))
15+
16+
let uid = 0
17+
const instance = anger({
18+
url: server.info.uri,
19+
subscription: '/greet',
20+
senders: 1,
21+
connections: 1,
22+
requests: 1,
23+
responses: 1,
24+
identifier: (payload) => payload.meta.id,
25+
auth: { headers: { authorization: `Basic ${new Buffer('jane:jane').toString('base64')}` } },
26+
trigger: (sender) => {
27+
sender.request({
28+
method: 'POST',
29+
path: '/h',
30+
payload: {
31+
id: ++uid
32+
}
33+
})
34+
return uid
35+
},
36+
retryOpts: {
37+
retries: 3,
38+
min: 750,
39+
max: 750
40+
}
41+
})
42+
43+
instance.on('error', (err) => {
44+
t.ok(err, 'error happened')
45+
const end = process.hrtime(startTime)
46+
const elapsedTime = end[0] * 1e3 + end[1] / 1e6
47+
t.ok(elapsedTime >= 1500, 'should have taken at least a second and a half to fail')
48+
t.equal(server.failedCount, 3)
49+
})
50+
51+
instance.on('end', () => {
52+
t.fail('end never happens')
53+
})
54+
})
55+
})

0 commit comments

Comments
 (0)