define( [ "jquery", "./helper", "ui/widgets/droppable" ], function( $, testHelper ) { module("droppable: methods"); test("init", function() { expect( 5 ); $("
").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("option", "foo"); ok(true, "arbitrary option getter after init"); $("").droppable().droppable("option", "foo", "bar"); ok(true, "arbitrary option setter after init"); }); test("destroy", function() { expect( 4 ); $("").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"); var expected = $("").droppable(), actual = expected.droppable("destroy"); equal(actual, expected, "destroy is chainable"); }); test("enable", function() { expect(7); var el, expected, actual; el = $("#droppable1").droppable({ disabled: true }); testHelper.shouldNotDrop(); el.droppable("enable"); testHelper.shouldDrop(); equal(el.droppable("option", "disabled"), false, "disabled option getter"); el.droppable("destroy"); el.droppable({ disabled: true }); testHelper.shouldNotDrop(); el.droppable("option", "disabled", false); equal(el.droppable("option", "disabled"), false, "disabled option setter"); testHelper.shouldDrop(); expected = $("").droppable(), actual = expected.droppable("enable"); equal(actual, expected, "enable is chainable"); }); test( "disable", function( assert ) { expect( 10 ); var actual, expected, element = $( "#droppable1" ).droppable({ disabled: false }); testHelper.shouldDrop(); element.droppable( "disable" ); testHelper.shouldNotDrop(); equal( element.droppable( "option", "disabled" ), true, "disabled option getter" ); element.droppable( "destroy" ); element.droppable({ disabled: false }); testHelper.shouldDrop(); element.droppable( "option", "disabled", true ); assert.lacksClasses( element.droppable( "widget" ), "ui-state-disabled" ); ok( !element.droppable( "widget" ).attr( "aria-disabled" ), "element does not get aria-disabled" ); assert.hasClasses( element.droppable( "widget" ), "ui-droppable-disabled" ); equal( element.droppable( "option", "disabled" ), true, "disabled option setter" ); testHelper.shouldNotDrop(); expected = $( "" ).droppable(); actual = expected.droppable( "disable" ); equal( actual, expected, "disable is chainable" ); }); } );