aboutsummaryrefslogtreecommitdiffstats
path: root/test/jqLiteSpec.js
diff options
context:
space:
mode:
authorAndy Joslin2013-07-17 11:36:09 -0400
committerIgor Minar2013-07-31 14:23:35 -0700
commitbdd4e982b7fee9811b40b545c21a74711686875c (patch)
tree77c1c98eca11ac8349ad9d360ebee1377dd8f938 /test/jqLiteSpec.js
parentf274c0a66b28711d3b9cc7b0775e97755dd971e8 (diff)
downloadangular.js-bdd4e982b7fee9811b40b545c21a74711686875c.tar.bz2
fix(jqLite): support space-seperated events in off
Closes #3256
Diffstat (limited to 'test/jqLiteSpec.js')
-rw-r--r--test/jqLiteSpec.js51
1 files changed, 51 insertions, 0 deletions
diff --git a/test/jqLiteSpec.js b/test/jqLiteSpec.js
index 92ccc2a8..e74c09a5 100644
--- a/test/jqLiteSpec.js
+++ b/test/jqLiteSpec.js
@@ -947,6 +947,31 @@ describe('jqLite', function() {
});
+ it('should deregister all listeners for types separated by spaces', function() {
+ var aElem = jqLite(a),
+ clickSpy = jasmine.createSpy('click'),
+ mouseoverSpy = jasmine.createSpy('mouseover');
+
+ aElem.on('click', clickSpy);
+ aElem.on('mouseover', mouseoverSpy);
+
+ browserTrigger(a, 'click');
+ expect(clickSpy).toHaveBeenCalledOnce();
+ browserTrigger(a, 'mouseover');
+ expect(mouseoverSpy).toHaveBeenCalledOnce();
+
+ clickSpy.reset();
+ mouseoverSpy.reset();
+
+ aElem.off('click mouseover');
+
+ browserTrigger(a, 'click');
+ expect(clickSpy).not.toHaveBeenCalled();
+ browserTrigger(a, 'mouseover');
+ expect(mouseoverSpy).not.toHaveBeenCalled();
+ });
+
+
it('should deregister specific listener', function() {
var aElem = jqLite(a),
clickSpy1 = jasmine.createSpy('click1'),
@@ -974,6 +999,32 @@ describe('jqLite', function() {
browserTrigger(a, 'click');
expect(clickSpy2).not.toHaveBeenCalled();
});
+
+
+ it('should deregister specific listener for multiple types separated by spaces', function() {
+ var aElem = jqLite(a),
+ masterSpy = jasmine.createSpy('master'),
+ extraSpy = jasmine.createSpy('extra');
+
+ aElem.on('click', masterSpy);
+ aElem.on('click', extraSpy);
+ aElem.on('mouseover', masterSpy);
+
+ browserTrigger(a, 'click');
+ browserTrigger(a, 'mouseover');
+ expect(masterSpy.callCount).toBe(2);
+ expect(extraSpy).toHaveBeenCalledOnce();
+
+ masterSpy.reset();
+ extraSpy.reset();
+
+ aElem.off('click mouseover', masterSpy);
+
+ browserTrigger(a, 'click');
+ browserTrigger(a, 'mouseover');
+ expect(masterSpy).not.toHaveBeenCalled();
+ expect(extraSpy).toHaveBeenCalledOnce();
+ });
});