@@ -947,6 +947,31 @@ describe('jqLite', function() {
947
947
} ) ;
948
948
949
949
950
+ it ( 'should deregister all listeners for types separated by spaces' , function ( ) {
951
+ var aElem = jqLite ( a ) ,
952
+ clickSpy = jasmine . createSpy ( 'click' ) ,
953
+ mouseoverSpy = jasmine . createSpy ( 'mouseover' ) ;
954
+
955
+ aElem . on ( 'click' , clickSpy ) ;
956
+ aElem . on ( 'mouseover' , mouseoverSpy ) ;
957
+
958
+ browserTrigger ( a , 'click' ) ;
959
+ expect ( clickSpy ) . toHaveBeenCalledOnce ( ) ;
960
+ browserTrigger ( a , 'mouseover' ) ;
961
+ expect ( mouseoverSpy ) . toHaveBeenCalledOnce ( ) ;
962
+
963
+ clickSpy . reset ( ) ;
964
+ mouseoverSpy . reset ( ) ;
965
+
966
+ aElem . off ( 'click mouseover' ) ;
967
+
968
+ browserTrigger ( a , 'click' ) ;
969
+ expect ( clickSpy ) . not . toHaveBeenCalled ( ) ;
970
+ browserTrigger ( a , 'mouseover' ) ;
971
+ expect ( mouseoverSpy ) . not . toHaveBeenCalled ( ) ;
972
+ } ) ;
973
+
974
+
950
975
it ( 'should deregister specific listener' , function ( ) {
951
976
var aElem = jqLite ( a ) ,
952
977
clickSpy1 = jasmine . createSpy ( 'click1' ) ,
@@ -974,6 +999,32 @@ describe('jqLite', function() {
974
999
browserTrigger ( a , 'click' ) ;
975
1000
expect ( clickSpy2 ) . not . toHaveBeenCalled ( ) ;
976
1001
} ) ;
1002
+
1003
+
1004
+ it ( 'should deregister specific listener for multiple types separated by spaces' , function ( ) {
1005
+ var aElem = jqLite ( a ) ,
1006
+ masterSpy = jasmine . createSpy ( 'master' ) ,
1007
+ extraSpy = jasmine . createSpy ( 'extra' ) ;
1008
+
1009
+ aElem . on ( 'click' , masterSpy ) ;
1010
+ aElem . on ( 'click' , extraSpy ) ;
1011
+ aElem . on ( 'mouseover' , masterSpy ) ;
1012
+
1013
+ browserTrigger ( a , 'click' ) ;
1014
+ browserTrigger ( a , 'mouseover' ) ;
1015
+ expect ( masterSpy . callCount ) . toBe ( 2 ) ;
1016
+ expect ( extraSpy ) . toHaveBeenCalledOnce ( ) ;
1017
+
1018
+ masterSpy . reset ( ) ;
1019
+ extraSpy . reset ( ) ;
1020
+
1021
+ aElem . off ( 'click mouseover' , masterSpy ) ;
1022
+
1023
+ browserTrigger ( a , 'click' ) ;
1024
+ browserTrigger ( a , 'mouseover' ) ;
1025
+ expect ( masterSpy ) . not . toHaveBeenCalled ( ) ;
1026
+ expect ( extraSpy ) . toHaveBeenCalledOnce ( ) ;
1027
+ } ) ;
977
1028
} ) ;
978
1029
979
1030
0 commit comments