[24245] | 1 | /*
|
---|
| 2 | * dialog_methods.js
|
---|
| 3 | */
|
---|
| 4 | (function($) {
|
---|
| 5 |
|
---|
| 6 | module("dialog: methods", {
|
---|
| 7 | teardown: function() {
|
---|
| 8 | $("body>.ui-dialog").remove();
|
---|
| 9 | }
|
---|
| 10 | });
|
---|
| 11 |
|
---|
| 12 | test("init", function() {
|
---|
| 13 | expect(7);
|
---|
| 14 |
|
---|
| 15 | $("<div></div>").appendTo('body').dialog().remove();
|
---|
| 16 | ok(true, '.dialog() called on element');
|
---|
| 17 |
|
---|
| 18 | $([]).dialog().remove();
|
---|
| 19 | ok(true, '.dialog() called on empty collection');
|
---|
| 20 |
|
---|
| 21 | $('<div></div>').dialog().remove();
|
---|
| 22 | ok(true, '.dialog() called on disconnected DOMElement - never connected');
|
---|
| 23 |
|
---|
| 24 | $('<div></div>').appendTo('body').remove().dialog().remove();
|
---|
| 25 | ok(true, '.dialog() called on disconnected DOMElement - removed');
|
---|
| 26 |
|
---|
| 27 | $('<div></div>').dialog().dialog("foo").remove();
|
---|
| 28 | ok(true, 'arbitrary method called after init');
|
---|
| 29 |
|
---|
| 30 | el = $('<div></div>').dialog();
|
---|
| 31 | var foo = el.dialog("option", "foo");
|
---|
| 32 | el.remove();
|
---|
| 33 | ok(true, 'arbitrary option getter after init');
|
---|
| 34 |
|
---|
| 35 | $('<div></div>').dialog().dialog("option", "foo", "bar").remove();
|
---|
| 36 | ok(true, 'arbitrary option setter after init');
|
---|
| 37 | });
|
---|
| 38 |
|
---|
| 39 | test("destroy", function() {
|
---|
| 40 | $("<div></div>").appendTo('body').dialog().dialog("destroy").remove();
|
---|
| 41 | ok(true, '.dialog("destroy") called on element');
|
---|
| 42 |
|
---|
| 43 | $([]).dialog().dialog("destroy").remove();
|
---|
| 44 | ok(true, '.dialog("destroy") called on empty collection');
|
---|
| 45 |
|
---|
| 46 | $('<div></div>').dialog().dialog("destroy").remove();
|
---|
| 47 | ok(true, '.dialog("destroy") called on disconnected DOMElement');
|
---|
| 48 |
|
---|
| 49 | $('<div></div>').dialog().dialog("destroy").dialog("foo").remove();
|
---|
| 50 | ok(true, 'arbitrary method called after destroy');
|
---|
| 51 |
|
---|
| 52 | var expected = $('<div></div>').dialog(),
|
---|
| 53 | actual = expected.dialog('destroy');
|
---|
| 54 | equals(actual, expected, 'destroy is chainable');
|
---|
| 55 | });
|
---|
| 56 |
|
---|
| 57 | test("enable", function() {
|
---|
| 58 | var expected = $('<div></div>').dialog(),
|
---|
| 59 | actual = expected.dialog('enable');
|
---|
| 60 | equals(actual, expected, 'enable is chainable');
|
---|
| 61 |
|
---|
| 62 | el = $('<div></div>').dialog({ disabled: true });
|
---|
| 63 | el.dialog('enable');
|
---|
| 64 | equals(el.dialog('option', 'disabled'), false, 'enable method sets disabled option to false');
|
---|
| 65 | ok(!dlg().hasClass('ui-dialog-disabled'), 'enable method removes ui-dialog-disabled class from ui-dialog element');
|
---|
| 66 | });
|
---|
| 67 |
|
---|
| 68 | test("disable", function() {
|
---|
| 69 | var expected = $('<div></div>').dialog(),
|
---|
| 70 | actual = expected.dialog('disable');
|
---|
| 71 | equals(actual, expected, 'disable is chainable');
|
---|
| 72 |
|
---|
| 73 | el = $('<div></div>').dialog({ disabled: false });
|
---|
| 74 | el.dialog('disable');
|
---|
| 75 | equals(el.dialog('option', 'disabled'), true, 'disable method sets disabled option to true');
|
---|
| 76 | ok(dlg().hasClass('ui-dialog-disabled'), 'disable method adds ui-dialog-disabled class to ui-dialog element');
|
---|
| 77 | });
|
---|
| 78 |
|
---|
| 79 | test("close", function() {
|
---|
| 80 | var expected = $('<div></div>').dialog(),
|
---|
| 81 | actual = expected.dialog('close');
|
---|
| 82 | equals(actual, expected, 'close is chainable');
|
---|
| 83 |
|
---|
| 84 | el = $('<div></div>').dialog();
|
---|
| 85 | ok(dlg().is(':visible') && !dlg().is(':hidden'), 'dialog visible before close method called');
|
---|
| 86 | el.dialog('close');
|
---|
| 87 | ok(dlg().is(':hidden') && !dlg().is(':visible'), 'dialog hidden after close method called');
|
---|
| 88 | });
|
---|
| 89 |
|
---|
| 90 | test("isOpen", function() {
|
---|
| 91 | expect(4);
|
---|
| 92 |
|
---|
| 93 | el = $('<div></div>').dialog();
|
---|
| 94 | equals(el.dialog('isOpen'), true, "dialog is open after init");
|
---|
| 95 | el.dialog('close');
|
---|
| 96 | equals(el.dialog('isOpen'), false, "dialog is closed");
|
---|
| 97 | el.remove();
|
---|
| 98 |
|
---|
| 99 | el = $('<div></div>').dialog({autoOpen: false});
|
---|
| 100 | equals(el.dialog('isOpen'), false, "dialog is closed after init");
|
---|
| 101 | el.dialog('open');
|
---|
| 102 | equals(el.dialog('isOpen'), true, "dialog is open");
|
---|
| 103 | el.remove();
|
---|
| 104 | });
|
---|
| 105 |
|
---|
| 106 | test("moveToTop", function() {
|
---|
| 107 | var expected = $('<div></div>').dialog(),
|
---|
| 108 | actual = expected.dialog('moveToTop');
|
---|
| 109 | equals(actual, expected, 'moveToTop is chainable');
|
---|
| 110 |
|
---|
| 111 | var d1 = $('<div></div>').dialog(), dlg1 = d1.parents('.ui-dialog');
|
---|
| 112 | d1.dialog('close');
|
---|
| 113 | d1.dialog('open');
|
---|
| 114 | var d2 = $('<div></div>').dialog(), dlg2 = d2.parents('.ui-dialog');
|
---|
| 115 | d2.dialog('close');
|
---|
| 116 | d2.dialog('open');
|
---|
| 117 | ok(dlg1.css('zIndex') < dlg2.css('zIndex'), 'dialog 1 under dialog 2 before moveToTop method called');
|
---|
| 118 | d1.dialog('moveToTop');
|
---|
| 119 | ok(dlg1.css('zIndex') > dlg2.css('zIndex'), 'dialog 1 above dialog 2 after moveToTop method called');
|
---|
| 120 | });
|
---|
| 121 |
|
---|
| 122 | test("open", function() {
|
---|
| 123 | var expected = $('<div></div>').dialog(),
|
---|
| 124 | actual = expected.dialog('open');
|
---|
| 125 | equals(actual, expected, 'open is chainable');
|
---|
| 126 |
|
---|
| 127 | el = $('<div></div>').dialog({ autoOpen: false });
|
---|
| 128 | ok(dlg().is(':hidden') && !dlg().is(':visible'), 'dialog hidden before open method called');
|
---|
| 129 | el.dialog('open');
|
---|
| 130 | ok(dlg().is(':visible') && !dlg().is(':hidden'), 'dialog visible after open method called');
|
---|
| 131 | });
|
---|
| 132 |
|
---|
| 133 | })(jQuery);
|
---|