test_events.js 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. module('eventEmitter');
  2. test('test the eventemitter', function() {
  3. expect(6);
  4. var ee = new Hammer.Manager(utils.createHitArea());
  5. var inputData = {
  6. target: document.body,
  7. srcEvent: {
  8. preventDefault: function() {
  9. ok(true, 'preventDefault ref');
  10. },
  11. target: document.body
  12. }
  13. };
  14. function event3Handler() {
  15. ok(true, 'emitted event3');
  16. }
  17. ee.on('testEvent1', function() {
  18. ok(true, 'emitted event');
  19. });
  20. ee.on('testEvent2', function(ev) {
  21. ok(true, 'emitted event');
  22. ev.preventDefault();
  23. ok(ev.target === document.body, 'target is the body');
  24. });
  25. ee.on('testEvent3', event3Handler);
  26. ee.emit('testEvent1', inputData);
  27. ee.emit('testEvent2', inputData);
  28. ee.emit('testEvent3', inputData);
  29. // unbind testEvent2
  30. ee.off('testEvent2');
  31. ee.off('testEvent3', event3Handler);
  32. ee.emit('testEvent1', inputData); // should trigger testEvent1 again
  33. ee.emit('testEvent2', inputData); // doenst trigger a thing
  34. ee.emit('testEvent3', inputData); // doenst trigger a thing
  35. // destroy
  36. ee.destroy();
  37. ee.emit('testEvent1', inputData); // doenst trigger a thing
  38. ee.emit('testEvent2', inputData); // doenst trigger a thing
  39. ee.emit('testEvent3', inputData); // doenst trigger a thing
  40. });
  41. /*
  42. * Hammer.Manager.off method : exception handling
  43. */
  44. test("When Hammer.Manager didn't attach an event, 'off' method is ignored", function() {
  45. var count = 0;
  46. hammer = new Hammer(el, { inputTarget: document.body });
  47. hammer.off("swipeleft", function(e) {
  48. count++;
  49. });
  50. ok(true, "nothing");
  51. });