test_jquery_plugin.js 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. var el, hammer, events;
  2. var jQueryPluginPath = '../../node_modules/jquery-hammerjs/jquery.hammer.js';
  3. module('jQuery plugin', {
  4. setup: function() {
  5. el = utils.createHitArea();
  6. events = {};
  7. },
  8. teardown: function() {
  9. hammer && hammer.destroy();
  10. }
  11. });
  12. asyncTest('trigger pan with jQuery', function() {
  13. expect(2);
  14. $.getScript(jQueryPluginPath, function() {
  15. jQuery(el).hammer();
  16. jQuery(el).bind('panstart pan panmove panright panend', function(ev) {
  17. if (ev.gesture) {
  18. events[ev.type] = true;
  19. }
  20. });
  21. Simulator.gestures.pan(el, { deltaX: 50, deltaY: 0 }, function() {
  22. start();
  23. deepEqual(events, {
  24. pan: true,
  25. panstart: true,
  26. panmove: true,
  27. panright: true,
  28. panend: true
  29. });
  30. ok(jQuery(el).data('hammer') instanceof Hammer.Manager, 'data attribute refers to the instance');
  31. });
  32. });
  33. });
  34. asyncTest('trigger pan without jQuery should still work', function() {
  35. expect(1);
  36. var hammer = Hammer(el);
  37. hammer.on('panstart pan panmove panright panend', function(ev) {
  38. events[ev.type] = true;
  39. });
  40. Simulator.gestures.pan(el, { deltaX: 50, deltaY: 0 }, function() {
  41. start();
  42. deepEqual(events, {
  43. pan: true,
  44. panstart: true,
  45. panmove: true,
  46. panright: true,
  47. panend: true
  48. });
  49. });
  50. });