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

Side by Side Diff: LayoutTests/fast/forms/number/number-validity-badinput.html

Issue 1100273002: input[type=number] UI should reject invalid characters. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 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
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 <style> 5 <style>
6 :invalid { 6 :invalid {
7 background-color: #ff0000; 7 background-color: #ff0000;
8 } 8 }
9 </style> 9 </style>
10 </head> 10 </head>
(...skipping 22 matching lines...) Expand all
33 shouldBeFalse('number.validity.valid'); 33 shouldBeFalse('number.validity.valid');
34 shouldBeTrue('number.validity.badInput'); 34 shouldBeTrue('number.validity.badInput');
35 shouldBeEqualToString('number.value', ''); 35 shouldBeEqualToString('number.value', '');
36 36
37 debug("Type '1' additionally. The element becomes valid."); 37 debug("Type '1' additionally. The element becomes valid.");
38 document.execCommand('InsertText', false, '1'); 38 document.execCommand('InsertText', false, '1');
39 shouldNotBe('colorOf(number)', 'invalidStyleColor'); 39 shouldNotBe('colorOf(number)', 'invalidStyleColor');
40 shouldBeFalse('number.validity.badInput'); 40 shouldBeFalse('number.validity.badInput');
41 shouldBeEqualToString('number.value', '-1'); 41 shouldBeEqualToString('number.value', '-1');
42 42
43 debug("Type 'a' additionally. The element becomes badInput again."); 43 debug("Type '-' additionally. The element becomes badInput again.");
44 document.execCommand('InsertText', false, 'a'); 44 document.execCommand('InsertText', false, '-');
45 shouldBe('colorOf(number)', 'invalidStyleColor'); 45 shouldBe('colorOf(number)', 'invalidStyleColor');
46 shouldBeTrue('number.validity.badInput'); 46 shouldBeTrue('number.validity.badInput');
47 shouldBeEqualToString('number.value', ''); 47 shouldBeEqualToString('number.value', '');
48 48
49 debug("The element losts focus. The element state should not be changed."); 49 debug("The element losts focus. The element state should not be changed.");
50 document.getElementById('another').focus(); 50 document.getElementById('another').focus();
51 shouldBe('colorOf(number)', 'invalidStyleColor'); 51 shouldBe('colorOf(number)', 'invalidStyleColor');
52 shouldBeTrue('number.validity.badInput'); 52 shouldBeTrue('number.validity.badInput');
53 // Visible value is '-1a'. 53 // Visible value is '-1-'.
54 number.focus(); 54 number.focus();
55 document.execCommand('SelectAll'); 55 document.execCommand('SelectAll');
56 shouldBeEqualToString('document.getSelection().toString()', '-1a'); 56 shouldBeEqualToString('document.getSelection().toString()', '-1-');
57 shouldBeEqualToString('number.value', ''); 57 shouldBeEqualToString('number.value', '');
58 58
59 debug("The element losts a renderer. The element state should not be changed."); 59 debug("The element losts a renderer. The element state should not be changed.");
60 shouldBeTrue('number.style.display = "none"; number.validity.badInput'); 60 shouldBeTrue('number.style.display = "none"; number.validity.badInput');
61 61
62 number.style.display = 'inline-block'; 62 number.style.display = 'inline-block';
63 number.focus(); 63 number.focus();
64 debug('A bad input should be cleared by value="".'); 64 debug('A bad input should be cleared by value="".');
65 shouldBeEqualToString('number.value = ""; document.execCommand("SelectAll"); doc ument.getSelection().toString()', ''); 65 shouldBeEqualToString('number.value = ""; document.execCommand("SelectAll"); doc ument.getSelection().toString()', '');
66 66
67 debug('Setting a valud value via |value| IDL attribute should clear badInput.'); 67 debug('Setting a valud value via |value| IDL attribute should clear badInput.');
68 document.execCommand('InsertText', false, 'non-number'); 68 document.execCommand('InsertText', false, 'non-number');
69 shouldBeTrue('number.validity.badInput'); 69 shouldBeTrue('number.validity.badInput');
70 shouldBeFalse('number.checkValidity()'); 70 shouldBeFalse('number.checkValidity()');
71 number.value = '123'; 71 number.value = '123';
72 shouldBeFalse('number.validity.badInput'); 72 shouldBeFalse('number.validity.badInput');
73 shouldBeTrue('number.checkValidity()'); 73 shouldBeTrue('number.checkValidity()');
74 74
75 document.getElementById('parent').innerHTML = ''; 75 document.getElementById('parent').innerHTML = '';
76 </script> 76 </script>
77 </body> 77 </body>
78 </html> 78 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698