1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104
|
Description: Move buffer-disconnect test to scheduler.js test so as to not reinstatiate clock again
More or less, a hack
Author: Nilesh Patra <nilesh@debian.org>
Last-Update: 2022-05-17
--- a/test/robust-sockjs.js
+++ b/test/robust-sockjs.js
@@ -55,43 +55,5 @@
_.size(rsjs._connections).should.equal(1);
(rob4 === undefined).should.be.true();
});
- it('buffers disconnects', function(){
- var clock = sinon.useFakeTimers();
- var rsjs = new RobustSockJS(1); //Timeout after 1 sec
- var conn = {
- url: '/__sockjs__/n=1234/',
- close: sinon.spy(),
- write: function(){},
- emit: function(){}
- };
-
- rob = rsjs.robustify(conn);
- _.size(rsjs._connections).should.equal(1);
-
- conn.emit('close');
- conn.emit('end');
-
- clock.tick(500);
-
- // Should still be available
- _.size(rsjs._connections).should.equal(1);
-
- // Reconnect
- conn.url = conn.url.replace(/\/n=/, '/o=');
- rsjs.robustify(conn);
-
- clock.tick(750);
-
- conn.emit('close');
- conn.emit('end');
-
- _.size(rsjs._connections).should.equal(1);
-
- clock.tick(1250);
-
- _.size(rsjs._connections).should.equal(0);
-
- clock.restore();
- });
});
});
--- a/test/scheduler.js
+++ b/test/scheduler.js
@@ -13,6 +13,7 @@
var { AppSpec } = require('../lib/worker/app-spec.js');
var sinon = require('sinon');
+var RobustSockJS = require('../lib/proxy/robust-sockjs');
var Q = require('q');
var _ = require('underscore');
var SimpleEventBus = require('../lib/events/simple-event-bus');
@@ -144,6 +145,43 @@
})
})
.then(done, done).done();
+ }),
+ it('buffers disconnects', function(){
+ var rsjs = new RobustSockJS(1); //Timeout after 1 sec
+ var conn = {
+ url: '/__sockjs__/n=1234/',
+ close: sinon.spy(),
+ write: function(){},
+ emit: function(){}
+ };
+
+ rob = rsjs.robustify(conn);
+ _.size(rsjs._connections).should.equal(1);
+
+ conn.emit('close');
+ conn.emit('end');
+
+ clock.tick(500);
+
+ // Should still be available
+ _.size(rsjs._connections).should.equal(1);
+
+ // Reconnect
+ conn.url = conn.url.replace(/\/n=/, '/o=');
+ rsjs.robustify(conn);
+
+ clock.tick(750);
+
+ conn.emit('close');
+ conn.emit('end');
+
+ _.size(rsjs._connections).should.equal(1);
+
+ clock.tick(1250);
+
+ _.size(rsjs._connections).should.equal(0);
+
+ clock.restore();
})
})
|