OLD | NEW |
1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
2 <html> | 2 <html> |
3 <head> | 3 <head> |
4 <script src="../../../resources/js-test.js"></script> | 4 <script src="../../../resources/js-test.js"></script> |
5 </head> | 5 </head> |
6 <body> | 6 <body> |
7 <p id="description"></p> | 7 <p id="description"></p> |
8 <p> | 8 <p> |
9 Please run this with DumpRenderTree. | 9 Please run this with DumpRenderTree. |
10 </p> | 10 </p> |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
56 keyDown('0'); // -> Week [00], yyyy | 56 keyDown('0'); // -> Week [00], yyyy |
57 keyDown('2'); // -> Week 02, [yyyy] | 57 keyDown('2'); // -> Week 02, [yyyy] |
58 keyDown('0'); // -> Week 02, [0000] | 58 keyDown('0'); // -> Week 02, [0000] |
59 keyDown('3'); // -> Week 02, [0003] | 59 keyDown('3'); // -> Week 02, [0003] |
60 keyDown('0'); // -> Week 02, [0030] | 60 keyDown('0'); // -> Week 02, [0030] |
61 keyDown('0'); // -> Week 02, [0300] | 61 keyDown('0'); // -> Week 02, [0300] |
62 shouldBeEqualToString('input.value', '0300-W02'); | 62 shouldBeEqualToString('input.value', '0300-W02'); |
63 | 63 |
64 beginTest('Digit keys and backspace key'); | 64 beginTest('Digit keys and backspace key'); |
65 keyDown('0'); // -> Week [00], yyyy | 65 keyDown('0'); // -> Week [00], yyyy |
66 keyDown('\b'); // -> Week [ww], yyyy | 66 keyDown('Backspace'); // -> Week [ww], yyyy |
67 keyDown('0'); // -> Week [00], yyyy | 67 keyDown('0'); // -> Week [00], yyyy |
68 keyDown('0'); // -> Week 01, [yyyy] | 68 keyDown('0'); // -> Week 01, [yyyy] |
69 keyDown('0'); // -> Week 01, [0000] | 69 keyDown('0'); // -> Week 01, [0000] |
70 keyDown('6'); // -> Week 05, [0006] | 70 keyDown('6'); // -> Week 05, [0006] |
71 shouldBeEqualToString('input.value', '0006-W01'); | 71 shouldBeEqualToString('input.value', '0006-W01'); |
72 | 72 |
73 beginTest('Left/Right keys', '2012-W09'); | 73 beginTest('Left/Right keys', '2012-W09'); |
74 keyDown('rightArrow'); // -> Week 09, [2012] | 74 keyDown('ArrowRight'); // -> Week 09, [2012] |
75 keyDown('5'); // -> Week 09, [0005] | 75 keyDown('5'); // -> Week 09, [0005] |
76 keyDown('leftArrow'); // -> Week [09], 0005 | 76 keyDown('ArrowLeft'); // -> Week [09], 0005 |
77 keyDown('6'); // -> Week [06], 0005 | 77 keyDown('6'); // -> Week [06], 0005 |
78 shouldBeEqualToString('input.value', '0005-W06'); | 78 shouldBeEqualToString('input.value', '0005-W06'); |
79 keyDown('leftArrow'); // -> Week 06, [0005] | 79 keyDown('ArrowLeft'); // -> Week 06, [0005] |
80 keyDown('leftArrow'); // -> Week [06], 0005 | 80 keyDown('ArrowLeft'); // -> Week [06], 0005 |
81 keyDown('leftArrow'); // -> Week [06], 0005 | 81 keyDown('ArrowLeft'); // -> Week [06], 0005 |
82 shouldBeEqualToString('document.activeElement.id', 'input'); | 82 shouldBeEqualToString('document.activeElement.id', 'input'); |
83 | 83 |
84 beginTest('Up/Down keys', '2012-W09'); | 84 beginTest('Up/Down keys', '2012-W09'); |
85 keyDown('upArrow'); // -> Week [10], 2012 | 85 keyDown('ArrowUp'); // -> Week [10], 2012 |
86 shouldBeEqualToString('input.value', '2012-W10'); | 86 shouldBeEqualToString('input.value', '2012-W10'); |
87 keyDown('downArrow'); // -> Week [09], 2012 | 87 keyDown('ArrowDown'); // -> Week [09], 2012 |
88 keyDown('downArrow'); // -> Week [08], 2012 | 88 keyDown('ArrowDown'); // -> Week [08], 2012 |
89 shouldBeEqualToString('input.value', '2012-W08'); | 89 shouldBeEqualToString('input.value', '2012-W08'); |
90 | 90 |
91 beginTest('Up/Down keys on empty value'); | 91 beginTest('Up/Down keys on empty value'); |
92 keyDown('downArrow'); // -> Week [53], yyyy | 92 keyDown('ArrowDown'); // -> Week [53], yyyy |
93 keyDown('downArrow'); // -> Week [52], yyyy | 93 keyDown('ArrowDown'); // -> Week [52], yyyy |
94 keyDown('upArrow'); // -> Week [53], yyyy | 94 keyDown('ArrowUp'); // -> Week [53], yyyy |
95 keyDown('downArrow'); // -> Week [52], yyyy | 95 keyDown('ArrowDown'); // -> Week [52], yyyy |
96 keyDown('rightArrow'); // -> Week 52, [yyyy] | 96 keyDown('ArrowRight'); // -> Week 52, [yyyy] |
97 var currentYear = new Date().getFullYear(); | 97 var currentYear = new Date().getFullYear(); |
98 keyDown('upArrow'); // -> Week 52, [current year] | 98 keyDown('ArrowUp'); // -> Week 52, [current year] |
99 shouldBe('input.value', 'currentYear + "-W52"'); | 99 shouldBe('input.value', 'currentYear + "-W52"'); |
100 | 100 |
101 beginTest('Up/Down keys on empty value 2'); | 101 beginTest('Up/Down keys on empty value 2'); |
102 keyDown('upArrow'); // -> Week [01], yyyy | 102 keyDown('ArrowUp'); // -> Week [01], yyyy |
103 keyDown('upArrow'); // -> Week [02], yyyy | 103 keyDown('ArrowUp'); // -> Week [02], yyyy |
104 keyDown('rightArrow'); // -> Week 02, [yyyy] | 104 keyDown('ArrowRight'); // -> Week 02, [yyyy] |
105 currentYear = new Date().getFullYear(); | 105 currentYear = new Date().getFullYear(); |
106 keyDown('downArrow'); // -> Week 02, [current year] | 106 keyDown('ArrowDown'); // -> Week 02, [current year] |
107 shouldBe('input.value', 'currentYear + "-W02"'); | 107 shouldBe('input.value', 'currentYear + "-W02"'); |
108 | 108 |
109 beginTest('Tab key', '2012-W09'); | 109 beginTest('Tab key', '2012-W09'); |
110 keyDown('\t'); // -> Week 09, [2012] | 110 keyDown('\t'); // -> Week 09, [2012] |
111 keyDown('5'); // -> Week 09, [0005] | 111 keyDown('5'); // -> Week 09, [0005] |
112 shouldBeEqualToString('input.value', '0005-W09'); | 112 shouldBeEqualToString('input.value', '0005-W09'); |
113 keyDown('\t', ['shiftKey']); // -> Week [09], 0005 | 113 keyDown('\t', ['shiftKey']); // -> Week [09], 0005 |
114 keyDown('7'); // -> Week [07], 0005 | 114 keyDown('7'); // -> Week [07], 0005 |
115 shouldBeEqualToString('input.value', '0005-W07'); | 115 shouldBeEqualToString('input.value', '0005-W07'); |
116 keyDown('\t'); // -> Focus out. | 116 keyDown('\t'); // -> Focus out. |
117 shouldBeEqualToString('document.activeElement.id', 'after'); | 117 shouldBeEqualToString('document.activeElement.id', 'after'); |
118 | 118 |
119 beginTest('Shfit+Tab key', '2012-W09'); | 119 beginTest('Shfit+Tab key', '2012-W09'); |
120 after.focus(); | 120 after.focus(); |
121 keyDown('\t', ['shiftKey']); // -> Week 09, [2012] | 121 keyDown('\t', ['shiftKey']); // -> Week 09, [2012] |
122 keyDown('3'); // -> Week 09, [0003] | 122 keyDown('3'); // -> Week 09, [0003] |
123 shouldBeEqualToString('input.value', '0003-W09'); | 123 shouldBeEqualToString('input.value', '0003-W09'); |
124 keyDown('\t', ['shiftKey']); // -> Week [09], 0003 | 124 keyDown('\t', ['shiftKey']); // -> Week [09], 0003 |
125 keyDown('\t', ['shiftKey']); // -> Focus out. | 125 keyDown('\t', ['shiftKey']); // -> Focus out. |
126 shouldBeEqualToString('document.activeElement.id', 'before'); | 126 shouldBeEqualToString('document.activeElement.id', 'before'); |
127 | 127 |
128 beginTest('Up key on maximum value', '275760-W09'); | 128 beginTest('Up key on maximum value', '275760-W09'); |
129 keyDown('upArrow'); // -> Week [10], 275760 | 129 keyDown('ArrowUp'); // -> Week [10], 275760 |
130 keyDown('\t'); // -> Week 10, [275760] | 130 keyDown('\t'); // -> Week 10, [275760] |
131 keyDown('upArrow'); // -> Week 10, [0001] | 131 keyDown('ArrowUp'); // -> Week 10, [0001] |
132 shouldBeEqualToString('input.value', '0001-W10'); | 132 shouldBeEqualToString('input.value', '0001-W10'); |
133 beginTest('Up key with a maximum attribute', '1999-W12', '1000-W01', '1999-W12')
; | 133 beginTest('Up key with a maximum attribute', '1999-W12', '1000-W01', '1999-W12')
; |
134 keyDown('upArrow'); // -> Week [13], 1999 | 134 keyDown('ArrowUp'); // -> Week [13], 1999 |
135 keyDown('\t'); // -> Week 13, [1999] | 135 keyDown('\t'); // -> Week 13, [1999] |
136 keyDown('upArrow'); // -> Week 13, [1000] | 136 keyDown('ArrowUp'); // -> Week 13, [1000] |
137 shouldBeEqualToString('input.value', '1000-W13'); | 137 shouldBeEqualToString('input.value', '1000-W13'); |
138 | 138 |
139 beginTest('Down key on minimum value', '0001-W01', 'bad min', 'wrong max'); | 139 beginTest('Down key on minimum value', '0001-W01', 'bad min', 'wrong max'); |
140 keyDown('downArrow'); // -> Week [53], 0001 | 140 keyDown('ArrowDown'); // -> Week [53], 0001 |
141 keyDown('\t'); // -> Week 01, [0001] | 141 keyDown('\t'); // -> Week 01, [0001] |
142 keyDown('downArrow'); // -> Week 53, [275760], which is greater than the hard li
mit. | 142 keyDown('ArrowDown'); // -> Week 53, [275760], which is greater than the hard li
mit. |
143 shouldBeEqualToString('input.value', ''); | 143 shouldBeEqualToString('input.value', ''); |
144 beginTest('Down key with a minimum attribute', '1000-W01', '1000-W01'); | 144 beginTest('Down key with a minimum attribute', '1000-W01', '1000-W01'); |
145 keyDown('downArrow'); // -> Week [53], 1000 | 145 keyDown('ArrowDown'); // -> Week [53], 1000 |
146 keyDown('\t'); // -> Week 53, [1000] | 146 keyDown('\t'); // -> Week 53, [1000] |
147 keyDown('downArrow'); // -> Week 53, [275760], which is greater than the hard li
mit. | 147 keyDown('ArrowDown'); // -> Week 53, [275760], which is greater than the hard li
mit. |
148 shouldBeEqualToString('input.value', ''); | 148 shouldBeEqualToString('input.value', ''); |
149 | 149 |
150 beginTest('Inconsistent min-max attributes', '1999-W12', '1999-W12', '1000-W01')
; | 150 beginTest('Inconsistent min-max attributes', '1999-W12', '1999-W12', '1000-W01')
; |
151 keyDown('upArrow'); // -> Week [13], 1999. | 151 keyDown('ArrowUp'); // -> Week [13], 1999. |
152 keyDown('\t'); // -> Week 13, [1999] | 152 keyDown('\t'); // -> Week 13, [1999] |
153 keyDown('upArrow'); // -> Week 13, [1000]. 1000 is the swapped minimum year. | 153 keyDown('ArrowUp'); // -> Week 13, [1000]. 1000 is the swapped minimum year. |
154 shouldBeEqualToString('input.value', '1000-W13'); | 154 shouldBeEqualToString('input.value', '1000-W13'); |
155 keyDown('downArrow'); // -> Week 01, [1999] | 155 keyDown('ArrowDown'); // -> Week 01, [1999] |
156 shouldBeEqualToString('input.value', '1999-W13'); | 156 shouldBeEqualToString('input.value', '1999-W13'); |
157 | 157 |
158 beginTest('Make an invalid date', '2012-W01'); | 158 beginTest('Make an invalid date', '2012-W01'); |
159 keyDown('downArrow'); // -> Week [53], 2012 | 159 keyDown('ArrowDown'); // -> Week [53], 2012 |
160 shouldBeEqualToString('input.value', ''); // 2012-W53 is not a valid date. | 160 shouldBeEqualToString('input.value', ''); // 2012-W53 is not a valid date. |
161 | 161 |
162 beginTest('Backspace key', '2012-W09'); | 162 beginTest('Backspace key', '2012-W09'); |
163 keyDown("\b"); // -> Week [ww], 2012 | 163 keyDown("Backspace"); // -> Week [ww], 2012 |
164 shouldBeEqualToString('input.value', ''); | 164 shouldBeEqualToString('input.value', ''); |
165 | 165 |
166 beginTest('Delete key', '2012-W09'); | 166 beginTest('Delete key', '2012-W09'); |
167 keyDown("delete"); // -> Week [ww], 2012 | 167 keyDown("Delete"); // -> Week [ww], 2012 |
168 shouldBeEqualToString('input.value', ''); | 168 shouldBeEqualToString('input.value', ''); |
169 | 169 |
170 beginTest('Typeahead', '2012-W12'); | 170 beginTest('Typeahead', '2012-W12'); |
171 keyDown('rightArrow'); // -> Week 12, [2012] | 171 keyDown('ArrowRight'); // -> Week 12, [2012] |
172 keyDown('1'); // -> Week 01, [0001] | 172 keyDown('1'); // -> Week 01, [0001] |
173 shouldBeEqualToString('input.value', '0001-W12'); | 173 shouldBeEqualToString('input.value', '0001-W12'); |
174 keyDown('leftArrow'); // -> Week [12], 0001 | 174 keyDown('ArrowLeft'); // -> Week [12], 0001 |
175 keyDown('rightArrow'); // -> Week 12, [0001] | 175 keyDown('ArrowRight'); // -> Week 12, [0001] |
176 keyDown('2'); // -> Week 12, [0002] | 176 keyDown('2'); // -> Week 12, [0002] |
177 shouldBeEqualToString('input.value', '0002-W12'); | 177 shouldBeEqualToString('input.value', '0002-W12'); |
178 | 178 |
179 beginTest('Disabled/readonly', '2012-W10'); | 179 beginTest('Disabled/readonly', '2012-W10'); |
180 input.disabled = true; | 180 input.disabled = true; |
181 keyDown('upArrow'); // Week 10, 2012 | 181 keyDown('ArrowUp'); // Week 10, 2012 |
182 shouldBeEqualToString('input.value', '2012-W10'); | 182 shouldBeEqualToString('input.value', '2012-W10'); |
183 input.disabled = false; | 183 input.disabled = false; |
184 input.focus(); | 184 input.focus(); |
185 keyDown('upArrow'); // Week [11], 2012 | 185 keyDown('ArrowUp'); // Week [11], 2012 |
186 shouldBeEqualToString('input.value', '2012-W11'); | 186 shouldBeEqualToString('input.value', '2012-W11'); |
187 input.readOnly = true; | 187 input.readOnly = true; |
188 keyDown('upArrow'); // Week [11], 2012 | 188 keyDown('ArrowUp'); // Week [11], 2012 |
189 shouldBeEqualToString('input.value', '2012-W11'); | 189 shouldBeEqualToString('input.value', '2012-W11'); |
190 input.readOnly = false; | 190 input.readOnly = false; |
191 input.focus(); | 191 input.focus(); |
192 keyDown('upArrow'); // Week [12], 2012 | 192 keyDown('ArrowUp'); // Week [12], 2012 |
193 shouldBeEqualToString('input.value', '2012-W12'); | 193 shouldBeEqualToString('input.value', '2012-W12'); |
194 | 194 |
195 </script> | 195 </script> |
196 </body> | 196 </body> |
197 </html> | 197 </html> |
OLD | NEW |