summaryrefslogtreecommitdiffstats
path: root/ecomp-portal-FE/client/bower_components/jquery.event.drag-new/event.drag/test/handlers.js
diff options
context:
space:
mode:
Diffstat (limited to 'ecomp-portal-FE/client/bower_components/jquery.event.drag-new/event.drag/test/handlers.js')
-rw-r--r--ecomp-portal-FE/client/bower_components/jquery.event.drag-new/event.drag/test/handlers.js160
1 files changed, 160 insertions, 0 deletions
diff --git a/ecomp-portal-FE/client/bower_components/jquery.event.drag-new/event.drag/test/handlers.js b/ecomp-portal-FE/client/bower_components/jquery.event.drag-new/event.drag/test/handlers.js
new file mode 100644
index 00000000..799051ad
--- /dev/null
+++ b/ecomp-portal-FE/client/bower_components/jquery.event.drag-new/event.drag/test/handlers.js
@@ -0,0 +1,160 @@
+;(function(){
+
+ module("Event Handlers");
+
+ // a simple re-usable test harness object
+ var obj = {
+ init: function( opts ){
+ obj.$div = $('<div />')
+ .css({
+ position: 'absolute',
+ top: 0,
+ left: 0,
+ height: 100,
+ width: 100
+ })
+ .appendTo( document.body )
+ .bind("draginit dragstart drag dragend click", opts || {}, function( event ){
+ obj[ event.type ] += 1;
+ if ( obj.extra[ event.type ] )
+ obj.extra[ event.type ].apply( this, arguments );
+ return obj.returned[ event.type ];
+ });
+
+ $.extend( obj, { draginit:0, dragstart:0, drag:0, dragend:0, click:0 });
+ obj.extra = {};
+ obj.returned = {};
+ },
+ mouse: function(){
+ var start = {
+ pageX: Math.round( Math.random() * 90 ) + 5,
+ pageY: Math.round( Math.random() * 90 ) + 5
+ },
+ end = {
+ pageX: Math.round( Math.random() * 90 ) + start.pageX,
+ pageY: Math.round( Math.random() * 90 ) + start.pageY
+ };
+ // simulate a complete mouse drag
+ obj.$div
+ .fire("mousedown", start )
+ .fire("mousemove", end )
+ .fire("mouseup", end )
+ .fire("click", end );
+ },
+ done: function( ms ){
+ obj.$div.remove();
+ start();
+ }
+ };
+
+ // test DRAGINIT FALSE
+ asyncTest('"draginit" return false',function(){
+ expect( 5 );
+ // test prep
+ obj.init();
+ obj.returned['draginit'] = false;
+ // simulate a mouse drag
+ obj.mouse();
+ // check counts
+ equals( obj.draginit, 1, "draginit fired");
+ equals( obj.dragstart, 0, "dragstart did not fire");
+ equals( obj.drag, 0, "drag did not fire");
+ equals( obj.dragend, 0, "dragend did not fire");
+ equals( obj.click, 1, "click fired");
+ // continue
+ obj.done();
+ });
+
+ asyncTest('"dragstart" return false',function(){
+ expect( 5 );
+ // test prep
+ obj.init();
+ obj.returned['dragstart'] = false;
+ // simulate a mouse drag
+ obj.mouse();
+ // check counts
+ equals( obj.draginit, 1, "draginit fired");
+ equals( obj.dragstart, 1, "dragstart fired");
+ equals( obj.drag, 0, "drag did not fire");
+ equals( obj.dragend, 0, "dragend did not fire");
+ equals( obj.click, 1, "click fired");
+ // continue
+ obj.done();
+ });
+
+ asyncTest('"drag" return false',function(){
+ expect( 5 );
+ // test prep
+ obj.init();
+ obj.returned['drag'] = false;
+ // simulate a mouse drag
+ obj.mouse();
+ // check ocunts
+ equals( obj.draginit, 1, "draginit fired");
+ equals( obj.dragstart, 1, "dragstart fired");
+ equals( obj.drag, 1, "drag fired");
+ equals( obj.dragend, 1, "dragend fired");
+ equals( obj.click, 0, "click did not fire");
+ // continue
+ obj.done();
+ });
+
+ asyncTest('"draginit" return new element',function(){
+ expect( 8 );
+ // test prep
+ obj.init();
+ var $clone = obj.returned['draginit'] = obj.$div.clone( true );
+ obj.extra['dragstart'] = obj.extra['drag'] = obj.extra['dragend'] = function( ev, dd ){
+ ok( dd.drag === $clone[0], ev.type +' target element' );
+ };
+ // simulate a mouse drag
+ obj.mouse();
+ // check counts
+ equals( obj.draginit, 1, "draginit fired");
+ equals( obj.dragstart, 1, "dragstart fired");
+ equals( obj.drag, 1, "drag fired");
+ equals( obj.dragend, 1, "dragend fired");
+ equals( obj.click, 0, "click did not fire");
+ // continue
+ obj.done();
+ });
+
+ asyncTest('"draginit" return multiple elements',function(){
+ expect( 5 );
+ // test prep
+ obj.init();
+ obj.returned['draginit'] = obj.$div.clone( true ).add( obj.$div );
+ // simulate a mouse drag
+ obj.mouse();
+ // check counts
+ equals( obj.draginit, 1, "draginit fired once");
+ equals( obj.dragstart, 2, "dragstart fired twice");
+ equals( obj.drag, 2, "drag fired twice");
+ equals( obj.dragend, 2, "dragend fired twice");
+ equals( obj.click, 0, "click did not fire");
+ // continue
+ obj.done();
+ });
+
+
+ asyncTest('"dragstart" return proxy element',function(){
+ expect( 7 );
+ // test prep
+ obj.init();
+ var $proxy = obj.returned['dragstart'] = obj.$div.clone().addClass('proxy');
+ obj.extra['drag'] = obj.extra['dragend'] = function( ev, dd ){
+ ok( dd.proxy === $proxy[0], ev.type +' proxy element' );
+ };
+ // simulate a mouse drag
+ obj.mouse();
+ // check counts
+ equals( obj.draginit, 1, "draginit");
+ equals( obj.dragstart, 1, "dragstart");
+ equals( obj.drag, 1, "drag");
+ equals( obj.dragend, 1, "dragend");
+ equals( obj.click, 0, "click did not fire");
+ // continue
+ obj.done();
+ });
+
+})(); \ No newline at end of file