| 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 29 matching lines...) Expand all Loading... |
| 40 input.min = opt_min ? opt_min : ""; | 40 input.min = opt_min ? opt_min : ""; |
| 41 input.max = opt_max ? opt_max : ""; | 41 input.max = opt_max ? opt_max : ""; |
| 42 input.blur(); | 42 input.blur(); |
| 43 input.focus(); | 43 input.focus(); |
| 44 } | 44 } |
| 45 | 45 |
| 46 // We assume the year-month format is "MMM yyyy". | 46 // We assume the year-month format is "MMM yyyy". |
| 47 | 47 |
| 48 beginTest('Digit keys'); | 48 beginTest('Digit keys'); |
| 49 keyDown('s'); | 49 keyDown('s'); |
| 50 keyDown('rightArrow'); | 50 keyDown('ArrowRight'); |
| 51 keyDown('0'); | 51 keyDown('0'); |
| 52 keyDown('1'); | 52 keyDown('1'); |
| 53 keyDown('2'); | 53 keyDown('2'); |
| 54 keyDown('A'); | 54 keyDown('A'); |
| 55 shouldBeEqualToString('input.value', '0012-09'); | 55 shouldBeEqualToString('input.value', '0012-09'); |
| 56 | 56 |
| 57 beginTest('Left/Right keys', '2012-09'); | 57 beginTest('Left/Right keys', '2012-09'); |
| 58 keyDown('rightArrow'); | 58 keyDown('ArrowRight'); |
| 59 keyDown('5'); | 59 keyDown('5'); |
| 60 keyDown('leftArrow'); | 60 keyDown('ArrowLeft'); |
| 61 keyDown('6'); | 61 keyDown('6'); |
| 62 shouldBeEqualToString('input.value', '0005-06'); | 62 shouldBeEqualToString('input.value', '0005-06'); |
| 63 keyDown('leftArrow'); | 63 keyDown('ArrowLeft'); |
| 64 keyDown('leftArrow'); | 64 keyDown('ArrowLeft'); |
| 65 keyDown('leftArrow'); | 65 keyDown('ArrowLeft'); |
| 66 shouldBeEqualToString('document.activeElement.id', 'input'); | 66 shouldBeEqualToString('document.activeElement.id', 'input'); |
| 67 | 67 |
| 68 beginTest('Up/Down keys', '2012-09'); | 68 beginTest('Up/Down keys', '2012-09'); |
| 69 keyDown('upArrow'); | 69 keyDown('ArrowUp'); |
| 70 shouldBeEqualToString('input.value', '2012-10'); | 70 shouldBeEqualToString('input.value', '2012-10'); |
| 71 keyDown('downArrow'); | 71 keyDown('ArrowDown'); |
| 72 keyDown('downArrow'); | 72 keyDown('ArrowDown'); |
| 73 shouldBeEqualToString('input.value', '2012-08'); | 73 shouldBeEqualToString('input.value', '2012-08'); |
| 74 | 74 |
| 75 // Note that empty value for the year field without min/max attributes is not | 75 // Note that empty value for the year field without min/max attributes is not |
| 76 // testable because its default value depends on the current date. | 76 // testable because its default value depends on the current date. |
| 77 beginTest('Up/Down keys on empty value', '', '2012-01'); | 77 beginTest('Up/Down keys on empty value', '', '2012-01'); |
| 78 keyDown('downArrow'); | 78 keyDown('ArrowDown'); |
| 79 keyDown('downArrow'); | 79 keyDown('ArrowDown'); |
| 80 keyDown('rightArrow'); | 80 keyDown('ArrowRight'); |
| 81 keyDown('upArrow'); | 81 keyDown('ArrowUp'); |
| 82 keyDown('upArrow'); | 82 keyDown('ArrowUp'); |
| 83 keyDown('downArrow'); | 83 keyDown('ArrowDown'); |
| 84 shouldBeEqualToString('input.value', '2012-11'); | 84 shouldBeEqualToString('input.value', '2012-11'); |
| 85 | 85 |
| 86 beginTest('Up/Down keys on empty value 2', '', undefined, '2012-01'); | 86 beginTest('Up/Down keys on empty value 2', '', undefined, '2012-01'); |
| 87 keyDown('upArrow'); | 87 keyDown('ArrowUp'); |
| 88 keyDown('upArrow'); | 88 keyDown('ArrowUp'); |
| 89 keyDown('rightArrow'); | 89 keyDown('ArrowRight'); |
| 90 keyDown('downArrow'); | 90 keyDown('ArrowDown'); |
| 91 keyDown('downArrow'); | 91 keyDown('ArrowDown'); |
| 92 keyDown('upArrow'); | 92 keyDown('ArrowUp'); |
| 93 shouldBeEqualToString('input.value', '2012-02'); | 93 shouldBeEqualToString('input.value', '2012-02'); |
| 94 | 94 |
| 95 beginTest('Tab key', '2012-09'); | 95 beginTest('Tab key', '2012-09'); |
| 96 keyDown('\t'); // -> Sep [2012] | 96 keyDown('\t'); // -> Sep [2012] |
| 97 keyDown('5'); // -> Sep [0005] | 97 keyDown('5'); // -> Sep [0005] |
| 98 shouldBeEqualToString('input.value', '0005-09'); | 98 shouldBeEqualToString('input.value', '0005-09'); |
| 99 keyDown('\t', ['shiftKey']); // -> [Sep] [0005] | 99 keyDown('\t', ['shiftKey']); // -> [Sep] [0005] |
| 100 keyDown('J'); // -> [Jan] 0005 | 100 keyDown('J'); // -> [Jan] 0005 |
| 101 shouldBeEqualToString('input.value', '0005-01'); | 101 shouldBeEqualToString('input.value', '0005-01'); |
| 102 keyDown('\t'); // -> Jan [0005] | 102 keyDown('\t'); // -> Jan [0005] |
| 103 keyDown('\t'); // -> Jan 0005 | 103 keyDown('\t'); // -> Jan 0005 |
| 104 shouldBeEqualToString('document.activeElement.id', 'another'); | 104 shouldBeEqualToString('document.activeElement.id', 'another'); |
| 105 | 105 |
| 106 beginTest('Shfit+Tab key', '2012-09'); | 106 beginTest('Shfit+Tab key', '2012-09'); |
| 107 another.focus(); | 107 another.focus(); |
| 108 keyDown('\t', ['shiftKey']); | 108 keyDown('\t', ['shiftKey']); |
| 109 keyDown('3'); | 109 keyDown('3'); |
| 110 shouldBeEqualToString('input.value', '0003-09'); | 110 shouldBeEqualToString('input.value', '0003-09'); |
| 111 keyDown('\t', ['shiftKey']); | 111 keyDown('\t', ['shiftKey']); |
| 112 keyDown('\t', ['shiftKey']); | 112 keyDown('\t', ['shiftKey']); |
| 113 shouldBeEqualToString('document.activeElement.id', 'before'); | 113 shouldBeEqualToString('document.activeElement.id', 'before'); |
| 114 | 114 |
| 115 beginTest('Up key on maximum value', '275760-09'); | 115 beginTest('Up key on maximum value', '275760-09'); |
| 116 keyDown('upArrow'); | 116 keyDown('ArrowUp'); |
| 117 keyDown('\t'); | 117 keyDown('\t'); |
| 118 keyDown('upArrow'); | 118 keyDown('ArrowUp'); |
| 119 shouldBeEqualToString('input.value', '0001-10'); | 119 shouldBeEqualToString('input.value', '0001-10'); |
| 120 beginTest('Up key with a maximum attribute', '1999-12', undefined, '1999-12'); | 120 beginTest('Up key with a maximum attribute', '1999-12', undefined, '1999-12'); |
| 121 keyDown('upArrow'); | 121 keyDown('ArrowUp'); |
| 122 keyDown('\t'); | 122 keyDown('\t'); |
| 123 keyDown('upArrow'); | 123 keyDown('ArrowUp'); |
| 124 shouldBeEqualToString('input.value', '0001-01'); | 124 shouldBeEqualToString('input.value', '0001-01'); |
| 125 | 125 |
| 126 beginTest('Down key on minimum value', '0001-01', 'bad min', 'wrong max'); | 126 beginTest('Down key on minimum value', '0001-01', 'bad min', 'wrong max'); |
| 127 keyDown('downArrow'); // -> 0001-12 | 127 keyDown('ArrowDown'); // -> 0001-12 |
| 128 keyDown('\t'); | 128 keyDown('\t'); |
| 129 keyDown('downArrow'); // -> 275760-12, which is greater than the hard limit. | 129 keyDown('ArrowDown'); // -> 275760-12, which is greater than the hard limit. |
| 130 shouldBeEqualToString('input.value', ''); | 130 shouldBeEqualToString('input.value', ''); |
| 131 beginTest('Down key with a minimum attribute', '0001-01', '0001-01'); | 131 beginTest('Down key with a minimum attribute', '0001-01', '0001-01'); |
| 132 keyDown('downArrow'); // -> 0001-12 | 132 keyDown('ArrowDown'); // -> 0001-12 |
| 133 keyDown('\t'); | 133 keyDown('\t'); |
| 134 keyDown('downArrow'); // -> 275760-12, which is greater than the hard limit. | 134 keyDown('ArrowDown'); // -> 275760-12, which is greater than the hard limit. |
| 135 shouldBeEqualToString('input.value', ''); | 135 shouldBeEqualToString('input.value', ''); |
| 136 | 136 |
| 137 beginTest('Inconsistent min-max attributes', '1999-12', '1999-12', '1000-01'); | 137 beginTest('Inconsistent min-max attributes', '1999-12', '1999-12', '1000-01'); |
| 138 keyDown('\t'); | 138 keyDown('\t'); |
| 139 keyDown('upArrow'); | 139 keyDown('ArrowUp'); |
| 140 shouldBeEqualToString('input.value', '1000-12'); | 140 shouldBeEqualToString('input.value', '1000-12'); |
| 141 keyDown('downArrow'); | 141 keyDown('ArrowDown'); |
| 142 shouldBeEqualToString('input.value', '1999-12'); | 142 shouldBeEqualToString('input.value', '1999-12'); |
| 143 | 143 |
| 144 beginTest('Backspace key', '2012-09'); | 144 beginTest('Backspace key', '2012-09'); |
| 145 keyDown("\b"); | 145 keyDown("Backspace"); |
| 146 shouldBeEqualToString('input.value', ''); | 146 shouldBeEqualToString('input.value', ''); |
| 147 | 147 |
| 148 beginTest('Delete key', '2012-09'); | 148 beginTest('Delete key', '2012-09'); |
| 149 keyDown("delete"); | 149 keyDown("Delete"); |
| 150 shouldBeEqualToString('input.value', ''); | 150 shouldBeEqualToString('input.value', ''); |
| 151 | 151 |
| 152 beginTest('Typeahead', '2012-12'); | 152 beginTest('Typeahead', '2012-12'); |
| 153 keyDown('rightArrow'); | 153 keyDown('ArrowRight'); |
| 154 keyDown('1'); | 154 keyDown('1'); |
| 155 shouldBeEqualToString('input.value', '0001-12'); | 155 shouldBeEqualToString('input.value', '0001-12'); |
| 156 keyDown('leftArrow'); | 156 keyDown('ArrowLeft'); |
| 157 keyDown('rightArrow'); | 157 keyDown('ArrowRight'); |
| 158 keyDown('2'); | 158 keyDown('2'); |
| 159 shouldBeEqualToString('input.value', '0002-12'); | 159 shouldBeEqualToString('input.value', '0002-12'); |
| 160 | 160 |
| 161 beginTest('Typeahead cycle first character', '2012-09'); | 161 beginTest('Typeahead cycle first character', '2012-09'); |
| 162 keyDown('j'); // -> [Jan] 2012 | 162 keyDown('j'); // -> [Jan] 2012 |
| 163 shouldBeEqualToString('input.value', '2012-01'); | 163 shouldBeEqualToString('input.value', '2012-01'); |
| 164 keyDown('j'); // -> [Jun] 2012 | 164 keyDown('j'); // -> [Jun] 2012 |
| 165 shouldBeEqualToString('input.value', '2012-06'); | 165 shouldBeEqualToString('input.value', '2012-06'); |
| 166 keyDown('j'); // -> [Jul] 2012 | 166 keyDown('j'); // -> [Jul] 2012 |
| 167 shouldBeEqualToString('input.value', '2012-07'); | 167 shouldBeEqualToString('input.value', '2012-07'); |
| (...skipping 20 matching lines...) Expand all Loading... |
| 188 keyDown('x'); // -> [Dec] 2012 | 188 keyDown('x'); // -> [Dec] 2012 |
| 189 shouldBeEqualToString('input.value', '2012-12'); | 189 shouldBeEqualToString('input.value', '2012-12'); |
| 190 | 190 |
| 191 beginTest('Typeahead should search from current selection', '2012-01'); | 191 beginTest('Typeahead should search from current selection', '2012-01'); |
| 192 keyDown('j'); // -> [Jun] 2012 | 192 keyDown('j'); // -> [Jun] 2012 |
| 193 shouldBeEqualToString('input.value', '2012-06'); | 193 shouldBeEqualToString('input.value', '2012-06'); |
| 194 | 194 |
| 195 input.setAttribute("lang", "he-il"); | 195 input.setAttribute("lang", "he-il"); |
| 196 beginTest('RTL focus navigation', '2012-09'); | 196 beginTest('RTL focus navigation', '2012-09'); |
| 197 debug('The tests in this block fail on platforms without the lang-attribute-awar
e-form-control-UI feature.'); | 197 debug('The tests in this block fail on platforms without the lang-attribute-awar
e-form-control-UI feature.'); |
| 198 keyDown('upArrow'); // -> 2012 [M10] | 198 keyDown('ArrowUp'); // -> 2012 [M10] |
| 199 shouldBeEqualToString('input.value', '2012-10'); | 199 shouldBeEqualToString('input.value', '2012-10'); |
| 200 keyDown('\t'); // -> [2012] M10 | 200 keyDown('\t'); // -> [2012] M10 |
| 201 keyDown('2'); // -> [0002] M10 | 201 keyDown('2'); // -> [0002] M10 |
| 202 shouldBeEqualToString('input.value', '0002-10'); | 202 shouldBeEqualToString('input.value', '0002-10'); |
| 203 keyDown('\t', ['shiftKey']); // -> 0002 [M10] | 203 keyDown('\t', ['shiftKey']); // -> 0002 [M10] |
| 204 keyDown('upArrow'); // -> 0002 [M11] | 204 keyDown('ArrowUp'); // -> 0002 [M11] |
| 205 shouldBeEqualToString('input.value', '0002-11'); | 205 shouldBeEqualToString('input.value', '0002-11'); |
| 206 input.removeAttribute("lang"); | 206 input.removeAttribute("lang"); |
| 207 </script> | 207 </script> |
| 208 </body> | 208 </body> |
| 209 </html> | 209 </html> |
| OLD | NEW |