Skip to content
This repository was archived by the owner on Jul 3, 2023. It is now read-only.

Commit 36ec646

Browse files
author
João Barbosa
committed
Wait for reader clients to close in test suite
1 parent 61f274d commit 36ec646

7 files changed

Lines changed: 193 additions & 233 deletions

File tree

Readme.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ $ npm install nsq.js
2828
except fo the framer:
2929

3030
```
31-
$ DEBUG=nsq*,-nsq:framer node test
31+
$ DEBUG=nsq*,-nsq:framer npm test
3232
3333
nsq:reader connect nsqd 0.0.0.0:4150 events/ingestion [5] +0ms
3434
nsq:connection connect: 0.0.0.0:4150 V2 +0ms

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
"devDependencies": {
2424
"bytes": "~2.4.0",
2525
"jstrace": "~0.3.0",
26+
"lodash.get": "^4.4.2",
2627
"mocha": "*",
2728
"should": "*",
2829
"superagent": "~2.3.0"

test/acceptance/connection.js

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,10 @@
11

2+
require('./hooks');
3+
24
var Connection = require('../../lib/connection');
35
var assert = require('assert');
4-
var utils = require('../utils');
5-
var uid = require('uid');
66

77
describe('Connection', function(){
8-
var topic = uid();
9-
afterEach(function(done){
10-
utils.deleteTopic(topic, function(){
11-
topic = uid();
12-
done();
13-
});
14-
})
15-
168
it('should identify on connect', function(done){
179
var conn = new Connection;
1810

@@ -41,7 +33,7 @@ describe('Connection', function(){
4133

4234
sub.on('message', function(msg){
4335
msg.finish();
44-
done();
36+
sub.close(done);
4537
});
4638

4739
pub.connect();

test/acceptance/hooks.js

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
2+
var assert = require('assert');
3+
var get = require('lodash.get');
4+
var utils = require('../utils');
5+
6+
beforeEach(function(done){
7+
utils.deleteTopic('test', done);
8+
})
9+
10+
afterEach(function(done){
11+
utils.stats('test', 'reader', function(err, stats){
12+
if (err) return done(err);
13+
var state = get(stats.body.data, 'topics[0].channels[0].clients[0].state');
14+
assert(state != 3, 'client in subscribed state');
15+
done();
16+
})
17+
});

0 commit comments

Comments
 (0)