cdumez@apple.com | 01d5942 | 2017-01-06 18:55:35 +0000 | [diff] [blame] | 1 | <!DOCTYPE html> |
| 2 | <html> |
| 3 | <body> |
| 4 | <script src="../../resources/js-test-pre.js"></script> |
| 5 | <form id="testForm"> |
| 6 | <input type="submit" id="submitButton"> |
| 7 | </form> |
| 8 | <script> |
| 9 | description("Tests the validation message when maxlength is used."); |
| 10 | |
| 11 | var form = document.getElementById("testForm"); |
| 12 | var submit = document.getElementById("submitButton"); |
| 13 | |
| 14 | var input = document.createElement("input"); |
| 15 | input.value = "abcd"; |
| 16 | input.maxLength = 2; |
| 17 | form.prepend(input); |
| 18 | |
| 19 | input.focus(); |
| 20 | eventSender.keyDown(String.fromCharCode(0x0008)); // Delete. |
| 21 | shouldBeEqualToString("input.value", "abc"); |
| 22 | shouldBeFalse("input.checkValidity()"); |
| 23 | shouldBeEqualToString("input.validationMessage", "Use no more than 2 characters"); |
| 24 | |
| 25 | input.maxLength = 1; |
| 26 | eventSender.keyDown(String.fromCharCode(0x0008)); // Delete. |
| 27 | shouldBeEqualToString("input.value", "ab"); |
| 28 | shouldBeFalse("input.checkValidity()"); |
| 29 | shouldBeEqualToString("input.validationMessage", "Use no more than one character"); |
| 30 | |
| 31 | input.maxLength = 0; |
| 32 | eventSender.keyDown(String.fromCharCode(0x0008)); // Delete. |
| 33 | shouldBeEqualToString("input.value", "a"); |
| 34 | shouldBeFalse("input.checkValidity()"); |
| 35 | shouldBeEqualToString("input.validationMessage", "Use no more than 0 characters"); |
| 36 | </script> |
| 37 | <script src="../../resources/js-test-post.js"></script> |
| 38 | </body> |
| 39 | </html> |