1
- var steed = require ( "steed" ) ;
1
+ var steed = require ( 'steed' ) ;
2
+ var assert = chai . assert ;
2
3
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
+ } ;
7
11
} ;
8
12
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
+ } ;
13
21
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 ;
22
22
23
- } ) ;
23
+ describe ( 'mosca.Server.error' , function ( ) {
24
+ var instance ;
25
+ var secondInstance ;
24
26
25
- afterEach ( function ( done ) {
26
- var instances = [ this . instance ] ;
27
+ beforeEach ( function ( done ) {
28
+ instance = null ;
29
+ secondInstance = null ;
30
+ done ( ) ;
31
+ } ) ;
27
32
28
- if ( secondInstance ) {
29
- instances . push ( secondInstance ) ;
30
- }
33
+ afterEach ( function ( done ) {
34
+ this . instance = instance ;
35
+ var instances = [ this . instance ] ;
31
36
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 ;
37
71
} ) ;
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 ( ) ;
46
75
} ) ;
76
+ } ) ;
47
77
} ) ;
0 commit comments