- add third_party src.
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / LayoutTests / fast / forms / ValidityState-patternMismatch.html
1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
2 <html>
3 <head>
4 <meta http-equiv="X-UA-Compatible" content="IE=edge" />
5 <script src="../../fast/js/resources/js-test-pre.js"></script>
6 </head>
7 <body>
8 <p id="description"></p>
9 <div id="console"></div>
10 <div id=container>
11 <input id="simple" pattern="[0-9][A-Z]{3}" value="0AAA"
12 /><input id="no-pattern-and-no-value" 
13 /><input id="ip-address" type="text" pattern="\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b" value="127.0.0.1" 
14 /><input id="email-address" type="text" pattern="[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?" value="someone@somewhere.com" 
15 /><input id="wrong-email-address" type="text" pattern="[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?" value="Wrong!"
16 /><input id="match-1" type="text" pattern="\b(word1|word2|word3)(?:\W+\w+){1,6}?\W+(word1|word2|word3)\b" value="word1 near word2" 
17 /><input id="match-2" type="text" pattern=".{5,}" value="12345" 
18 /><input id="match-3" type="text" pattern=".{5,}" value="*(@$!" 
19 /><input id="match-4" type="text" pattern=".{5,}" value="*(@^$!" 
20 /><input id="match-5" type="text" pattern="0|1|2|3|4|5|6|7|8|" value="3" 
21 /><input id="match-6" type="text" pattern="^(foo).*" value="foo"
22 /><input id="match-7" type="text" pattern="^(foo).*" value="fooo"
23 /><input id="match-8" type="text" pattern="\w" value="f"
24 /><input id="match-9" type="text" pattern="\." value="."
25 /><input id="match-10" type="text" pattern="\)\(" value=")("
26 /><input id="match-11" type="text" pattern="ab" value="ab"
27 /><input id="match-12" type="text" pattern="^ab" value="ab"
28 /><input id="match-13" type="text" pattern="^\(" value="("
29 /><input id="match-14" type="text" pattern="...\)\(..." value="aaa)(bbb"
30 /><input id="match-15" type="text" pattern="^" value=""
31 /><input id="match-16" type="text" pattern="$" value=""
32 /><input id="match-17" type="text" pattern="foobar" value="" />
33 <input id="match-18" type="text" pattern="[0-9]|10|11|12" value="10" />
34 <input id="match-19" type="text" pattern="10|11|12|[0-9]" value="12" />
35 <input id="match-20" type="text" pattern="f(o|e)\1" value="foo" />
36 <input id="empty-pattern-match" type="text" pattern="" value="" />
37 <input id="wrong-gray-or-grey" type="text" pattern="gr[ae]y" value="Wrong!"
38 /><input id="gray" type="text" pattern="gr[ae]y" value="gray"
39 /><input id="grey" type="text" pattern="gr[ae]y" value="grey"
40 /><input id="empty-gray-or-grey" type="text" pattern="gr[ae]y" value=""
41 /><input id="mismatch-1" type="text" pattern="((4\.[0-3])|(2\.[0-3]))" value="Something 4.0"
42 /><input id="mismatch-2" type="text" pattern="\w" value="*"
43 /><input id="mismatch-3" type="email" pattern="[0-9]" value="something"
44 /><input id="mismatch-4" type="text" pattern=".{5,}" value="1234" 
45 /><input id="mismatch-5" type="text" pattern=".{5,}" value="*)$!" 
46 /><input id="mismatch-6" type="text" pattern=".{5,}" value="(^$!" 
47 /><input id="mismatch-7" type="text" pattern="0|1|2|3|4|5|6|7|8|" value="a" 
48 /><input id="mismatch-8" type="text" pattern="^(foo).*" value="a foo"
49 /><input id="mismatch-9" type="text" pattern="\w" value="134"
50 /><input id="mismatch-10" type="text" pattern="\." value="\."
51 /><input id="mismatch-11" type="text" pattern="\)\(" value=") ("
52 /><input id="mismatch-12" type="text" pattern="ab" value="a"
53 /><input id="mismatch-13" type="text" pattern="ab" value="b"
54 /><input id="mismatch-14" type="text" pattern="^ab" value="abc"
55 /><input id="mismatch-15" type="text" pattern="^\(" value="(something"
56 /><input id="mismatch-16" type="text" pattern="\)\\" value="something)\"
57 /><input id="mismatch-17" type="text" pattern="...\)\([b]{3}" value="adf)(bbbTEST"
58 /><input id="mismatch-18" type="text" pattern="foo\\" value="food"
59 /><input id="mismatch-19" type="text" pattern="^" value="wrong"
60 /><input id="mismatch-20" type="text" pattern="$" value="wrong"
61 /><input id="mismatch-21" type="text" pattern="f(o|e)\1" value="foe"/>
62
63 <input id="invalid-01" type="text" pattern=")foo(" value="foo"/>
64 <input id="invalid-02" type="text" pattern=")foo(" value="foobar"/>
65 <input id="invalid-03" type="text" pattern=")foo(" value=")foo"/>
66 <input id="invalid-04" type="text" pattern="foo\" value="foo\"/>
67 <input id="invalid-05" type="text" pattern="[0-9" value="1"/>
68 <input id="invalid-06" type="text" pattern="[0-9" value="a"/>
69
70 <input id="empty-pattern-mismatch" type="text" pattern="" value="Lorem Ipsum"
71 /><input id="disabled" pattern="[0-9][A-Z]{3}" value="00AA" disabled /></div>
72 <script language="JavaScript" type="text/javascript">
73 function patternMismatchFor(id) {
74     return document.getElementById(id).validity.patternMismatch;
75 }
76
77 description("This test checks validity.patternMismatch.");
78
79 shouldBeFalse('patternMismatchFor("simple")');
80 shouldBeFalse('patternMismatchFor("no-pattern-and-no-value")');
81 shouldBeFalse('patternMismatchFor("ip-address")');
82 shouldBeFalse('patternMismatchFor("email-address")');
83 shouldBeTrue('patternMismatchFor("wrong-email-address")');
84
85 shouldBeFalse('patternMismatchFor("match-1")');
86 shouldBeFalse('patternMismatchFor("match-2")');
87 shouldBeFalse('patternMismatchFor("match-3")');
88 shouldBeFalse('patternMismatchFor("match-4")');
89 shouldBeFalse('patternMismatchFor("match-5")');
90 shouldBeFalse('patternMismatchFor("match-6")');
91 shouldBeFalse('patternMismatchFor("match-7")');
92 shouldBeFalse('patternMismatchFor("match-8")');
93 shouldBeFalse('patternMismatchFor("match-9")');
94 shouldBeFalse('patternMismatchFor("match-10")');
95 shouldBeFalse('patternMismatchFor("match-11")');
96 shouldBeFalse('patternMismatchFor("match-12")');
97 shouldBeFalse('patternMismatchFor("match-13")');
98 shouldBeFalse('patternMismatchFor("match-14")');
99 shouldBeFalse('patternMismatchFor("match-15")');
100 shouldBeFalse('patternMismatchFor("match-16")');
101 shouldBeFalse('patternMismatchFor("match-17")');
102 shouldBeFalse('patternMismatchFor("match-18")');
103 shouldBeFalse('patternMismatchFor("match-19")');
104 shouldBeFalse('patternMismatchFor("match-20")');
105
106 shouldBeTrue('patternMismatchFor("wrong-gray-or-grey")');
107 shouldBeFalse('patternMismatchFor("gray")');
108 shouldBeFalse('patternMismatchFor("grey")');
109 shouldBeFalse('patternMismatchFor("empty-gray-or-grey")');
110
111 shouldBeTrue('patternMismatchFor("mismatch-1")');
112 shouldBeTrue('patternMismatchFor("mismatch-2")');
113 shouldBeTrue('patternMismatchFor("mismatch-3")');
114 shouldBeTrue('patternMismatchFor("mismatch-4")');
115 shouldBeTrue('patternMismatchFor("mismatch-5")');
116 shouldBeTrue('patternMismatchFor("mismatch-6")');
117 shouldBeTrue('patternMismatchFor("mismatch-7")');
118 shouldBeTrue('patternMismatchFor("mismatch-8")');
119 shouldBeTrue('patternMismatchFor("mismatch-9")');
120 shouldBeTrue('patternMismatchFor("mismatch-10")');
121 shouldBeTrue('patternMismatchFor("mismatch-11")');
122 shouldBeTrue('patternMismatchFor("mismatch-12")');
123 shouldBeTrue('patternMismatchFor("mismatch-13")');
124 shouldBeTrue('patternMismatchFor("mismatch-14")');
125 shouldBeTrue('patternMismatchFor("mismatch-15")');
126 shouldBeTrue('patternMismatchFor("mismatch-16")');
127 shouldBeTrue('patternMismatchFor("mismatch-17")');
128 shouldBeTrue('patternMismatchFor("mismatch-18")');
129 shouldBeTrue('patternMismatchFor("mismatch-19")');
130 shouldBeTrue('patternMismatchFor("mismatch-20")');
131 shouldBeTrue('patternMismatchFor("mismatch-21")');
132
133 shouldBeFalse('patternMismatchFor("empty-pattern-match")');
134 shouldBeTrue('patternMismatchFor("empty-pattern-mismatch")');
135
136 shouldBeFalse('patternMismatchFor("invalid-01")');
137 shouldBeFalse('patternMismatchFor("invalid-02")');
138 shouldBeFalse('patternMismatchFor("invalid-03")');
139 shouldBeFalse('patternMismatchFor("invalid-04")');
140 shouldBeFalse('patternMismatchFor("invalid-05")');
141 shouldBeFalse('patternMismatchFor("invalid-06")');
142
143 shouldBeFalse('patternMismatchFor("disabled")');
144
145 document.body.removeChild(document.getElementById('container'));
146 </script>
147 </body>
148 </html>