@@ -41,11 +41,6 @@ describe('ParseLiveQueryServer', function() {
4141 // Mock matchesQuery
4242 var mockMatchesQuery = jasmine . createSpy ( 'matchesQuery' ) . and . returnValue ( true ) ;
4343 jasmine . mockLibrary ( '../src/LiveQuery/QueryTools' , 'matchesQuery' , mockMatchesQuery ) ;
44- // Mock tv4
45- var mockValidate = function ( ) {
46- return true ;
47- }
48- jasmine . mockLibrary ( 'tv4' , 'validate' , mockValidate ) ;
4944 // Mock ParsePubSub
5045 var mockParsePubSub = {
5146 createPublisher : function ( ) {
@@ -350,7 +345,8 @@ describe('ParseLiveQueryServer', function() {
350345
351346 // Check connect request
352347 var connectRequest = {
353- op : 'connect'
348+ op : 'connect' ,
349+ applicationId : '1'
354350 } ;
355351 // Trigger message event
356352 parseWebSocket . emit ( 'message' , connectRequest ) ;
@@ -370,7 +366,11 @@ describe('ParseLiveQueryServer', function() {
370366 parseLiveQueryServer . _onConnect ( parseWebSocket ) ;
371367
372368 // Check subscribe request
373- var subscribeRequest = '{"op":"subscribe"}' ;
369+ var subscribeRequest = JSON . stringify ( {
370+ op : 'subscribe' ,
371+ requestId : 1 ,
372+ query : { className : 'Test' , where : { } }
373+ } ) ;
374374 // Trigger message event
375375 parseWebSocket . emit ( 'message' , subscribeRequest ) ;
376376 // Make sure _handleSubscribe is called
@@ -390,7 +390,7 @@ describe('ParseLiveQueryServer', function() {
390390 parseLiveQueryServer . _onConnect ( parseWebSocket ) ;
391391
392392 // Check unsubscribe request
393- var unsubscribeRequest = '{"op":" unsubscribe"}' ;
393+ var unsubscribeRequest = JSON . stringify ( { op : ' unsubscribe' , requestId : 1 } ) ;
394394 // Trigger message event
395395 parseWebSocket . emit ( 'message' , unsubscribeRequest ) ;
396396 // Make sure _handleUnsubscribe is called
@@ -414,7 +414,11 @@ describe('ParseLiveQueryServer', function() {
414414 parseLiveQueryServer . _onConnect ( parseWebSocket ) ;
415415
416416 // Check updateRequest request
417- var updateRequest = '{"op":"update"}' ;
417+ var updateRequest = JSON . stringify ( {
418+ op : 'update' ,
419+ requestId : 1 ,
420+ query : { className : 'Test' , where : { } }
421+ } ) ;
418422 // Trigger message event
419423 parseWebSocket . emit ( 'message' , updateRequest ) ;
420424 // Make sure _handleUnsubscribe is called
@@ -428,6 +432,22 @@ describe('ParseLiveQueryServer', function() {
428432 expect ( parseLiveQueryServer . _handleSubscribe ) . toHaveBeenCalled ( ) ;
429433 } ) ;
430434
435+ it ( 'can set missing command message handler for a parseWebSocket' , function ( ) {
436+ var parseLiveQueryServer = new ParseLiveQueryServer ( 10 , 10 , { } ) ;
437+ // Make mock parseWebsocket
438+ var EventEmitter = require ( 'events' ) ;
439+ var parseWebSocket = new EventEmitter ( ) ;
440+ // Register message handlers for the parseWebSocket
441+ parseLiveQueryServer . _onConnect ( parseWebSocket ) ;
442+
443+ // Check invalid request
444+ var invalidRequest = '{}' ;
445+ // Trigger message event
446+ parseWebSocket . emit ( 'message' , invalidRequest ) ;
447+ var Client = require ( '../src/LiveQuery/Client' ) . Client ;
448+ expect ( Client . pushError ) . toHaveBeenCalled ( ) ;
449+ } ) ;
450+
431451 it ( 'can set unknown command message handler for a parseWebSocket' , function ( ) {
432452 var parseLiveQueryServer = new ParseLiveQueryServer ( 10 , 10 , { } ) ;
433453 // Make mock parseWebsocket
@@ -1193,7 +1213,6 @@ describe('ParseLiveQueryServer', function() {
11931213 jasmine . restoreLibrary ( '../src/LiveQuery/Subscription' , 'Subscription' ) ;
11941214 jasmine . restoreLibrary ( '../src/LiveQuery/QueryTools' , 'queryHash' ) ;
11951215 jasmine . restoreLibrary ( '../src/LiveQuery/QueryTools' , 'matchesQuery' ) ;
1196- jasmine . restoreLibrary ( 'tv4' , 'validate' ) ;
11971216 jasmine . restoreLibrary ( '../src/LiveQuery/ParsePubSub' , 'ParsePubSub' ) ;
11981217 jasmine . restoreLibrary ( '../src/LiveQuery/SessionTokenCache' , 'SessionTokenCache' ) ;
11991218 } ) ;
0 commit comments