diff options
Diffstat (limited to 'node_modules/delegate/test/delegate.js')
| -rw-r--r-- | node_modules/delegate/test/delegate.js | 116 |
1 files changed, 0 insertions, 116 deletions
diff --git a/node_modules/delegate/test/delegate.js b/node_modules/delegate/test/delegate.js deleted file mode 100644 index 669738f6..00000000 --- a/node_modules/delegate/test/delegate.js +++ /dev/null @@ -1,116 +0,0 @@ -var delegate = require('../src/delegate'); -var simulant = require('simulant'); - -describe('delegate', function() { - before(function() { - var html = '<ul>' + - '<li><a>Item 1</a></li>' + - '<li><a>Item 2</a></li>' + - '<li><a>Item 3</a></li>' + - '<li><a>Item 4</a></li>' + - '<li><a>Item 5</a></li>' + - '</ul>'; - - document.body.innerHTML += html; - - global.container = document.querySelector('ul'); - global.anchor = document.querySelector('a'); - - global.spy = sinon.spy(global.container, 'removeEventListener'); - }); - - after(function() { - global.spy.restore(); - document.body.innerHTML = ''; - }); - - it('should add an event listener', function(done) { - delegate(global.container, 'a', 'click', function() { - done(); - }); - - simulant.fire(global.anchor, simulant('click')); - }); - - it('should remove an event listener', function() { - var delegation = delegate(global.container, 'a', 'click', function() {}); - - delegation.destroy(); - assert.ok(global.spy.calledOnce); - }); - - it('should use `document` if the element is unspecified', function(done) { - delegate('a', 'click', function() { - done(); - }); - - simulant.fire(global.anchor, simulant('click')); - }); - - it('should remove an event listener the unspecified base (`document`)', function() { - var delegation = delegate('a', 'click', function() {}); - var spy = sinon.spy(document, 'removeEventListener'); - - delegation.destroy(); - assert.ok(spy.calledOnce); - - spy.restore(); - }); - - it('should add event listeners to all the elements in a base selector', function() { - var spy = sinon.spy(); - delegate('li', 'a', 'click', spy); - - var anchors = document.querySelectorAll('a'); - simulant.fire(anchors[0], simulant('click')); - simulant.fire(anchors[1], simulant('click')); - assert.ok(spy.calledTwice); - }); - - it('should remove the event listeners from all the elements in a base selector', function() { - var items = document.querySelectorAll('li') - var spies = Array.prototype.map.call(items, function (li) { - return sinon.spy(li, 'removeEventListener'); - }); - - var delegations = delegate('li', 'a', 'click', function() {}); - delegations.forEach(function (delegation) { - delegation.destroy(); - }); - - spies.every(function (spy) { - var success = spy.calledOnce; - spy.restore(); - return success; - }); - }); - - it('should add event listeners to all the elements in a base array', function() { - var spy = sinon.spy(); - var items = document.querySelectorAll('li') - delegate(items, 'a', 'click', spy); - - var anchors = document.querySelectorAll('a') - simulant.fire(anchors[0], simulant('click')); - simulant.fire(anchors[1], simulant('click')); - assert.ok(spy.calledTwice); - }); - - it('should remove the event listeners from all the elements in a base array', function() { - var items = document.querySelectorAll('li') - var spies = Array.prototype.map.call(items, function (li) { - return sinon.spy(li, 'removeEventListener'); - }); - - var delegations = delegate(items, 'a', 'click', function() {}); - delegations.forEach(function (delegation) { - delegation.destroy(); - }); - - spies.every(function (spy) { - var success = spy.calledOnce; - spy.restore(); - return success; - }); - }); -}); |
