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

Side by Side Diff: LayoutTests/platform/chromium/fast/forms/suggestion-picker/week-suggestion-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/suggestion-picker-common.js"></script>
7 </head>
8 <body style="background-color: #bbbbbb;">
9 <p id="description"></p>
10 <div id="console"></div>
11 <input type=week id=week value="2012-W12" list=suggestions>
12 <datalist id=suggestions>
13 <option label="This Week">2012-W01</option>
14 <option>2012-W02</option>
15 <option>2012-W03</option>
16 <option>2012-W04</option>
17 <option>2012-W05</option>
18 <option>2012-W06</option>
19 <option>2012-W07</option>
20 <option>2012-W08</option>
21 <option>2012-W09</option>
22 <option>2012-W10</option>
23 <option>2012-W11</option>
24 <option>2012-W12</option>
25 <option>2012-W13</option>
26 <option>2012-W14</option>
27 <option>2012-W15</option>
28 <option>2012-W16</option>
29 <option>2012-W17</option>
30 <option>2012-W18</option>
31 <option>2012-W19</option>
32 <option>2012-W20</option>
33 <option>2012-W21</option>
34 <option>2012-W22</option>
35 <option>2012-W23</option>
36 <option>2012-W24</option>
37 <option>2012-W25</option>
38 <option>2012-W26</option>
39 <option>2012-W27</option>
40 <option>2012-W28</option>
41 <option>2012-W29</option>
42 <option>2012-W30</option>
43 <option>2012-W31</option>
44 <option>2012-W32</option>
45 <option>2012-W33</option>
46 <option>2012-W34</option>
47 <option>2012-W35</option>
48 <option>2012-W36</option>
49 <option>2012-W37</option>
50 <option>2012-W38</option>
51 <option>2012-W39</option>
52 <option>2012-W40</option>
53 <option>2012-W41</option>
54 <option>2012-W42</option>
55 <option>2012-W43</option>
56 <option>2012-W44</option>
57 <option>2012-W45</option>
58 <option>2012-W46</option>
59 <option>2012-W47</option>
60 <option>2012-W48</option>
61 <option>2012-W49</option>
62 <option>2012-W50</option>
63 <option>2012-W51</option>
64 <option>2012-W52</option>
65 <option>2013-W01</option>
66 <option>2013-W02</option>
67 <option>2013-W03</option>
68 <option>2013-W04</option>
69 <option>2013-W05</option>
70 <option>2013-W06</option>
71 <option>2013-W07</option>
72 <option>2013-W08</option>
73 <option>2013-W09</option>
74 <option>2013-W10</option>
75 <option>2013-W11</option>
76 <option>2013-W12</option>
77 <option>2013-W13</option>
78 <option>2013-W14</option>
79 <option>2013-W15</option>
80 <option>2013-W16</option>
81 <option>2013-W17</option>
82 <option>2013-W18</option>
83 <option>2012-W00</option> <!--invalid-->
84 <option>2012-01-01</option> <!--invalid-->
85 <option>foo</option> <!--invalid-->
86 </datalist>
87 <script>
88 description('Tests that key bindings work as expected.');
89
90 debug('Check that page popup doesn\'t exist at first.');
91 shouldBeNull('document.getElementById("mock-page-popup")');
92
93 openPicker(document.getElementById('week'), test1);
94
95 var expectingDidHideEvent = false;
96
97 function test1() {
98 debug('Check that page popup exists.');
99 shouldBeEqualToString('popupWindow.pagePopupController.toString()', '[object PagePopupController]');
100 popupWindow.focus();
101
102 debug('Check that up/down arrow keys work.');
103 shouldBeNull('highlightedEntry()');
104 eventSender.keyDown('downArrow');
105 shouldBeEqualToString('highlightedEntry()', '2012-W01');
106 eventSender.keyDown('downArrow');
107 shouldBeEqualToString('highlightedEntry()', '2012-W02');
108 eventSender.keyDown('upArrow');
109 shouldBeEqualToString('highlightedEntry()', '2012-W01');
110
111 debug('Check that up arrow key at top of list does nothing.');
112 eventSender.keyDown('upArrow');
113 shouldBeEqualToString('highlightedEntry()', '2012-W01');
114 eventSender.keyDown('downArrow');
115 shouldBeEqualToString('highlightedEntry()', '2012-W02');
116
117 debug('Check that page up/down arrow keys work.');
118 eventSender.keyDown('pageDown');
119 shouldBeEqualToString('highlightedEntry()', '2012-W40');
120 eventSender.keyDown('pageDown');
121 shouldBeEqualToString('highlightedEntry()', '2013-W08');
122 eventSender.keyDown('pageUp');
123 shouldBeEqualToString('highlightedEntry()', '2012-W21');
124 eventSender.keyDown('pageDown');
125 shouldBeEqualToString('highlightedEntry()', '2013-W08');
126 eventSender.keyDown('pageDown');
127 shouldBeEqualToString('highlightedEntry()', '@openCalendarPicker');
128
129 debug('Check that down arrow key at bottom of list does nothing.');
130 eventSender.keyDown('downArrow');
131 shouldBeEqualToString('highlightedEntry()', '@openCalendarPicker');
132
133 debug('Check that enter key sets the highlighted value.');
134 eventSender.keyDown('upArrow');
135 shouldBeEqualToString('highlightedEntry()', '2013-W18');
136 eventSender.keyDown('\n');
137 waitUntilClosing(test1AfterClosing);
138 }
139
140 function test1AfterClosing() {
141 shouldBeNull('document.getElementById("mock-page-popup")');
142 shouldBeEqualToString('document.getElementById("week").value', '2013-W18');
143
144 debug('Reopen popup.');
145 openPicker(document.getElementById('week'), test2);
146 }
147
148 function test2() {
149 popupWindow.focus();
150
151 eventSender.keyDown('pageDown');
152 eventSender.keyDown('pageDown');
153 eventSender.keyDown('pageDown');
154 shouldBeEqualToString('highlightedEntry()', '@openCalendarPicker');
155
156 debug('Open calendar picker.');
157 expectingDidHideEvent = true;
158 popupWindow.addEventListener('didHide', testDidHide, false);
159 popupWindow.addEventListener('didOpenPicker', test3, false);
160 eventSender.keyDown('\n');
161 }
162
163 function testDidHide() {
164 popupWindow.removeEventListener('didHide', testDidHide);
165
166 shouldBeTrue('expectingDidHideEvent');
167 expectingDidHideEvent = false;
168 }
169
170 function test3() {
171 popupWindow.removeEventListener('didOpenPicker', test3);
172
173 shouldBeFalse('expectingDidHideEvent');
174
175 debug('Confirm calendar picker did open.');
176 shouldBeTrue('popupWindow.document.getElementById("main").firstChild.classLi st.contains("calendar-picker")');
177
178 debug('Check that escape key closes the popup.');
179 eventSender.keyDown('\x1B');
180 waitUntilClosing(test3AfterClosing);
181 }
182
183 function test3AfterClosing() {
184 shouldBeNull('document.getElementById("mock-page-popup")');
185 shouldBeEqualToString('document.getElementById("week").value', '2013-W18');
186
187 sendKey(document.getElementById('week'), 'F4');
188 if (document.getElementById('mock-page-popup'))
189 testPassed('F4 opened picker.');
190
191 finishJSTest();
192 }
193
194 </script>
195 <script src="../../../../../fast/js/resources/js-test-post.js"></script>
196 </body>
197 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698