imported the whole jquery-ui package, refreshed with 1.10.2
[myslice.git] / third-party / jquery-ui-1.10.2 / tests / unit / datepicker / datepicker_methods.js
1 /*
2  * datepicker_methods.js
3  */
4 (function($) {
5
6 module("datepicker: methods");
7
8 test("destroy", function() {
9         expect( 33 );
10         var inl,
11                 inp = TestHelpers.datepicker.init("#inp");
12         ok(inp.is(".hasDatepicker"), "Default - marker class set");
13         ok($.data(inp[0], TestHelpers.datepicker.PROP_NAME), "Default - instance present");
14         ok(inp.next().is("#alt"), "Default - button absent");
15         inp.datepicker("destroy");
16         inp = $("#inp");
17         ok(!inp.is(".hasDatepicker"), "Default - marker class cleared");
18         ok(!$.data(inp[0], TestHelpers.datepicker.PROP_NAME), "Default - instance absent");
19         ok(inp.next().is("#alt"), "Default - button absent");
20         // With button
21         inp= TestHelpers.datepicker.init("#inp", {showOn: "both"});
22         ok(inp.is(".hasDatepicker"), "Button - marker class set");
23         ok($.data(inp[0], TestHelpers.datepicker.PROP_NAME), "Button - instance present");
24         ok(inp.next().text() === "...", "Button - button added");
25         inp.datepicker("destroy");
26         inp = $("#inp");
27         ok(!inp.is(".hasDatepicker"), "Button - marker class cleared");
28         ok(!$.data(inp[0], TestHelpers.datepicker.PROP_NAME), "Button - instance absent");
29         ok(inp.next().is("#alt"), "Button - button removed");
30         // With append text
31         inp = TestHelpers.datepicker.init("#inp", {appendText: "Testing"});
32         ok(inp.is(".hasDatepicker"), "Append - marker class set");
33         ok($.data(inp[0], TestHelpers.datepicker.PROP_NAME), "Append - instance present");
34         ok(inp.next().text() === "Testing", "Append - append text added");
35         inp.datepicker("destroy");
36         inp = $("#inp");
37         ok(!inp.is(".hasDatepicker"), "Append - marker class cleared");
38         ok(!$.data(inp[0], TestHelpers.datepicker.PROP_NAME), "Append - instance absent");
39         ok(inp.next().is("#alt"), "Append - append text removed");
40         // With both
41         inp= TestHelpers.datepicker.init("#inp", {showOn: "both", buttonImageOnly: true,
42                 buttonImage: "images/calendar.gif", appendText: "Testing"});
43         ok(inp.is(".hasDatepicker"), "Both - marker class set");
44         ok($.data(inp[0], TestHelpers.datepicker.PROP_NAME), "Both - instance present");
45         ok(inp.next()[0].nodeName.toLowerCase() === "img", "Both - button added");
46         ok(inp.next().next().text() === "Testing", "Both - append text added");
47         inp.datepicker("destroy");
48         inp = $("#inp");
49         ok(!inp.is(".hasDatepicker"), "Both - marker class cleared");
50         ok(!$.data(inp[0], TestHelpers.datepicker.PROP_NAME), "Both - instance absent");
51         ok(inp.next().is("#alt"), "Both - button and append text absent");
52         // Inline
53         inl = TestHelpers.datepicker.init("#inl");
54         ok(inl.is(".hasDatepicker"), "Inline - marker class set");
55         ok(inl.html() !== "", "Inline - datepicker present");
56         ok($.data(inl[0], TestHelpers.datepicker.PROP_NAME), "Inline - instance present");
57         ok(inl.next().length === 0 || inl.next().is("p"), "Inline - button absent");
58         inl.datepicker("destroy");
59         inl = $("#inl");
60         ok(!inl.is(".hasDatepicker"), "Inline - marker class cleared");
61         ok(inl.html() === "", "Inline - datepicker absent");
62         ok(!$.data(inl[0], TestHelpers.datepicker.PROP_NAME), "Inline - instance absent");
63         ok(inl.next().length === 0 || inl.next().is("p"), "Inline - button absent");
64 });
65
66 test("enableDisable", function() {
67         expect( 33 );
68         var inl, dp,
69                 inp = TestHelpers.datepicker.init("#inp");
70         ok(!inp.datepicker("isDisabled"), "Enable/disable - initially marked as enabled");
71         ok(!inp[0].disabled, "Enable/disable - field initially enabled");
72         inp.datepicker("disable");
73         ok(inp.datepicker("isDisabled"), "Enable/disable - now marked as disabled");
74         ok(inp[0].disabled, "Enable/disable - field now disabled");
75         inp.datepicker("enable");
76         ok(!inp.datepicker("isDisabled"), "Enable/disable - now marked as enabled");
77         ok(!inp[0].disabled, "Enable/disable - field now enabled");
78         inp.datepicker("destroy");
79         // With a button
80         inp = TestHelpers.datepicker.init("#inp", {showOn: "button"});
81         ok(!inp.datepicker("isDisabled"), "Enable/disable button - initially marked as enabled");
82         ok(!inp[0].disabled, "Enable/disable button - field initially enabled");
83         ok(!inp.next("button")[0].disabled, "Enable/disable button - button initially enabled");
84         inp.datepicker("disable");
85         ok(inp.datepicker("isDisabled"), "Enable/disable button - now marked as disabled");
86         ok(inp[0].disabled, "Enable/disable button - field now disabled");
87         ok(inp.next("button")[0].disabled, "Enable/disable button - button now disabled");
88         inp.datepicker("enable");
89         ok(!inp.datepicker("isDisabled"), "Enable/disable button - now marked as enabled");
90         ok(!inp[0].disabled, "Enable/disable button - field now enabled");
91         ok(!inp.next("button")[0].disabled, "Enable/disable button - button now enabled");
92         inp.datepicker("destroy");
93         // With an image button
94         inp = TestHelpers.datepicker.init("#inp", {showOn: "button", buttonImageOnly: true,
95                 buttonImage: "images/calendar.gif"});
96         ok(!inp.datepicker("isDisabled"), "Enable/disable image - initially marked as enabled");
97         ok(!inp[0].disabled, "Enable/disable image - field initially enabled");
98         ok(parseFloat(inp.next("img").css("opacity")) === 1, "Enable/disable image - image initially enabled");
99         inp.datepicker("disable");
100         ok(inp.datepicker("isDisabled"), "Enable/disable image - now marked as disabled");
101         ok(inp[0].disabled, "Enable/disable image - field now disabled");
102         ok(parseFloat(inp.next("img").css("opacity")) !== 1, "Enable/disable image - image now disabled");
103         inp.datepicker("enable");
104         ok(!inp.datepicker("isDisabled"), "Enable/disable image - now marked as enabled");
105         ok(!inp[0].disabled, "Enable/disable image - field now enabled");
106         ok(parseFloat(inp.next("img").css("opacity")) === 1, "Enable/disable image - image now enabled");
107         inp.datepicker("destroy");
108         // Inline
109         inl = TestHelpers.datepicker.init("#inl", {changeYear: true});
110         dp = $(".ui-datepicker-inline", inl);
111         ok(!inl.datepicker("isDisabled"), "Enable/disable inline - initially marked as enabled");
112         ok(!dp.children().is(".ui-state-disabled"), "Enable/disable inline - not visually disabled initially");
113         ok(!dp.find("select").prop("disabled"), "Enable/disable inline - form element enabled initially");
114         inl.datepicker("disable");
115         ok(inl.datepicker("isDisabled"), "Enable/disable inline - now marked as disabled");
116         ok(dp.children().is(".ui-state-disabled"), "Enable/disable inline - visually disabled");
117         ok(dp.find("select").prop("disabled"), "Enable/disable inline - form element disabled");
118         inl.datepicker("enable");
119         ok(!inl.datepicker("isDisabled"), "Enable/disable inline - now marked as enabled");
120         ok(!dp.children().is(".ui-state-disabled"), "Enable/disable inline - not visiually disabled");
121         ok(!dp.find("select").prop("disabled"), "Enable/disable inline - form element enabled");
122         inl.datepicker("destroy");
123 });
124
125 })(jQuery);