| <html> |
| <head> |
| <title></title> |
| </head> |
| <body> |
| <p>This test verifies a drop-down menu can refine the selection when we send keydown events consisting of Greek small characters.</p> |
| <select id="test"> |
| <option value="-1">should not see me</option> |
| <option value="0">Α</option> |
| <option value="1">ΑΒ</option> |
| <option value="2">ΑΒΓ</option> |
| <option value="3">ΑΒΓΔ</option> |
| <option value="4">ΑΒΓΔΕ</option> |
| <option value="5">ΑΒΓΔΕΖ</option> |
| <option value="6">ΑΒΓΔΕΖΗ</option> |
| <option value="7">ΑΒΓΔΕΖΗΘ</option> |
| <option value="8">ΑΒΓΔΕΖΗΘΙ</option> |
| <option value="9">ΑΒΓΔΕΖΗΘΙΚ</option> |
| <option value="10">ΑΒΓΔΕΖΗΘΙΚΛ</option> |
| <option value="11">ΑΒΓΔΕΖΗΘΙΚΛΜ</option> |
| <option value="12">ΑΒΓΔΕΖΗΘΙΚΛΜΝ</option> |
| <option value="13">ΑΒΓΔΕΖΗΘΙΚΛΜΝΞ</option> |
| <option value="14">ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟ</option> |
| <option value="15">ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠ</option> |
| <option value="16">ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡ</option> |
| <option value="18">ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣ</option> |
| <option value="19">ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤ</option> |
| <option value="20">ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥ</option> |
| <option value="21">ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦ</option> |
| <option value="22">ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧ</option> |
| <option value="23">ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨ</option> |
| <option value="24">ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩ</option> |
| </select> |
| <ul id="console"></ul> |
| </body> |
| <script> |
| function log(str) { |
| var li = document.createElement("li"); |
| li.appendChild(document.createTextNode(str)); |
| var console = document.getElementById("console"); |
| console.appendChild(li); |
| } |
| |
| if (window.testRunner) |
| window.testRunner.dumpAsText(); |
| |
| // Set the input focus to the <select> element. |
| var node = document.getElementById("test"); |
| node.focus(); |
| |
| var base = 0x03B1; |
| for (var i = base; i <= 0x03C9; i++) { |
| // We don't have to send U+03C2 (Greek Small Letter Final Sigma). |
| if (i != 0x03C2) { |
| // Send a key event consisting of a Greek small character. |
| eventSender.keyDown(String.fromCharCode(i)); |
| |
| // Compare the value of this <select> element with the expected result. |
| if (node.value == i - base) |
| log('SUCCEEDED'); |
| else |
| log('FAILED: expected="' + i + '", actual="' + node.value + '".'); |
| } |
| } |
| </script> |
| </html> |