diff options
-rw-r--r-- | tests/unit/dialog/dialog_methods.js | 12 | ||||
-rw-r--r-- | ui/jquery.ui.dialog.js | 5 |
2 files changed, 15 insertions, 2 deletions
diff --git a/tests/unit/dialog/dialog_methods.js b/tests/unit/dialog/dialog_methods.js index e6ffb14d6..7826979fc 100644 --- a/tests/unit/dialog/dialog_methods.js +++ b/tests/unit/dialog/dialog_methods.js @@ -68,14 +68,22 @@ test("enable", function() { var expected = $('<div></div>').dialog(), actual = expected.dialog('enable'); equals(actual, expected, 'enable is chainable'); - ok(false, 'missing test - untested code is broken code'); + + el = $('<div></div>').dialog({ disabled: true }); + el.dialog('enable'); + equals(el.dialog('option', 'disabled'), false, 'enable method sets disabled option to false'); + ok(!el.parents('.ui-dialog').hasClass('ui-dialog-disabled'), 'enable method removes ui-dialog-disabled class from ui-dialog element'); }); test("disable", function() { var expected = $('<div></div>').dialog(), actual = expected.dialog('disable'); equals(actual, expected, 'disable is chainable'); - ok(false, 'missing test - untested code is broken code'); + + el = $('<div></div>').dialog({ disabled: false }); + el.dialog('disable'); + equals(el.dialog('option', 'disabled'), true, 'disable method sets disabled option to true'); + ok(el.parents('.ui-dialog').hasClass('ui-dialog-disabled'), 'disable method adds ui-dialog-disabled class to ui-dialog element'); }); test("close", function() { diff --git a/ui/jquery.ui.dialog.js b/ui/jquery.ui.dialog.js index 07d1defb1..ddeeda7c6 100644 --- a/ui/jquery.ui.dialog.js +++ b/ui/jquery.ui.dialog.js @@ -442,6 +442,11 @@ $.widget("ui.dialog", { .removeClass(self.options.dialogClass) .addClass(uiDialogClasses + value); break; + case "disabled": + (value + ? uiDialog.addClass('ui-dialog-disabled') + : uiDialog.removeClass('ui-dialog-disabled')); + break; case "draggable": (value ? self._makeDraggable() |