diff options
author | Richard Worth <rdworth@gmail.com> | 2009-08-10 09:38:14 +0000 |
---|---|---|
committer | Richard Worth <rdworth@gmail.com> | 2009-08-10 09:38:14 +0000 |
commit | 57e359511507fd153e0ec72032dafbb62cbf93b4 (patch) | |
tree | 34891a3890b850a64ec0d6b84c065920a6d25038 /tests | |
parent | 7c17d17406596bceefcaed887169b1cbc58b37a8 (diff) | |
download | jquery-ui-57e359511507fd153e0ec72032dafbb62cbf93b4.tar.gz jquery-ui-57e359511507fd153e0ec72032dafbb62cbf93b4.zip |
Removed jquery.simulate from external/ as it's being removed from jqueryjs.googlecode.com/svn/trunk/plugins
Diffstat (limited to 'tests')
-rw-r--r-- | tests/jquery.simulate.js | 150 | ||||
-rw-r--r-- | tests/unit/accordion/accordion.html | 2 | ||||
-rw-r--r-- | tests/unit/all/all.html | 2 | ||||
-rw-r--r-- | tests/unit/all/all_2.html | 2 | ||||
-rw-r--r-- | tests/unit/core/core.html | 2 | ||||
-rw-r--r-- | tests/unit/datepicker/datepicker.html | 2 | ||||
-rw-r--r-- | tests/unit/defaults.html | 2 | ||||
-rw-r--r-- | tests/unit/dialog/dialog.html | 2 | ||||
-rw-r--r-- | tests/unit/draggable/draggable.html | 2 | ||||
-rw-r--r-- | tests/unit/droppable/droppable.html | 2 | ||||
-rw-r--r-- | tests/unit/index.html | 2 | ||||
-rw-r--r-- | tests/unit/progressbar/progressbar.html | 2 | ||||
-rw-r--r-- | tests/unit/resizable/resizable.html | 2 | ||||
-rw-r--r-- | tests/unit/selectable/selectable.html | 2 | ||||
-rw-r--r-- | tests/unit/slider/slider.html | 2 | ||||
-rw-r--r-- | tests/unit/sortable/sortable.html | 2 | ||||
-rw-r--r-- | tests/unit/tabs/tabs.html | 2 |
17 files changed, 166 insertions, 16 deletions
diff --git a/tests/jquery.simulate.js b/tests/jquery.simulate.js new file mode 100644 index 000000000..939320668 --- /dev/null +++ b/tests/jquery.simulate.js @@ -0,0 +1,150 @@ +/*
+ * jquery.simulate - simulate browser mouse and keyboard events
+ *
+ * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT (MIT-LICENSE.txt)
+ * and GPL (GPL-LICENSE.txt) licenses.
+ *
+ */
+
+;(function($) {
+
+$.fn.extend({
+ simulate: function(type, options) {
+ return this.each(function() {
+ var opt = $.extend({}, $.simulate.defaults, options || {});
+ new $.simulate(this, type, opt);
+ });
+ }
+});
+
+$.simulate = function(el, type, options) {
+ this.target = el;
+ this.options = options;
+
+ if (/^drag$/.test(type)) {
+ this[type].apply(this, [this.target, options]);
+ } else {
+ this.simulateEvent(el, type, options);
+ }
+}
+
+$.extend($.simulate.prototype, {
+ simulateEvent: function(el, type, options) {
+ var evt = this.createEvent(type, options);
+ this.dispatchEvent(el, type, evt, options);
+ return evt;
+ },
+ createEvent: function(type, options) {
+ if (/^mouse(over|out|down|up|move)|(dbl)?click$/.test(type)) {
+ return this.mouseEvent(type, options);
+ } else if (/^key(up|down|press)$/.test(type)) {
+ return this.keyboardEvent(type, options);
+ }
+ },
+ mouseEvent: function(type, options) {
+ var evt;
+ var e = $.extend({
+ bubbles: true, cancelable: (type != "mousemove"), view: window, detail: 0,
+ screenX: 0, screenY: 0, clientX: 0, clientY: 0,
+ ctrlKey: false, altKey: false, shiftKey: false, metaKey: false,
+ button: 0, relatedTarget: undefined
+ }, options);
+
+ var relatedTarget = $(e.relatedTarget)[0];
+
+ if ($.isFunction(document.createEvent)) {
+ evt = document.createEvent("MouseEvents");
+ evt.initMouseEvent(type, e.bubbles, e.cancelable, e.view, e.detail,
+ e.screenX, e.screenY, e.clientX, e.clientY,
+ e.ctrlKey, e.altKey, e.shiftKey, e.metaKey,
+ e.button, e.relatedTarget || document.body.parentNode);
+ } else if (document.createEventObject) {
+ evt = document.createEventObject();
+ $.extend(evt, e);
+ evt.button = { 0:1, 1:4, 2:2 }[evt.button] || evt.button;
+ }
+ return evt;
+ },
+ keyboardEvent: function(type, options) {
+ var evt;
+
+ var e = $.extend({ bubbles: true, cancelable: true, view: window,
+ ctrlKey: false, altKey: false, shiftKey: false, metaKey: false,
+ keyCode: 0, charCode: 0
+ }, options);
+
+ if ($.isFunction(document.createEvent)) {
+ try {
+ evt = document.createEvent("KeyEvents");
+ evt.initKeyEvent(type, e.bubbles, e.cancelable, e.view,
+ e.ctrlKey, e.altKey, e.shiftKey, e.metaKey,
+ e.keyCode, e.charCode);
+ } catch(err) {
+ evt = document.createEvent("Events");
+ evt.initEvent(type, e.bubbles, e.cancelable);
+ $.extend(evt, { view: e.view,
+ ctrlKey: e.ctrlKey, altKey: e.altKey, shiftKey: e.shiftKey, metaKey: e.metaKey,
+ keyCode: e.keyCode, charCode: e.charCode
+ });
+ }
+ } else if (document.createEventObject) {
+ evt = document.createEventObject();
+ $.extend(evt, e);
+ }
+ if ($.browser.msie || $.browser.opera) {
+ evt.keyCode = (e.charCode > 0) ? e.charCode : e.keyCode;
+ evt.charCode = undefined;
+ }
+ return evt;
+ },
+
+ dispatchEvent: function(el, type, evt) {
+ if (el.dispatchEvent) {
+ el.dispatchEvent(evt);
+ } else if (el.fireEvent) {
+ el.fireEvent('on' + type, evt);
+ }
+ return evt;
+ },
+
+ drag: function(el) {
+ var self = this, center = this.findCenter(this.target),
+ options = this.options, x = Math.floor(center.x), y = Math.floor(center.y),
+ dx = options.dx || 0, dy = options.dy || 0, target = this.target;
+ var coord = { clientX: x, clientY: y };
+ this.simulateEvent(target, "mousedown", coord);
+ coord = { clientX: x + 1, clientY: y + 1 };
+ this.simulateEvent(document, "mousemove", coord);
+ coord = { clientX: x + dx, clientY: y + dy };
+ this.simulateEvent(document, "mousemove", coord);
+ this.simulateEvent(document, "mousemove", coord);
+ this.simulateEvent(target, "mouseup", coord);
+ },
+ findCenter: function(el) {
+ var el = $(this.target), o = el.offset();
+ return {
+ x: o.left + el.outerWidth() / 2,
+ y: o.top + el.outerHeight() / 2
+ };
+ }
+});
+
+$.extend($.simulate, {
+ defaults: {
+ speed: 'sync'
+ },
+ VK_TAB: 9,
+ VK_ENTER: 13,
+ VK_ESC: 27,
+ VK_PGUP: 33,
+ VK_PGDN: 34,
+ VK_END: 35,
+ VK_HOME: 36,
+ VK_LEFT: 37,
+ VK_UP: 38,
+ VK_RIGHT: 39,
+ VK_DOWN: 40
+});
+
+})(jQuery);
diff --git a/tests/unit/accordion/accordion.html b/tests/unit/accordion/accordion.html index fbb3a85d0..c8d5aace8 100644 --- a/tests/unit/accordion/accordion.html +++ b/tests/unit/accordion/accordion.html @@ -10,7 +10,7 @@ <link type="text/css" href="../testsuite.css" rel="stylesheet" /> <script type="text/javascript" src="../testsuite.js"></script> <script type="text/javascript" src="../../../external/testrunner-r6343.js"></script> - <script type="text/javascript" src="../../../external/jquery.simulate-r6163.js"></script> + <script type="text/javascript" src="../../jquery.simulate.js"></script> <script type="text/javascript" src="accordion_core.js"></script> <script type="text/javascript" src="accordion_defaults.js"></script> diff --git a/tests/unit/all/all.html b/tests/unit/all/all.html index d29a887cd..e5e739eb0 100644 --- a/tests/unit/all/all.html +++ b/tests/unit/all/all.html @@ -19,8 +19,8 @@ <script type="text/javascript" src="../../../ui/ui.tabs.js"></script> <script type="text/javascript" src="../../../external/testrunner-r6343.js"></script> - <script type="text/javascript" src="../../../external/jquery.simulate-r6163.js"></script> <script type="text/javascript" src="../../../external/jquery.cookie-r6165.js"></script> + <script type="text/javascript" src="../../jquery.simulate.js"></script> <script type="text/javascript" src="../core/core.js"></script> <script type="text/javascript" src="../core/selector.js"></script> diff --git a/tests/unit/all/all_2.html b/tests/unit/all/all_2.html index fdd79a0d7..4cefb599e 100644 --- a/tests/unit/all/all_2.html +++ b/tests/unit/all/all_2.html @@ -52,8 +52,8 @@ <script type="text/javascript" src="../../../ui/ui.tabs.js"></script> <script type="text/javascript" src="../../../external/testrunner-r6343.js"></script> - <script type="text/javascript" src="../../../external/jquery.simulate-r6163.js"></script> <script type="text/javascript" src="../../../external/jquery.cookie-r6165.js"></script> + <script type="text/javascript" src="../../jquery.simulate.js"></script> <style type="text/css"> @import "../../../themes/base/ui.datepicker.css"; diff --git a/tests/unit/core/core.html b/tests/unit/core/core.html index 71d06b29a..308f22b84 100644 --- a/tests/unit/core/core.html +++ b/tests/unit/core/core.html @@ -9,7 +9,7 @@ <link type="text/css" href="../testsuite.css" rel="stylesheet" /> <script type="text/javascript" src="../testsuite.js"></script> <script type="text/javascript" src="../../../external/testrunner-r6343.js"></script> - <script type="text/javascript" src="../../../external/jquery.simulate-r6163.js"></script> + <script type="text/javascript" src="../../jquery.simulate.js"></script> <script type="text/javascript" src="core.js"></script> <script type="text/javascript" src="selector.js"></script> diff --git a/tests/unit/datepicker/datepicker.html b/tests/unit/datepicker/datepicker.html index 3bcf23bfe..917f43d5f 100644 --- a/tests/unit/datepicker/datepicker.html +++ b/tests/unit/datepicker/datepicker.html @@ -14,7 +14,7 @@ <link type="text/css" href="../testsuite.css" rel="stylesheet" /> <script type="text/javascript" src="../testsuite.js"></script> <script type="text/javascript" src="../../../external/testrunner-r6343.js"></script> - <script type="text/javascript" src="../../../external/jquery.simulate-r6163.js"></script> + <script type="text/javascript" src="../../jquery.simulate.js"></script> <script type="text/javascript" src="datepicker_core.js"></script> <script type="text/javascript" src="datepicker_defaults.js"></script> diff --git a/tests/unit/defaults.html b/tests/unit/defaults.html index 949f2b75d..9f7565541 100644 --- a/tests/unit/defaults.html +++ b/tests/unit/defaults.html @@ -20,8 +20,8 @@ <link type="text/css" href="testsuite.css" rel="stylesheet" /> <script type="text/javascript" src="testsuite.js"></script> <script type="text/javascript" src="../../external/testrunner-r6343.js"></script> - <script type="text/javascript" src="../../external/jquery.simulate-r6163.js"></script> <script type="text/javascript" src="../../external/jquery.cookie-r6165.js"></script> + <script type="text/javascript" src="../jquery.simulate.js"></script> <script type="text/javascript" src="draggable/draggable_defaults.js"></script> <script type="text/javascript" src="droppable/droppable_defaults.js"></script> diff --git a/tests/unit/dialog/dialog.html b/tests/unit/dialog/dialog.html index 796f6111f..4fd356187 100644 --- a/tests/unit/dialog/dialog.html +++ b/tests/unit/dialog/dialog.html @@ -12,7 +12,7 @@ <link type="text/css" href="../testsuite.css" rel="stylesheet" /> <script type="text/javascript" src="../testsuite.js"></script> <script type="text/javascript" src="../../../external/testrunner-r6343.js"></script> - <script type="text/javascript" src="../../../external/jquery.simulate-r6163.js"></script> + <script type="text/javascript" src="../../jquery.simulate.js"></script> <script type="text/javascript" src="dialog_core.js"></script> <script type="text/javascript" src="dialog_defaults.js"></script> diff --git a/tests/unit/draggable/draggable.html b/tests/unit/draggable/draggable.html index a6b2573af..a5ae27ff8 100644 --- a/tests/unit/draggable/draggable.html +++ b/tests/unit/draggable/draggable.html @@ -10,7 +10,7 @@ <link type="text/css" href="../testsuite.css" rel="stylesheet" /> <script type="text/javascript" src="../testsuite.js"></script> <script type="text/javascript" src="../../../external/testrunner-r6343.js"></script> - <script type="text/javascript" src="../../../external/jquery.simulate-r6163.js"></script> + <script type="text/javascript" src="../../jquery.simulate.js"></script> <script type="text/javascript" src="draggable_core.js"></script> <script type="text/javascript" src="draggable_defaults.js"></script> diff --git a/tests/unit/droppable/droppable.html b/tests/unit/droppable/droppable.html index 0b618b567..972c8b8ff 100644 --- a/tests/unit/droppable/droppable.html +++ b/tests/unit/droppable/droppable.html @@ -11,7 +11,7 @@ <link type="text/css" href="../testsuite.css" rel="stylesheet" /> <script type="text/javascript" src="../testsuite.js"></script> <script type="text/javascript" src="../../../external/testrunner-r6343.js"></script> - <script type="text/javascript" src="../../../external/jquery.simulate-r6163.js"></script> + <script type="text/javascript" src="../../jquery.simulate.js"></script> <script type="text/javascript" src="droppable_core.js"></script> <script type="text/javascript" src="droppable_defaults.js"></script> diff --git a/tests/unit/index.html b/tests/unit/index.html index a582beb1f..e5d3b3798 100644 --- a/tests/unit/index.html +++ b/tests/unit/index.html @@ -20,8 +20,8 @@ <script type="text/javascript" src="../../ui/ui.sortable.js"></script> <script type="text/javascript" src="../../ui/ui.tabs.js"></script> - <script type="text/javascript" src="../../external/jquery.simulate-r6163.js"></script> <script type="text/javascript" src="../../external/jquery.cookie-r6165.js"></script> + <script type="text/javascript" src="../jquery.simulate.js"></script> </head> <body> diff --git a/tests/unit/progressbar/progressbar.html b/tests/unit/progressbar/progressbar.html index c54bc6083..9306e836d 100644 --- a/tests/unit/progressbar/progressbar.html +++ b/tests/unit/progressbar/progressbar.html @@ -10,7 +10,7 @@ <link type="text/css" href="../testsuite.css" rel="stylesheet" /> <script type="text/javascript" src="../testsuite.js"></script> <script type="text/javascript" src="../../../external/testrunner-r6343.js"></script> - <script type="text/javascript" src="../../../external/jquery.simulate-r6163.js"></script> + <script type="text/javascript" src="../../jquery.simulate.js"></script> <script type="text/javascript" src="progressbar_core.js"></script> <script type="text/javascript" src="progressbar_defaults.js"></script> diff --git a/tests/unit/resizable/resizable.html b/tests/unit/resizable/resizable.html index 0fe59c39a..f5aba9a66 100644 --- a/tests/unit/resizable/resizable.html +++ b/tests/unit/resizable/resizable.html @@ -10,7 +10,7 @@ <link type="text/css" href="../testsuite.css" rel="stylesheet" /> <script type="text/javascript" src="../testsuite.js"></script> <script type="text/javascript" src="../../../external/testrunner-r6343.js"></script> - <script type="text/javascript" src="../../../external/jquery.simulate-r6163.js"></script> + <script type="text/javascript" src="../../jquery.simulate.js"></script> <script type="text/javascript" src="resizable_core.js"></script> <script type="text/javascript" src="resizable_defaults.js"></script> diff --git a/tests/unit/selectable/selectable.html b/tests/unit/selectable/selectable.html index c7045f278..f398eb237 100644 --- a/tests/unit/selectable/selectable.html +++ b/tests/unit/selectable/selectable.html @@ -10,7 +10,7 @@ <link type="text/css" href="../testsuite.css" rel="stylesheet" /> <script type="text/javascript" src="../testsuite.js"></script> <script type="text/javascript" src="../../../external/testrunner-r6343.js"></script> - <script type="text/javascript" src="../../../external/jquery.simulate-r6163.js"></script> + <script type="text/javascript" src="../../jquery.simulate.js"></script> <script type="text/javascript" src="selectable_core.js"></script> <script type="text/javascript" src="selectable_defaults.js"></script> diff --git a/tests/unit/slider/slider.html b/tests/unit/slider/slider.html index 261a7871d..c811cac0c 100644 --- a/tests/unit/slider/slider.html +++ b/tests/unit/slider/slider.html @@ -10,7 +10,7 @@ <link type="text/css" href="../testsuite.css" rel="stylesheet" /> <script type="text/javascript" src="../testsuite.js"></script> <script type="text/javascript" src="../../../external/testrunner-r6343.js"></script> - <script type="text/javascript" src="../../../external/jquery.simulate-r6163.js"></script> + <script type="text/javascript" src="../../jquery.simulate.js"></script> <script type="text/javascript" src="slider_core.js"></script> <script type="text/javascript" src="slider_defaults.js"></script> diff --git a/tests/unit/sortable/sortable.html b/tests/unit/sortable/sortable.html index 7417418ca..487771f32 100644 --- a/tests/unit/sortable/sortable.html +++ b/tests/unit/sortable/sortable.html @@ -10,7 +10,7 @@ <link type="text/css" href="../testsuite.css" rel="stylesheet" /> <script type="text/javascript" src="../testsuite.js"></script> <script type="text/javascript" src="../../../external/testrunner-r6343.js"></script> - <script type="text/javascript" src="../../../external/jquery.simulate-r6163.js"></script> + <script type="text/javascript" src="../../jquery.simulate.js"></script> <script type="text/javascript" src="sortable_core.js"></script> <script type="text/javascript" src="sortable_defaults.js"></script> diff --git a/tests/unit/tabs/tabs.html b/tests/unit/tabs/tabs.html index a7f7a0196..9adc938c7 100644 --- a/tests/unit/tabs/tabs.html +++ b/tests/unit/tabs/tabs.html @@ -10,8 +10,8 @@ <link type="text/css" href="../testsuite.css" rel="stylesheet" /> <script type="text/javascript" src="../testsuite.js"></script> <script type="text/javascript" src="../../../external/testrunner-r6343.js"></script> - <script type="text/javascript" src="../../../external/jquery.simulate-r6163.js"></script> <script type="text/javascript" src="../../../external/jquery.cookie-r6165.js"></script> + <script type="text/javascript" src="../../jquery.simulate.js"></script> <script type="text/javascript" src="tabs_core.js"></script> <script type="text/javascript" src="tabs_defaults.js"></script> |