1- var steed = require ( "steed" ) ;
1+ var steed = require ( 'steed' ) ;
2+ var assert = chai . assert ;
23
3- var moscaSettings = function ( ) {
4- return {
5- port : 1883
6- } ;
4+ var moscaSettings = function ( ) {
5+ return {
6+ port : 1883 ,
7+ http : {
8+ port : 8000
9+ }
10+ } ;
711} ;
812
9- describe ( "mosca.Server.error" , function ( ) {
10- var instance ;
11- var secondInstance ;
12- var settings ;
13+ var moscaSettings2 = function ( ) {
14+ return {
15+ port : 1884 ,
16+ http : {
17+ port : 8000
18+ }
19+ } ;
20+ } ;
1321
14- beforeEach ( function ( done ) {
15- settings = moscaSettings ( ) ;
16- settings . publishNewClient = false ;
17- settings . publishClientDisconnect = false ;
18- instance = new mosca . Server ( settings , done ) ;
19- this . instance = instance ;
20- this . settings = settings ;
21- secondInstance = null ;
2222
23- } ) ;
23+ describe ( 'mosca.Server.error' , function ( ) {
24+ var instance ;
25+ var secondInstance ;
2426
25- afterEach ( function ( done ) {
26- var instances = [ this . instance ] ;
27+ beforeEach ( function ( done ) {
28+ instance = null ;
29+ secondInstance = null ;
30+ done ( ) ;
31+ } ) ;
2732
28- if ( secondInstance ) {
29- instances . push ( secondInstance ) ;
30- }
33+ afterEach ( function ( done ) {
34+ this . instance = instance ;
35+ var instances = [ this . instance ] ;
3136
32- steed . each ( instances , function ( instance , cb ) {
33- instance . close ( cb ) ;
34- } , function ( ) {
35- setImmediate ( done ) ;
36- } ) ;
37+ if ( secondInstance ) {
38+ instances . push ( secondInstance ) ;
39+ }
40+
41+ steed . each ( instances , function ( instance , cb ) {
42+ instance . close ( cb ) ;
43+ } , function ( ) {
44+ setImmediate ( done ) ;
45+ } ) ;
46+ } ) ;
47+ it ( 'should get MQTT port Error: listen EADDRINUSE' , function ( done ) {
48+ this . timeout ( 10000 ) ; // have to wait for the inject with delay of two seconds
49+ instance = new mosca . Server ( moscaSettings ( ) , function ( err , server ) {
50+ assert . ifError ( err ) ;
51+ expect ( server === instance ) . to . be . true ;
52+ } ) ;
53+ secondInstance = new mosca . Server ( moscaSettings ( ) , function ( err , server ) {
54+ assert . ifError ( err ) ;
55+ expect ( server === secondInstance ) . to . be . true ;
56+ } ) ;
57+ secondInstance . on ( 'error' , function ( err ) {
58+ expect ( err . toString ( ) . substr ( 0 , 24 ) ) . to . be . equal ( 'Error: listen EADDRINUSE' ) ;
59+ done ( ) ;
60+ } ) ;
61+ } ) ;
62+ it ( 'should get HTTP port Error: listen EADDRINUSE' , function ( done ) {
63+ this . timeout ( 10000 ) ; // have to wait for the inject with delay of two seconds
64+ instance = new mosca . Server ( moscaSettings ( ) , function ( err , server ) {
65+ assert . ifError ( err ) ;
66+ expect ( server === instance ) . to . be . true ;
67+ } ) ;
68+ secondInstance = new mosca . Server ( moscaSettings2 ( ) , function ( err , server ) {
69+ assert . ifError ( err ) ;
70+ expect ( server === secondInstance ) . to . be . true ;
3771 } ) ;
38- it ( "should get Error: listen EADDRINUSE :::1883" , function ( done ) {
39- secondInstance = new mosca . Server ( moscaSettings ( ) , function ( err , server ) {
40- expect ( server === secondInstance ) . to . be . true ;
41- } ) ;
42- secondInstance . on ( 'error' , function ( err ) {
43- expect ( err . toString ( ) ) . to . be . equal ( "Error: listen EADDRINUSE :::1883" ) ;
44- done ( ) ;
45- } ) ;
72+ secondInstance . on ( 'error' , function ( err ) {
73+ expect ( err . toString ( ) . substr ( 0 , 24 ) ) . to . be . equal ( 'Error: listen EADDRINUSE' ) ;
74+ done ( ) ;
4675 } ) ;
76+ } ) ;
4777} ) ;
0 commit comments