From 3eaf9daacaefa5f9f3ac469e4136c9f12cad5b9e Mon Sep 17 00:00:00 2001 From: Richard Worth Date: Wed, 27 Jan 2010 10:31:17 +0000 Subject: Deprecated beforeclose option instead of removing it for now, fixes reopened #4669 - Dialog: beforeclose option should be beforeClose. --- tests/unit/dialog/dialog_events.js | 46 +++++++++++++++++++++++++++++++++++++- 1 file changed, 45 insertions(+), 1 deletion(-) (limited to 'tests/unit') diff --git a/tests/unit/dialog/dialog_events.js b/tests/unit/dialog/dialog_events.js index c60e47f22..a0ff2abce 100644 --- a/tests/unit/dialog/dialog_events.js +++ b/tests/unit/dialog/dialog_events.js @@ -186,8 +186,40 @@ test("close", function() { el.remove(); }); +//handling of deprecated beforeclose (vs beforeClose) option +//Ticket #4669 http://dev.jqueryui.com/ticket/4669 +//TODO: remove in 1.9pre +test("beforeclose", function() { + expect(10); + + el = $('
').dialog({ + beforeclose: function(ev, ui) { + ok(true, '.dialog("close") fires beforeClose callback'); + equals(this, el[0], "context of callback"); + equals(ev.type, 'dialogbeforeclose', 'event type in callback'); + same(ui, {}, 'ui hash in callback'); + return false; + } + }); + el.dialog('close'); + isOpen('beforeclose (deprecated) callback should prevent dialog from closing'); + el.remove(); + + el = $('
').dialog(); + el.dialog('option', 'beforeclose', function(ev, ui) { + ok(true, '.dialog("close") fires beforeClose callback'); + equals(this, el[0], "context of callback"); + equals(ev.type, 'dialogbeforeclose', 'event type in callback'); + same(ui, {}, 'ui hash in callback'); + return false; + }); + el.dialog('close'); + isOpen('beforeclose (deprecated) callback should prevent dialog from closing'); + el.remove(); +}); + test("beforeClose", function() { - expect(9); + expect(14); el = $('
').dialog({ beforeClose: function(ev, ui) { @@ -202,6 +234,18 @@ test("beforeClose", function() { isOpen('beforeClose callback should prevent dialog from closing'); el.remove(); + el = $('
').dialog(); + el.dialog('option', 'beforeClose', function(ev, ui) { + ok(true, '.dialog("close") fires beforeClose callback'); + equals(this, el[0], "context of callback"); + equals(ev.type, 'dialogbeforeclose', 'event type in callback'); + same(ui, {}, 'ui hash in callback'); + return false; + }); + el.dialog('close'); + isOpen('beforeClose callback should prevent dialog from closing'); + el.remove(); + el = $('
').dialog().bind('dialogbeforeclose', function(ev, ui) { ok(true, '.dialog("close") triggers dialogbeforeclose event'); equals(this, el[0], "context of event"); -- cgit v1.2.3