From c42164097caca488ac1b1761a6678793f2c3322f Mon Sep 17 00:00:00 2001 From: Richard Worth Date: Mon, 2 Feb 2009 06:34:44 +0000 Subject: draggable unit tests: cleanup --- tests/unit/draggable/defaults.js | 61 ------------------------- tests/unit/draggable/draggable.html | 3 +- tests/unit/draggable/draggable.js | 71 ------------------------------ tests/unit/draggable/draggable_core.js | 71 ++++++++++++++++++++++++++++++ tests/unit/draggable/draggable_defaults.js | 42 +++++++++++++----- tests/unit/draggable/draggable_tickets.js | 4 -- 6 files changed, 102 insertions(+), 150 deletions(-) delete mode 100644 tests/unit/draggable/defaults.js delete mode 100644 tests/unit/draggable/draggable.js create mode 100644 tests/unit/draggable/draggable_core.js (limited to 'tests') diff --git a/tests/unit/draggable/defaults.js b/tests/unit/draggable/defaults.js deleted file mode 100644 index 46f208f5e..000000000 --- a/tests/unit/draggable/defaults.js +++ /dev/null @@ -1,61 +0,0 @@ -/* - * draggable_defaults.js - */ - -var draggable_defaults = { - - appendTo: "parent", - - axis: false, - - cancel: ":input,option", - - connectToSortable: false, - - containment: false, - - cursor: "auto", - - cursorAt: false, - - delay: 0, - - disabled: false, - - distance: 1, - - grid: false, - - handle: false, - - helper: "original", - - iframeFix: false, - - opacity: false, - - refreshPositions: false, - - revert: false, - - revertDuration: 500, - - scroll: true, - - scrollSensitivity: 20, - - scrollSpeed: 20, - - scope: "default", - - snap: false, - - snapMode: "both", - - snapTolerance: 20, - - stack: false, - - zIndex: false - -}; diff --git a/tests/unit/draggable/draggable.html b/tests/unit/draggable/draggable.html index 57918f2d4..2fd541b39 100644 --- a/tests/unit/draggable/draggable.html +++ b/tests/unit/draggable/draggable.html @@ -12,8 +12,7 @@ - - + diff --git a/tests/unit/draggable/draggable.js b/tests/unit/draggable/draggable.js deleted file mode 100644 index ab3b36c4e..000000000 --- a/tests/unit/draggable/draggable.js +++ /dev/null @@ -1,71 +0,0 @@ -/* - * draggable unit tests - */ - -// -// Draggable Test Helper Functions -// - -var el, offsetBefore, offsetAfter, dragged; - -var drag = function(handle, dx, dy) { - var element = el.data("draggable").element; - offsetBefore = el.offset(); - $(handle).simulate("drag", { - dx: dx || 0, - dy: dy || 0 - }); - dragged = { dx: dx, dy: dy }; - offsetAfter = el.offset(); -} - -var moved = function (dx, dy, msg) { - msg = msg ? msg + "." : ""; - var actual = { left: offsetAfter.left, top: offsetAfter.top }; - var expected = { left: offsetBefore.left + dx, top: offsetBefore.top + dy }; - same(actual, expected, 'dragged[' + dragged.dx + ', ' + dragged.dy + '] ' + msg); -} - -function restoreScroll(what) { - if(what) { - $(document).scrollTop(0); $(document).scrollLeft(0); - } else { - $("#main")[0].scrollTop = 0; $("#main")[0].scrollLeft = 0; - } -} - -(function($) { - -module("draggable"); - -test("element types", function() { - var typeNames = ('p,h1,h2,h3,h4,h5,h6,blockquote,ol,ul,dl,div,form' - + ',table,fieldset,address,ins,del,em,strong,q,cite,dfn,abbr' - + ',acronym,code,samp,kbd,var,img,object,hr' - + ',input,button,label,select,iframe').split(','); - - $.each(typeNames, function(i) { - var typeName = typeNames[i]; - el = $(document.createElement(typeName)).appendTo('body'); - (typeName == 'table' && el.append("content")); - el.draggable({ cancel: '' }); - drag(el, 50, 50); - moved(50, 50, "<" + typeName + ">"); - el.draggable("destroy"); - el.remove(); - }); -}); - -test("No options, relative", function() { - el = $("#draggable1").draggable(); - drag(el, 50, 50); - moved(50, 50); -}); - -test("No options, absolute", function() { - el = $("#draggable2").draggable(); - drag(el, 50, 50); - moved(50, 50); -}); - -})(jQuery); diff --git a/tests/unit/draggable/draggable_core.js b/tests/unit/draggable/draggable_core.js new file mode 100644 index 000000000..ab3b36c4e --- /dev/null +++ b/tests/unit/draggable/draggable_core.js @@ -0,0 +1,71 @@ +/* + * draggable unit tests + */ + +// +// Draggable Test Helper Functions +// + +var el, offsetBefore, offsetAfter, dragged; + +var drag = function(handle, dx, dy) { + var element = el.data("draggable").element; + offsetBefore = el.offset(); + $(handle).simulate("drag", { + dx: dx || 0, + dy: dy || 0 + }); + dragged = { dx: dx, dy: dy }; + offsetAfter = el.offset(); +} + +var moved = function (dx, dy, msg) { + msg = msg ? msg + "." : ""; + var actual = { left: offsetAfter.left, top: offsetAfter.top }; + var expected = { left: offsetBefore.left + dx, top: offsetBefore.top + dy }; + same(actual, expected, 'dragged[' + dragged.dx + ', ' + dragged.dy + '] ' + msg); +} + +function restoreScroll(what) { + if(what) { + $(document).scrollTop(0); $(document).scrollLeft(0); + } else { + $("#main")[0].scrollTop = 0; $("#main")[0].scrollLeft = 0; + } +} + +(function($) { + +module("draggable"); + +test("element types", function() { + var typeNames = ('p,h1,h2,h3,h4,h5,h6,blockquote,ol,ul,dl,div,form' + + ',table,fieldset,address,ins,del,em,strong,q,cite,dfn,abbr' + + ',acronym,code,samp,kbd,var,img,object,hr' + + ',input,button,label,select,iframe').split(','); + + $.each(typeNames, function(i) { + var typeName = typeNames[i]; + el = $(document.createElement(typeName)).appendTo('body'); + (typeName == 'table' && el.append("content")); + el.draggable({ cancel: '' }); + drag(el, 50, 50); + moved(50, 50, "<" + typeName + ">"); + el.draggable("destroy"); + el.remove(); + }); +}); + +test("No options, relative", function() { + el = $("#draggable1").draggable(); + drag(el, 50, 50); + moved(50, 50); +}); + +test("No options, absolute", function() { + el = $("#draggable2").draggable(); + drag(el, 50, 50); + moved(50, 50); +}); + +})(jQuery); diff --git a/tests/unit/draggable/draggable_defaults.js b/tests/unit/draggable/draggable_defaults.js index 923c705b1..493ed9087 100644 --- a/tests/unit/draggable/draggable_defaults.js +++ b/tests/unit/draggable/draggable_defaults.js @@ -1,17 +1,35 @@ /* * draggable_defaults.js */ -(function($) { -module("draggable: defaults"); +var draggable_defaults = { + appendTo: "parent", + axis: false, + cancel: ":input,option", + connectToSortable: false, + containment: false, + cursor: "auto", + cursorAt: false, + delay: 0, + disabled: false, + distance: 1, + grid: false, + handle: false, + helper: "original", + iframeFix: false, + opacity: false, + refreshPositions: false, + revert: false, + revertDuration: 500, + scroll: true, + scrollSensitivity: 20, + scrollSpeed: 20, + scope: "default", + snap: false, + snapMode: "both", + snapTolerance: 20, + stack: false, + zIndex: false +}; -test("defaults", function() { - el = $('
').draggable(); - $.each(draggable_defaults, function(key, val) { - var actual = el.data(key + ".draggable"), expected = val; - same(actual, expected, key); - }); - el.remove(); -}); - -})(jQuery); +commonWidgetTests('draggable', { defaults: draggable_defaults }); diff --git a/tests/unit/draggable/draggable_tickets.js b/tests/unit/draggable/draggable_tickets.js index 049abe890..709e55104 100644 --- a/tests/unit/draggable/draggable_tickets.js +++ b/tests/unit/draggable/draggable_tickets.js @@ -5,8 +5,4 @@ module("draggable: tickets"); -test("#1234", function() { - -}); - })(jQuery); -- cgit v1.2.3