Simulator first commit
This commit is contained in:
34
node_modules/reconnect-core/test/attempts.js
generated
vendored
Normal file
34
node_modules/reconnect-core/test/attempts.js
generated
vendored
Normal file
@ -0,0 +1,34 @@
|
||||
var inject = require('..')
|
||||
var Stream = require('stream')
|
||||
var test = require('tape')
|
||||
|
||||
var reconnect = inject(function () {
|
||||
var s = new Stream
|
||||
process.nextTick(function () {
|
||||
s.emit('error', new Error('oh noes!'))
|
||||
})
|
||||
return s
|
||||
})
|
||||
|
||||
test('attempts', function (t) {
|
||||
t.plan(21)
|
||||
|
||||
var fail = function () { t.fail() }
|
||||
var reconnector = reconnect({initialDelay: 10}, fail)
|
||||
|
||||
reconnector.on('error', function (err) {
|
||||
t.equal(err.message, 'oh noes!', 'correct error message')
|
||||
})
|
||||
|
||||
var onReconnect = function (n, delay) {
|
||||
t.equal(reconnector.connected, false)
|
||||
t.equal(reconnector.reconnect, true)
|
||||
if (n > 4) reconnector.reconnect = false
|
||||
}
|
||||
|
||||
reconnector
|
||||
.on('connect', fail)
|
||||
.on('reconnect', onReconnect)
|
||||
.connect()
|
||||
})
|
||||
|
58
node_modules/reconnect-core/test/connection.js
generated
vendored
Normal file
58
node_modules/reconnect-core/test/connection.js
generated
vendored
Normal file
@ -0,0 +1,58 @@
|
||||
var inject = require('..')
|
||||
var test = require('tape')
|
||||
var Stream = require('stream')
|
||||
var Emitter = require('events').EventEmitter
|
||||
var noop = function () {}
|
||||
|
||||
test('connection', function (t) {
|
||||
t.plan(4) // reconnect and connect
|
||||
|
||||
var ee = new Emitter
|
||||
|
||||
var reconnect = inject(function () {
|
||||
var s = new Stream
|
||||
ee.on('start server', function () {
|
||||
s.emit('connect')
|
||||
s.emit('close')
|
||||
})
|
||||
s.end = noop
|
||||
return s
|
||||
})
|
||||
|
||||
var reconnector = reconnect({initialDelay: 10}, function (stream) {
|
||||
reconnector.reconnect = false
|
||||
reconnector.disconnect()
|
||||
})
|
||||
|
||||
var connected = false
|
||||
var onConnect = function () {
|
||||
connected = true
|
||||
t.ok(reconnector.connected)
|
||||
}
|
||||
|
||||
var onReconnect = function (n) {
|
||||
t.notOk(connected)
|
||||
t.notOk(reconnector.connected)
|
||||
t.ok(reconnector.reconnect)
|
||||
if (n < 4) process.nextTick(function () {
|
||||
ee.emit('start server')
|
||||
})
|
||||
}
|
||||
|
||||
reconnector
|
||||
.on('connect', onConnect)
|
||||
.on('reconnect', onReconnect)
|
||||
.connect()
|
||||
})
|
||||
|
||||
test('this arg', function (t) {
|
||||
var thisArg
|
||||
var reconnect = inject(function () {
|
||||
thisArg = this
|
||||
return new Stream
|
||||
})
|
||||
var reconnector = reconnect()
|
||||
reconnector.connect()
|
||||
t.equal(thisArg, reconnector)
|
||||
t.end()
|
||||
})
|
33
node_modules/reconnect-core/test/disconnect.js
generated
vendored
Normal file
33
node_modules/reconnect-core/test/disconnect.js
generated
vendored
Normal file
@ -0,0 +1,33 @@
|
||||
var inject = require('..')
|
||||
var test = require('tape')
|
||||
var Stream = require('stream')
|
||||
|
||||
test('disconnect', function (t) {
|
||||
t.plan(1)
|
||||
|
||||
var timeout
|
||||
var reconnect = inject(function () {
|
||||
reconnector.reconnect = false
|
||||
reconnector.disconnect()
|
||||
|
||||
timeout = setTimeout(function() {
|
||||
t.fail('client did not disconnect')
|
||||
}, 500)
|
||||
|
||||
var s = new Stream
|
||||
process.nextTick(function () {
|
||||
s.emit('end')
|
||||
})
|
||||
return s
|
||||
})
|
||||
|
||||
var reconnector = reconnect({initialDelay: 10})
|
||||
|
||||
reconnector.on('disconnect', function() {
|
||||
clearTimeout(timeout)
|
||||
t.ok(true, 'disconnected')
|
||||
})
|
||||
|
||||
reconnector.connect()
|
||||
})
|
||||
|
26
node_modules/reconnect-core/test/onconnect-listener.js
generated
vendored
Normal file
26
node_modules/reconnect-core/test/onconnect-listener.js
generated
vendored
Normal file
@ -0,0 +1,26 @@
|
||||
var inject = require('..')
|
||||
var test = require('tape')
|
||||
var Stream = require('stream')
|
||||
var Emitter = require('events').EventEmitter
|
||||
var noop = function () {}
|
||||
|
||||
var ee = new Emitter
|
||||
|
||||
var reconnect = inject(function () {
|
||||
var s = new Stream
|
||||
process.nextTick(function () {
|
||||
s.emit('connect')
|
||||
s.emit('close')
|
||||
})
|
||||
s.end = noop
|
||||
return s
|
||||
})
|
||||
|
||||
test('on connect listener', function (t) {
|
||||
t.plan(1)
|
||||
|
||||
reconnect().on('connect', function () {
|
||||
t.ok(true)
|
||||
this.reconnect = false
|
||||
}).connect()
|
||||
})
|
51
node_modules/reconnect-core/test/reconnection.js
generated
vendored
Normal file
51
node_modules/reconnect-core/test/reconnection.js
generated
vendored
Normal file
@ -0,0 +1,51 @@
|
||||
var inject = require('..')
|
||||
var test = require('tape')
|
||||
var Stream = require('stream')
|
||||
|
||||
test('reconnect', function (t) {
|
||||
t.plan(18)
|
||||
|
||||
var start = false
|
||||
var times = 0
|
||||
var reconnect = inject(function () {
|
||||
var s = new Stream
|
||||
|
||||
if (start) {
|
||||
t.ok(true, 'start server')
|
||||
if (++times >= 2) {
|
||||
reconnector.reconnect = false
|
||||
}
|
||||
process.nextTick(function () {
|
||||
s.emit('connect')
|
||||
});
|
||||
}
|
||||
|
||||
process.nextTick(function () {
|
||||
s.emit('end')
|
||||
})
|
||||
|
||||
return s
|
||||
})
|
||||
|
||||
var reconnector = reconnect({initialDelay: 10}, function () {
|
||||
t.ok(true, 'reconnect cb fired')
|
||||
})
|
||||
|
||||
function onConnect () {
|
||||
t.ok(reconnector.connected, 'client connected')
|
||||
}
|
||||
|
||||
function onReconnect (n) {
|
||||
t.ok(true, 'reconnect ' + n)
|
||||
t.notOk(reconnector.connected, 'not connected')
|
||||
t.ok(reconnector.reconnect, 'will reconnect')
|
||||
if (n == 1) start = true;
|
||||
}
|
||||
|
||||
reconnector
|
||||
.on('connect', onConnect)
|
||||
.on('reconnect', onReconnect)
|
||||
.connect()
|
||||
})
|
||||
|
||||
|
14
node_modules/reconnect-core/test/reset.js
generated
vendored
Normal file
14
node_modules/reconnect-core/test/reset.js
generated
vendored
Normal file
@ -0,0 +1,14 @@
|
||||
|
||||
var inject = require('..')
|
||||
var test = require('tape')
|
||||
var Stream = require('stream')
|
||||
|
||||
var reconnect = inject(function () {
|
||||
return new Stream
|
||||
})
|
||||
|
||||
test('reset', function (t) {
|
||||
// TODO real test
|
||||
reconnect().reset()
|
||||
t.end()
|
||||
})
|
Reference in New Issue
Block a user