/* * droppable unit tests */ (function($) { // // Droppable Test Helper Functions // var defaults = { accept: '*', activeClass: null, cssNamespace: "ui", disabled: false, greedy: false, hoverClass: null, scope: "default", tolerance: "intersect" }; var el, drg; function shouldBeDroppable() { ok(false, 'missing test - untested code is broken code'); } function shouldNotBeDroppable() { ok(false, 'missing test - untested code is broken code'); } // Droppable Tests module("droppable"); test("init", function() { expect(6); $("
").appendTo('body').droppable().remove(); ok(true, '.droppable() called on element'); $([]).droppable(); ok(true, '.droppable() called on empty collection'); $("").droppable(); ok(true, '.droppable() called on disconnected DOMElement'); $("").droppable().droppable("foo"); ok(true, 'arbitrary method called after init'); $("").droppable().data("foo.droppable"); ok(true, 'arbitrary option getter after init'); $("").droppable().data("foo.droppable", "bar"); ok(true, 'arbitrary option setter after init'); }); test("destroy", function() { expect(6); $("").appendTo('body').droppable().droppable("destroy").remove(); ok(true, '.droppable("destroy") called on element'); $([]).droppable().droppable("destroy"); ok(true, '.droppable("destroy") called on empty collection'); $("").droppable().droppable("destroy"); ok(true, '.droppable("destroy") called on disconnected DOMElement'); $("").droppable().droppable("destroy").droppable("foo"); ok(true, 'arbitrary method called after destroy'); $("").droppable().droppable("destroy").data("foo.droppable"); ok(true, 'arbitrary option getter after destroy'); $("").droppable().droppable("destroy").data("foo.droppable", "bar"); ok(true, 'arbitrary option setter after destroy'); }); test("enable", function() { expect(6); el = $("#droppable1").droppable({ disabled: true }); shouldNotBeDroppable(); el.droppable("enable"); shouldBeDroppable(); equals(el.data("disabled.droppable"), false, "disabled.droppable getter"); el.droppable("destroy"); el.droppable({ disabled: true }); shouldNotBeDroppable(); el.data("disabled.droppable", false); equals(el.data("disabled.droppable"), false, "disabled.droppable setter"); shouldBeDroppable(); }); test("disable", function() { expect(6); el = $("#droppable1").droppable({ disabled: false }); shouldBeDroppable(); el.droppable("disable"); shouldNotBeDroppable(); equals(el.data("disabled.droppable"), true, "disabled.droppable getter"); el.droppable("destroy"); el.droppable({ disabled: false }); shouldBeDroppable(); el.data("disabled.droppable", true); equals(el.data("disabled.droppable"), true, "disabled.droppable setter"); shouldNotBeDroppable(); }); 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("