Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(235)

Side by Side Diff: LayoutTests/platform/chromium/fast/forms/calendar-picker/month-picker-key-operations.html

Issue 14120003: Move LayoutTests from platform/chromium/... to generic location (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 7 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 <!DOCTYPE html>
2 <html>
3 <head>
4 <script src="../../../../../fast/js/resources/js-test-pre.js"></script>
5 <script src="../../../../../fast/forms/resources/picker-common.js"></script>
6 <script src="resources/calendar-picker-common.js"></script>
7 </head>
8 <body>
9 <p id="description"></p>
10 <div id="console"></div>
11 <input type=month id=month value="2000-01">
12 <script>
13 description("Tests if month picker key bindings work as expected.");
14
15 debug('Check that page popup doesn\'t exist at first.');
16 shouldBeNull('document.getElementById("mock-page-popup")');
17
18 openPicker(document.getElementById('month'), test1);
19
20 function test1() {
21 debug('Check that page popup exists.');
22 shouldBe('popupWindow.pagePopupController.toString()', '"[object PagePopupCo ntroller]"');
23
24 shouldBeFalse('isCalendarTableScrollingWithAnimation()');
25 shouldBeEqualToString('currentMonth()', '2000-01');
26 shouldBeEqualToString('selectedValue()', '2000-01');
27 shouldBeEqualToString('selectedDayCells()', '2000-01-01,2000-01-02,2000-01-0 3,2000-01-04,2000-01-05,2000-01-06,2000-01-07,2000-01-08,2000-01-09,2000-01-10,2 000-01-11,2000-01-12,2000-01-13,2000-01-14,2000-01-15,2000-01-16,2000-01-17,2000 -01-18,2000-01-19,2000-01-20,2000-01-21,2000-01-22,2000-01-23,2000-01-24,2000-01 -25,2000-01-26,2000-01-27,2000-01-28,2000-01-29,2000-01-30,2000-01-31');
28 shouldBeEqualToString('highlightedValue()', '2000-01');
29 shouldBeEqualToString('highlightedDayCells()', '2000-01-01,2000-01-02,2000-0 1-03,2000-01-04,2000-01-05,2000-01-06,2000-01-07,2000-01-08,2000-01-09,2000-01-1 0,2000-01-11,2000-01-12,2000-01-13,2000-01-14,2000-01-15,2000-01-16,2000-01-17,2 000-01-18,2000-01-19,2000-01-20,2000-01-21,2000-01-22,2000-01-23,2000-01-24,2000 -01-25,2000-01-26,2000-01-27,2000-01-28,2000-01-29,2000-01-30,2000-01-31');
30
31 debug('Check that arrow keys work properly.');
32
33 debug("press up");
34 eventSender.keyDown('upArrow');
35 shouldBeTrue('isCalendarTableScrollingWithAnimation()');
36 shouldBeEqualToString('currentMonth()', '1999-12');
37 shouldBeEqualToString('selectedValue()', '2000-01');
38 shouldBeEqualToString('selectedDayCells()', '2000-01-01');
39 shouldBeEqualToString('highlightedValue()', '1999-12');
40 shouldBeEqualToString('highlightedDayCells()', '1999-12-01,1999-12-02,1999-1 2-03,1999-12-04,1999-12-05,1999-12-06,1999-12-07,1999-12-08,1999-12-09,1999-12-1 0,1999-12-11,1999-12-12,1999-12-13,1999-12-14,1999-12-15,1999-12-16,1999-12-17,1 999-12-18,1999-12-19,1999-12-20,1999-12-21,1999-12-22,1999-12-23,1999-12-24,1999 -12-25,1999-12-26,1999-12-27,1999-12-28,1999-12-29,1999-12-30,1999-12-31');
41
42 debug("press down");
43 eventSender.keyDown('downArrow');
44 shouldBeTrue('isCalendarTableScrollingWithAnimation()');
45 shouldBeEqualToString('currentMonth()', '2000-01');
46 shouldBeEqualToString('selectedValue()', '2000-01');
47 shouldBeEqualToString('selectedDayCells()', '2000-01-01,2000-01-02,2000-01-0 3,2000-01-04,2000-01-05,2000-01-06,2000-01-07,2000-01-08,2000-01-09,2000-01-10,2 000-01-11,2000-01-12,2000-01-13,2000-01-14,2000-01-15,2000-01-16,2000-01-17,2000 -01-18,2000-01-19,2000-01-20,2000-01-21,2000-01-22,2000-01-23,2000-01-24,2000-01 -25,2000-01-26,2000-01-27,2000-01-28,2000-01-29,2000-01-30,2000-01-31');
48 shouldBeEqualToString('highlightedValue()', '2000-01');
49 shouldBeEqualToString('highlightedDayCells()', '2000-01-01,2000-01-02,2000-0 1-03,2000-01-04,2000-01-05,2000-01-06,2000-01-07,2000-01-08,2000-01-09,2000-01-1 0,2000-01-11,2000-01-12,2000-01-13,2000-01-14,2000-01-15,2000-01-16,2000-01-17,2 000-01-18,2000-01-19,2000-01-20,2000-01-21,2000-01-22,2000-01-23,2000-01-24,2000 -01-25,2000-01-26,2000-01-27,2000-01-28,2000-01-29,2000-01-30,2000-01-31');
50
51 debug("press down");
52 eventSender.keyDown('downArrow');
53 shouldBeTrue('isCalendarTableScrollingWithAnimation()');
54 shouldBeEqualToString('currentMonth()', '2000-02');
55 shouldBeEqualToString('selectedValue()', '2000-01');
56 shouldBeEqualToString('selectedDayCells()', '2000-01-30,2000-01-31');
57 shouldBeEqualToString('highlightedValue()', '2000-02');
58 shouldBeEqualToString('highlightedDayCells()', '2000-02-01,2000-02-02,2000-0 2-03,2000-02-04,2000-02-05,2000-02-06,2000-02-07,2000-02-08,2000-02-09,2000-02-1 0,2000-02-11,2000-02-12,2000-02-13,2000-02-14,2000-02-15,2000-02-16,2000-02-17,2 000-02-18,2000-02-19,2000-02-20,2000-02-21,2000-02-22,2000-02-23,2000-02-24,2000 -02-25,2000-02-26,2000-02-27,2000-02-28,2000-02-29');
59
60 debug("press left");
61 eventSender.keyDown('leftArrow');
62 shouldBeTrue('isCalendarTableScrollingWithAnimation()');
63 shouldBeEqualToString('currentMonth()', '2000-01');
64 shouldBeEqualToString('selectedValue()', '2000-01');
65 shouldBeEqualToString('selectedDayCells()', '2000-01-01,2000-01-02,2000-01-0 3,2000-01-04,2000-01-05,2000-01-06,2000-01-07,2000-01-08,2000-01-09,2000-01-10,2 000-01-11,2000-01-12,2000-01-13,2000-01-14,2000-01-15,2000-01-16,2000-01-17,2000 -01-18,2000-01-19,2000-01-20,2000-01-21,2000-01-22,2000-01-23,2000-01-24,2000-01 -25,2000-01-26,2000-01-27,2000-01-28,2000-01-29,2000-01-30,2000-01-31');
66 shouldBeEqualToString('highlightedValue()', '2000-01');
67 shouldBeEqualToString('highlightedDayCells()', '2000-01-01,2000-01-02,2000-0 1-03,2000-01-04,2000-01-05,2000-01-06,2000-01-07,2000-01-08,2000-01-09,2000-01-1 0,2000-01-11,2000-01-12,2000-01-13,2000-01-14,2000-01-15,2000-01-16,2000-01-17,2 000-01-18,2000-01-19,2000-01-20,2000-01-21,2000-01-22,2000-01-23,2000-01-24,2000 -01-25,2000-01-26,2000-01-27,2000-01-28,2000-01-29,2000-01-30,2000-01-31');
68
69 debug("press right");
70 eventSender.keyDown('rightArrow');
71 shouldBeTrue('isCalendarTableScrollingWithAnimation()');
72 shouldBeEqualToString('currentMonth()', '2000-02');
73 shouldBeEqualToString('selectedValue()', '2000-01');
74 shouldBeEqualToString('selectedDayCells()', '2000-01-30,2000-01-31');
75 shouldBeEqualToString('highlightedValue()', '2000-02');
76 shouldBeEqualToString('highlightedDayCells()', '2000-02-01,2000-02-02,2000-0 2-03,2000-02-04,2000-02-05,2000-02-06,2000-02-07,2000-02-08,2000-02-09,2000-02-1 0,2000-02-11,2000-02-12,2000-02-13,2000-02-14,2000-02-15,2000-02-16,2000-02-17,2 000-02-18,2000-02-19,2000-02-20,2000-02-21,2000-02-22,2000-02-23,2000-02-24,2000 -02-25,2000-02-26,2000-02-27,2000-02-28,2000-02-29');
77
78 debug("press pageDown");
79 eventSender.keyDown('pageDown');
80 shouldBeEqualToString('currentMonth()', '2000-03');
81 shouldBeEqualToString('selectedValue()', '2000-01');
82 shouldBeEqualToString('selectedDayCells()', '');
83 shouldBeEqualToString('highlightedValue()', '2000-02');
84 shouldBeEqualToString('highlightedDayCells()', '2000-02-27,2000-02-28,2000-0 2-29');
85
86 debug("press pageUp");
87 eventSender.keyDown('pageUp');
88 shouldBeEqualToString('currentMonth()', '2000-02');
89 shouldBeEqualToString('selectedValue()', '2000-01');
90 shouldBeEqualToString('selectedDayCells()', '2000-01-30,2000-01-31');
91 shouldBeEqualToString('highlightedValue()', '2000-02');
92 shouldBeEqualToString('highlightedDayCells()', '2000-02-01,2000-02-02,2000-0 2-03,2000-02-04,2000-02-05,2000-02-06,2000-02-07,2000-02-08,2000-02-09,2000-02-1 0,2000-02-11,2000-02-12,2000-02-13,2000-02-14,2000-02-15,2000-02-16,2000-02-17,2 000-02-18,2000-02-19,2000-02-20,2000-02-21,2000-02-22,2000-02-23,2000-02-24,2000 -02-25,2000-02-26,2000-02-27,2000-02-28,2000-02-29');
93
94 debug("press m");
95 eventSender.keyDown('m');
96 shouldBeTrue('isCalendarTableScrollingWithAnimation()');
97 shouldBeEqualToString('currentMonth()', '2000-03');
98 shouldBeEqualToString('selectedValue()', '2000-01');
99 shouldBeEqualToString('selectedDayCells()', '');
100 shouldBeEqualToString('highlightedValue()', '2000-03');
101 shouldBeEqualToString('highlightedDayCells()', '2000-03-01,2000-03-02,2000-0 3-03,2000-03-04,2000-03-05,2000-03-06,2000-03-07,2000-03-08,2000-03-09,2000-03-1 0,2000-03-11,2000-03-12,2000-03-13,2000-03-14,2000-03-15,2000-03-16,2000-03-17,2 000-03-18,2000-03-19,2000-03-20,2000-03-21,2000-03-22,2000-03-23,2000-03-24,2000 -03-25,2000-03-26,2000-03-27,2000-03-28,2000-03-29,2000-03-30,2000-03-31');
102
103 debug("press shift + m");
104 eventSender.keyDown('M');
105 shouldBeTrue('isCalendarTableScrollingWithAnimation()');
106 shouldBeEqualToString('currentMonth()', '2000-02');
107 shouldBeEqualToString('selectedValue()', '2000-01');
108 shouldBeEqualToString('selectedDayCells()', '2000-01-30,2000-01-31');
109 shouldBeEqualToString('highlightedValue()', '2000-02');
110 shouldBeEqualToString('highlightedDayCells()', '2000-02-01,2000-02-02,2000-0 2-03,2000-02-04,2000-02-05,2000-02-06,2000-02-07,2000-02-08,2000-02-09,2000-02-1 0,2000-02-11,2000-02-12,2000-02-13,2000-02-14,2000-02-15,2000-02-16,2000-02-17,2 000-02-18,2000-02-19,2000-02-20,2000-02-21,2000-02-22,2000-02-23,2000-02-24,2000 -02-25,2000-02-26,2000-02-27,2000-02-28,2000-02-29');
111
112 debug("press y");
113 eventSender.keyDown('y');
114 shouldBeTrue('isCalendarTableScrollingWithAnimation()');
115 shouldBeEqualToString('currentMonth()', '2001-02');
116 shouldBeEqualToString('selectedValue()', '2000-01');
117 shouldBeEqualToString('selectedDayCells()', '');
118 shouldBeEqualToString('highlightedValue()', '2001-02');
119 shouldBeEqualToString('highlightedDayCells()', '2001-02-01,2001-02-02,2001-0 2-03,2001-02-04,2001-02-05,2001-02-06,2001-02-07,2001-02-08,2001-02-09,2001-02-1 0,2001-02-11,2001-02-12,2001-02-13,2001-02-14,2001-02-15,2001-02-16,2001-02-17,2 001-02-18,2001-02-19,2001-02-20,2001-02-21,2001-02-22,2001-02-23,2001-02-24,2001 -02-25,2001-02-26,2001-02-27,2001-02-28');
120
121 debug("press shift + y");
122 eventSender.keyDown('Y');
123 shouldBeTrue('isCalendarTableScrollingWithAnimation()');
124 shouldBeEqualToString('currentMonth()', '2000-02');
125 shouldBeEqualToString('selectedValue()', '2000-01');
126 shouldBeEqualToString('selectedDayCells()', '2000-01-30,2000-01-31');
127 shouldBeEqualToString('highlightedValue()', '2000-02');
128 shouldBeEqualToString('highlightedDayCells()', '2000-02-01,2000-02-02,2000-0 2-03,2000-02-04,2000-02-05,2000-02-06,2000-02-07,2000-02-08,2000-02-09,2000-02-1 0,2000-02-11,2000-02-12,2000-02-13,2000-02-14,2000-02-15,2000-02-16,2000-02-17,2 000-02-18,2000-02-19,2000-02-20,2000-02-21,2000-02-22,2000-02-23,2000-02-24,2000 -02-25,2000-02-26,2000-02-27,2000-02-28,2000-02-29');
129
130 debug("press d");
131 eventSender.keyDown('d');
132 shouldBeTrue('isCalendarTableScrollingWithAnimation()');
133 shouldBeEqualToString('currentMonth()', '2010-02');
134 shouldBeEqualToString('selectedValue()', '2000-01');
135 shouldBeEqualToString('selectedDayCells()', '');
136 shouldBeEqualToString('highlightedValue()', '2010-02');
137 shouldBeEqualToString('highlightedDayCells()', '2010-02-01,2010-02-02,2010-0 2-03,2010-02-04,2010-02-05,2010-02-06,2010-02-07,2010-02-08,2010-02-09,2010-02-1 0,2010-02-11,2010-02-12,2010-02-13,2010-02-14,2010-02-15,2010-02-16,2010-02-17,2 010-02-18,2010-02-19,2010-02-20,2010-02-21,2010-02-22,2010-02-23,2010-02-24,2010 -02-25,2010-02-26,2010-02-27,2010-02-28');
138
139 debug("press shift + d");
140 eventSender.keyDown('D');
141 shouldBeTrue('isCalendarTableScrollingWithAnimation()');
142 shouldBeEqualToString('currentMonth()', '2000-02');
143 shouldBeEqualToString('selectedValue()', '2000-01');
144 shouldBeEqualToString('selectedDayCells()', '2000-01-30,2000-01-31');
145 shouldBeEqualToString('highlightedValue()', '2000-02');
146 shouldBeEqualToString('highlightedDayCells()', '2000-02-01,2000-02-02,2000-0 2-03,2000-02-04,2000-02-05,2000-02-06,2000-02-07,2000-02-08,2000-02-09,2000-02-1 0,2000-02-11,2000-02-12,2000-02-13,2000-02-14,2000-02-15,2000-02-16,2000-02-17,2 000-02-18,2000-02-19,2000-02-20,2000-02-21,2000-02-22,2000-02-23,2000-02-24,2000 -02-25,2000-02-26,2000-02-27,2000-02-28,2000-02-29');
147
148 debug("press enter");
149 eventSender.keyDown('\n');
150 shouldBeEqualToString('currentMonth()', '2000-02');
151 shouldBeEqualToString('selectedValue()', '2000-02');
152 shouldBeEqualToString('selectedDayCells()', '2000-02-01,2000-02-02,2000-02-0 3,2000-02-04,2000-02-05,2000-02-06,2000-02-07,2000-02-08,2000-02-09,2000-02-10,2 000-02-11,2000-02-12,2000-02-13,2000-02-14,2000-02-15,2000-02-16,2000-02-17,2000 -02-18,2000-02-19,2000-02-20,2000-02-21,2000-02-22,2000-02-23,2000-02-24,2000-02 -25,2000-02-26,2000-02-27,2000-02-28,2000-02-29');
153 shouldBeEqualToString('highlightedValue()', '2000-02');
154 shouldBeEqualToString('highlightedDayCells()', '2000-02-01,2000-02-02,2000-0 2-03,2000-02-04,2000-02-05,2000-02-06,2000-02-07,2000-02-08,2000-02-09,2000-02-1 0,2000-02-11,2000-02-12,2000-02-13,2000-02-14,2000-02-15,2000-02-16,2000-02-17,2 000-02-18,2000-02-19,2000-02-20,2000-02-21,2000-02-22,2000-02-23,2000-02-24,2000 -02-25,2000-02-26,2000-02-27,2000-02-28,2000-02-29');
155 shouldBe('document.getElementById("month").value', '"2000-02"');
156
157 debug('Check if tabbing works.');
158 shouldBe('focusedElement()', '".list-view calendar-table-view"');
159 eventSender.keyDown('\t', ['shiftKey']);
160 shouldBe('focusedElement()', '".calendar-navigation-button"');
161 eventSender.keyDown('\t', ['shiftKey']);
162 shouldBe('focusedElement()', '".calendar-navigation-button today-button"');
163 eventSender.keyDown('\t', ['shiftKey']);
164 shouldBe('focusedElement()', '".calendar-navigation-button"');
165 eventSender.keyDown('\t', ['shiftKey']);
166 shouldBe('focusedElement()', '".month-popup-button"');
167
168 debug('open the month popup');
169 eventSender.keyDown('\n');
170 shouldBeTrue('popupWindow.global.picker.monthPopupView.isVisible');
171 shouldBeEqualToString('highlightedMonthButton()', '2000-02');
172
173 debug("press down");
174 eventSender.keyDown('downArrow');
175 shouldBeEqualToString('highlightedMonthButton()', '2000-06');
176
177 debug("press right");
178 eventSender.keyDown('rightArrow');
179 shouldBeEqualToString('highlightedMonthButton()', '2000-07');
180
181 debug("press right");
182 eventSender.keyDown('rightArrow');
183 shouldBeEqualToString('highlightedMonthButton()', '2000-08');
184
185 debug("press right");
186 eventSender.keyDown('rightArrow');
187 shouldBeEqualToString('highlightedMonthButton()', '2000-09');
188
189 debug("press right");
190 eventSender.keyDown('rightArrow');
191 shouldBeEqualToString('highlightedMonthButton()', '2000-10');
192
193 debug("press right");
194 eventSender.keyDown('rightArrow');
195 shouldBeEqualToString('highlightedMonthButton()', '2000-11');
196
197 debug("press left");
198 eventSender.keyDown('leftArrow');
199 shouldBeEqualToString('highlightedMonthButton()', '2000-10');
200
201 debug("press up");
202 eventSender.keyDown('upArrow');
203 shouldBeEqualToString('highlightedMonthButton()', '2000-06');
204
205 debug("press pageDown");
206 eventSender.keyDown('pageDown');
207 shouldBeEqualToString('highlightedMonthButton()', '2001-06');
208
209 debug("press pageUp");
210 eventSender.keyDown('pageUp');
211 shouldBeEqualToString('highlightedMonthButton()', '2000-06');
212
213 debug('select month in the month popup');
214 eventSender.keyDown('\n');
215 shouldBeFalse('popupWindow.global.picker.monthPopupView.isVisible');
216 shouldBeEqualToString('currentMonth()', '2000-06');
217 shouldBeEqualToString('selectedValue()', '2000-02');
218 shouldBeEqualToString('selectedDayCells()', '');
219 shouldBeEqualToString('highlightedValue()', '2000-02');
220 shouldBeEqualToString('highlightedDayCells()', '');
221
222 debug("focus calendar table");
223 popupWindow.global.picker.calendarTableView.element.focus();
224
225 // Test twice in case midnight.
226 debug("press t");
227 shouldBeTrue('testToday() || testToday()');
228
229 debug("press esc");
230 eventSender.keyDown('\x1B');
231 waitUntilClosing(test2AfterClosing);
232 }
233
234 function test2AfterClosing() {
235 shouldBeNull('document.getElementById("mock-page-popup")');
236
237 finishJSTest();
238 }
239
240 function testToday() {
241 eventSender.keyDown('t');
242 shouldBeTrue('isCalendarTableScrollingWithAnimation()', true /* quiet */);
243 var now = new Date();
244 var expectedMonth = new popupWindow.Month(now.getFullYear(), now.getMonth()) .toString();
245 return selectedValue() === expectedMonth && highlightedValue() === expectedM onth && currentMonth() === expectedMonth;
246 }
247
248 function focusedElement() {
249 var element = popupWindow.document.activeElement;
250 if (!element)
251 return null;
252 var identifier = "." + element.className;
253 if (element.value)
254 identifier += "[value=" + element.value + "]";
255 return identifier;
256 }
257
258 </script>
259 <script src="../../../../../fast/js/resources/js-test-post.js"></script>
260 </body>
261 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698