@@ -7,10 +7,10 @@ var should = require('chai').should
7
7
var sinon = require ( 'sinon' )
8
8
var mqtt = require ( '../' )
9
9
var xtend = require ( 'xtend' )
10
- var MqttServer = require ( './server' ) . MqttServer
11
10
var Store = require ( './../lib/store' )
12
11
var assert = require ( 'chai' ) . assert
13
12
var ports = require ( './helpers/port_list' )
13
+ var serverBuilder = require ( './server_helpers_for_client_tests' ) . serverBuilder
14
14
15
15
module . exports = function ( server , config ) {
16
16
var version = config . protocolVersion || 4
@@ -598,9 +598,10 @@ module.exports = function (server, config) {
598
598
var incomingStore = new mqtt . Store ( { clean : false } )
599
599
var outgoingStore = new mqtt . Store ( { clean : false } )
600
600
var publishCount = 0
601
- var server2 = new MqttServer ( function ( serverClient ) {
601
+ var server2 = serverBuilder ( config . protocol , function ( serverClient ) {
602
602
serverClient . on ( 'connect' , function ( ) {
603
- serverClient . connack ( { returnCode : 0 } )
603
+ var connack = version === 5 ? { reasonCode : 0 } : { returnCode : 0 }
604
+ serverClient . connack ( connack )
604
605
} )
605
606
serverClient . on ( 'publish' , function ( packet ) {
606
607
if ( packet . qos !== 0 ) {
@@ -626,7 +627,7 @@ module.exports = function (server, config) {
626
627
} )
627
628
628
629
server2 . listen ( ports . PORTAND50 , function ( ) {
629
- client = mqtt . connect ( {
630
+ client = connect ( {
630
631
port : ports . PORTAND50 ,
631
632
host : 'localhost' ,
632
633
clean : false ,
@@ -1292,13 +1293,14 @@ module.exports = function (server, config) {
1292
1293
var client = { }
1293
1294
var incomingStore = new mqtt . Store ( { clean : false } )
1294
1295
var outgoingStore = new mqtt . Store ( { clean : false } )
1295
- var server2 = new MqttServer ( function ( serverClient ) {
1296
+ var server2 = serverBuilder ( config . protocol , function ( serverClient ) {
1296
1297
// errors are not interesting for this test
1297
1298
// but they might happen on some platforms
1298
1299
serverClient . on ( 'error' , function ( ) { } )
1299
1300
1300
1301
serverClient . on ( 'connect' , function ( packet ) {
1301
- serverClient . connack ( { returnCode : 0 } )
1302
+ var connack = version === 5 ? { reasonCode : 0 } : { returnCode : 0 }
1303
+ serverClient . connack ( connack )
1302
1304
} )
1303
1305
serverClient . on ( 'publish' , function ( packet ) {
1304
1306
serverClient . puback ( { messageId : packet . messageId } )
@@ -1321,7 +1323,7 @@ module.exports = function (server, config) {
1321
1323
} )
1322
1324
1323
1325
server2 . listen ( ports . PORTAND50 , function ( ) {
1324
- client = mqtt . connect ( {
1326
+ client = connect ( {
1325
1327
port : ports . PORTAND50 ,
1326
1328
host : 'localhost' ,
1327
1329
clean : false ,
@@ -2655,9 +2657,10 @@ module.exports = function (server, config) {
2655
2657
it ( 'should not resubscribe when reconnecting if suback is error' , function ( done ) {
2656
2658
var tryReconnect = true
2657
2659
var reconnectEvent = false
2658
- var server2 = new MqttServer ( function ( serverClient ) {
2660
+ var server2 = serverBuilder ( config . protocol , function ( serverClient ) {
2659
2661
serverClient . on ( 'connect' , function ( packet ) {
2660
- serverClient . connack ( { returnCode : 0 } )
2662
+ var connack = version === 5 ? { reasonCode : 0 } : { returnCode : 0 }
2663
+ serverClient . connack ( connack )
2661
2664
} )
2662
2665
serverClient . on ( 'subscribe' , function ( packet ) {
2663
2666
serverClient . suback ( {
@@ -2671,7 +2674,7 @@ module.exports = function (server, config) {
2671
2674
} )
2672
2675
2673
2676
server2 . listen ( ports . PORTAND49 , function ( ) {
2674
- var client = mqtt . connect ( {
2677
+ var client = connect ( {
2675
2678
port : ports . PORTAND49 ,
2676
2679
host : 'localhost' ,
2677
2680
reconnectPeriod : 100
@@ -2708,9 +2711,10 @@ module.exports = function (server, config) {
2708
2711
var client = { }
2709
2712
var incomingStore = new mqtt . Store ( { clean : false } )
2710
2713
var outgoingStore = new mqtt . Store ( { clean : false } )
2711
- var server2 = new MqttServer ( function ( serverClient ) {
2714
+ var server2 = serverBuilder ( config . protocol , function ( serverClient ) {
2712
2715
serverClient . on ( 'connect' , function ( packet ) {
2713
- serverClient . connack ( { returnCode : 0 } )
2716
+ var connack = version === 5 ? { reasonCode : 0 } : { returnCode : 0 }
2717
+ serverClient . connack ( connack )
2714
2718
if ( reconnect ) {
2715
2719
serverClient . pubrel ( { messageId : 1 } )
2716
2720
}
@@ -2741,7 +2745,7 @@ module.exports = function (server, config) {
2741
2745
} )
2742
2746
2743
2747
server2 . listen ( ports . PORTAND50 , function ( ) {
2744
- client = mqtt . connect ( {
2748
+ client = connect ( {
2745
2749
port : ports . PORTAND50 ,
2746
2750
host : 'localhost' ,
2747
2751
clean : false ,
@@ -2768,9 +2772,10 @@ module.exports = function (server, config) {
2768
2772
it ( 'should clear outgoing if close from server' , function ( done ) {
2769
2773
var reconnect = false
2770
2774
var client = { }
2771
- var server2 = new MqttServer ( function ( serverClient ) {
2775
+ var server2 = serverBuilder ( config . protocol , function ( serverClient ) {
2772
2776
serverClient . on ( 'connect' , function ( packet ) {
2773
- serverClient . connack ( { returnCode : 0 } )
2777
+ var connack = version === 5 ? { reasonCode : 0 } : { returnCode : 0 }
2778
+ serverClient . connack ( connack )
2774
2779
} )
2775
2780
serverClient . on ( 'subscribe' , function ( packet ) {
2776
2781
if ( reconnect ) {
@@ -2787,11 +2792,12 @@ module.exports = function (server, config) {
2787
2792
} )
2788
2793
2789
2794
server2 . listen ( ports . PORTAND50 , function ( ) {
2790
- client = mqtt . connect ( {
2795
+ client = connect ( {
2791
2796
port : ports . PORTAND50 ,
2792
2797
host : 'localhost' ,
2793
2798
clean : true ,
2794
2799
clientId : 'cid1' ,
2800
+ keepalive : 1 ,
2795
2801
reconnectPeriod : 0
2796
2802
} )
2797
2803
@@ -2821,9 +2827,10 @@ module.exports = function (server, config) {
2821
2827
var client = { }
2822
2828
var incomingStore = new mqtt . Store ( { clean : false } )
2823
2829
var outgoingStore = new mqtt . Store ( { clean : false } )
2824
- var server2 = new MqttServer ( function ( serverClient ) {
2830
+ var server2 = serverBuilder ( config . protocol , function ( serverClient ) {
2825
2831
serverClient . on ( 'connect' , function ( packet ) {
2826
- serverClient . connack ( { returnCode : 0 } )
2832
+ var connack = version === 5 ? { reasonCode : 0 } : { returnCode : 0 }
2833
+ serverClient . connack ( connack )
2827
2834
} )
2828
2835
serverClient . on ( 'publish' , function ( packet ) {
2829
2836
if ( reconnect ) {
@@ -2842,7 +2849,7 @@ module.exports = function (server, config) {
2842
2849
} )
2843
2850
2844
2851
server2 . listen ( ports . PORTAND50 , function ( ) {
2845
- client = mqtt . connect ( {
2852
+ client = connect ( {
2846
2853
port : ports . PORTAND50 ,
2847
2854
host : 'localhost' ,
2848
2855
clean : false ,
@@ -2866,9 +2873,10 @@ module.exports = function (server, config) {
2866
2873
var client = { }
2867
2874
var incomingStore = new mqtt . Store ( { clean : false } )
2868
2875
var outgoingStore = new mqtt . Store ( { clean : false } )
2869
- var server2 = new MqttServer ( function ( serverClient ) {
2876
+ var server2 = serverBuilder ( config . protocol , function ( serverClient ) {
2870
2877
serverClient . on ( 'connect' , function ( packet ) {
2871
- serverClient . connack ( { returnCode : 0 } )
2878
+ var connack = version === 5 ? { reasonCode : 0 } : { returnCode : 0 }
2879
+ serverClient . connack ( connack )
2872
2880
} )
2873
2881
serverClient . on ( 'publish' , function ( packet ) {
2874
2882
if ( reconnect ) {
@@ -2887,7 +2895,7 @@ module.exports = function (server, config) {
2887
2895
} )
2888
2896
2889
2897
server2 . listen ( ports . PORTAND50 , function ( ) {
2890
- client = mqtt . connect ( {
2898
+ client = connect ( {
2891
2899
port : ports . PORTAND50 ,
2892
2900
host : 'localhost' ,
2893
2901
clean : false ,
@@ -2911,9 +2919,10 @@ module.exports = function (server, config) {
2911
2919
var client = { }
2912
2920
var incomingStore = new mqtt . Store ( { clean : false } )
2913
2921
var outgoingStore = new mqtt . Store ( { clean : false } )
2914
- var server2 = new MqttServer ( function ( serverClient ) {
2922
+ var server2 = serverBuilder ( config . protocol , function ( serverClient ) {
2915
2923
serverClient . on ( 'connect' , function ( packet ) {
2916
- serverClient . connack ( { returnCode : 0 } )
2924
+ var connack = version === 5 ? { reasonCode : 0 } : { returnCode : 0 }
2925
+ serverClient . connack ( connack )
2917
2926
} )
2918
2927
serverClient . on ( 'publish' , function ( packet ) {
2919
2928
if ( ! reconnect ) {
@@ -2937,7 +2946,7 @@ module.exports = function (server, config) {
2937
2946
} )
2938
2947
2939
2948
server2 . listen ( ports . PORTAND50 , function ( ) {
2940
- client = mqtt . connect ( {
2949
+ client = connect ( {
2941
2950
port : ports . PORTAND50 ,
2942
2951
host : 'localhost' ,
2943
2952
clean : false ,
@@ -2963,13 +2972,14 @@ module.exports = function (server, config) {
2963
2972
var client = { }
2964
2973
var incomingStore = new mqtt . Store ( { clean : false } )
2965
2974
var outgoingStore = new mqtt . Store ( { clean : false } )
2966
- var server2 = new MqttServer ( function ( serverClient ) {
2975
+ var server2 = serverBuilder ( config . protocol , function ( serverClient ) {
2967
2976
// errors are not interesting for this test
2968
2977
// but they might happen on some platforms
2969
2978
serverClient . on ( 'error' , function ( ) { } )
2970
2979
2971
2980
serverClient . on ( 'connect' , function ( packet ) {
2972
- serverClient . connack ( { returnCode : 0 } )
2981
+ var connack = version === 5 ? { reasonCode : 0 } : { returnCode : 0 }
2982
+ serverClient . connack ( connack )
2973
2983
} )
2974
2984
serverClient . on ( 'publish' , function ( packet ) {
2975
2985
serverClient . puback ( { messageId : packet . messageId } )
@@ -3003,7 +3013,7 @@ module.exports = function (server, config) {
3003
3013
} )
3004
3014
3005
3015
server2 . listen ( ports . PORTAND50 , function ( ) {
3006
- client = mqtt . connect ( {
3016
+ client = connect ( {
3007
3017
port : ports . PORTAND50 ,
3008
3018
host : 'localhost' ,
3009
3019
clean : false ,
@@ -3105,7 +3115,7 @@ module.exports = function (server, config) {
3105
3115
} )
3106
3116
3107
3117
it ( 'should resubscribe even if disconnect is before suback' , function ( done ) {
3108
- var client = mqtt . connect ( Object . assign ( { reconnectPeriod : 100 } , config ) )
3118
+ var client = connect ( Object . assign ( { reconnectPeriod : 100 } , config ) )
3109
3119
var subscribeCount = 0
3110
3120
var connectCount = 0
3111
3121
@@ -3136,7 +3146,7 @@ module.exports = function (server, config) {
3136
3146
} )
3137
3147
3138
3148
it ( 'should resubscribe exactly once' , function ( done ) {
3139
- var client = mqtt . connect ( Object . assign ( { reconnectPeriod : 100 } , config ) )
3149
+ var client = connect ( Object . assign ( { reconnectPeriod : 100 } , config ) )
3140
3150
var subscribeCount = 0
3141
3151
3142
3152
server . on ( 'client' , function ( serverClient ) {
0 commit comments