Changeset 73686 in webkit
- Timestamp:
- Dec 9, 2010 9:59:39 PM (13 years ago)
- Location:
- trunk
- Files:
-
- 3 added
- 14 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r73685 r73686 1 2010-12-09 Kenichi Ishibashi <bashi@google.com> 2 3 Reviewed by Kent Tamura. 4 5 Improve validation API support of <object> and <keygen> 6 https://bugs.webkit.org/show_bug.cgi?id=50663 7 8 Adds tests for validation API for <object>. 9 Tests for <output> and <keygen> are also added. 10 11 * fast/dom/plugin-attributes-enumeration-expected.txt: Updated. 12 * fast/forms/ValidityState-001-expected.txt: Updated. 13 * fast/forms/ValidityState-001.html: Updated. 14 * fast/forms/checkValidity-001-expected.txt: Updated. 15 * fast/forms/checkValidity-001.html: Updated. 16 * fast/forms/script-tests/setCustomValidity-existence.js: Added. 17 * fast/forms/script-tests/validationMessage.js: Updated. 18 * fast/forms/script-tests/willvalidate.js: Updated. 19 * fast/forms/setCustomValidity-existence-expected.txt: Added. 20 * fast/forms/setCustomValidity-existence.html: Added. 21 * fast/forms/validationMessage-expected.txt: Updated. 22 * fast/forms/willvalidate-expected.txt: Updated. 23 1 24 2010-12-09 Sadrul Habib Chowdhury <sadrul@chromium.org> 2 25 -
trunk/LayoutTests/fast/dom/plugin-attributes-enumeration-expected.txt
r47444 r73686 19 19 type 20 20 useMap 21 validationMessage 22 validity 21 23 vspace 22 24 willValidate -
trunk/LayoutTests/fast/forms/ValidityState-001-expected.txt
r46099 r73686 1 1 Each form control in this document exposes a validity attribute that returns a live instance of ValidityState. 2 2 3 4 SUCCESS 5 SUCCESS 6 SUCCESS 7 SUCCESS 8 SUCCESS 3 4 Test for FIELDSET: SUCCESS 5 Test for SELECT: SUCCESS 6 Test for INPUT: SUCCESS 7 Test for TEXTAREA: SUCCESS 8 Test for BUTTON: SUCCESS 9 Test for OUTPUT: SUCCESS 10 Test for OBJECT: SUCCESS 11 Test for KEYGEN: SUCCESS -
trunk/LayoutTests/fast/forms/ValidityState-001.html
r46099 r73686 23 23 24 24 for (i = 0; i < v.length; i++) 25 log( (v[i].validity && countAttr(v[i].validity) == 9) ? "SUCCESS" : "FAILURE");25 log('Test for ' + v[i].tagName + ': ' + ((v[i].validity && countAttr(v[i].validity) == 9) ? "SUCCESS" : "FAILURE")); 26 26 } 27 27 </script> … … 35 35 <textarea name="victim"></textarea> 36 36 <button name="victim"></button> 37 <output name="victim"></output> 38 <object name="victim"></object> 39 <keygen name="victim"></keygen> 37 40 </fieldset> 38 41 <hr> -
trunk/LayoutTests/fast/forms/checkValidity-001-expected.txt
r47649 r73686 4 4 5 5 6 lorem ipsum 7 PASS v[i].checkValidity() is true 8 PASS v[i].checkValidity() is true 9 PASS v[i].checkValidity() is true 10 PASS v[i].checkValidity() is true 11 PASS v[i].checkValidity() is true 6 lorem ipsum 7 PASS document.getElementsByTagName("fieldset")[0].checkValidity() is true 8 PASS document.getElementsByTagName("input")[0].checkValidity() is true 9 PASS document.getElementsByTagName("button")[0].checkValidity() is true 10 PASS document.getElementsByTagName("select")[0].checkValidity() is true 11 PASS document.getElementsByTagName("textarea")[0].checkValidity() is true 12 PASS document.getElementsByTagName("output")[0].checkValidity() is true 13 PASS document.getElementsByTagName("object")[0].checkValidity() is true 14 PASS document.getElementsByTagName("keygen")[0].checkValidity() is true 12 15 PASS successfullyParsed is true 13 16 -
trunk/LayoutTests/fast/forms/checkValidity-001.html
r47649 r73686 13 13 <select name="victim"></select> 14 14 <textarea name="victim"></textarea> 15 <output name="victim"></output> 16 <object name="victim"></object> 17 <keygen name="victim"></keygen> 15 18 </form> 16 19 <div id="console"></div> … … 18 21 description("This test checks if checkValidity() returns correctly a true (meaning no error) result."); 19 22 20 v = document.getElementsByName("victim"); 21 for (i = 0; i < v.length; i++) 22 shouldBe("v[i].checkValidity()", "true"); 23 shouldBe('document.getElementsByTagName("fieldset")[0].checkValidity()', 'true'); 24 shouldBe('document.getElementsByTagName("input")[0].checkValidity()', 'true'); 25 shouldBe('document.getElementsByTagName("button")[0].checkValidity()', 'true'); 26 shouldBe('document.getElementsByTagName("select")[0].checkValidity()', 'true'); 27 shouldBe('document.getElementsByTagName("textarea")[0].checkValidity()', 'true'); 28 shouldBe('document.getElementsByTagName("output")[0].checkValidity()', 'true'); 29 shouldBe('document.getElementsByTagName("object")[0].checkValidity()', 'true'); 30 shouldBe('document.getElementsByTagName("keygen")[0].checkValidity()', 'true'); 23 31 24 32 var successfullyParsed = true; -
trunk/LayoutTests/fast/forms/script-tests/validationMessage.js
r73606 r73686 63 63 shouldBe("happySelect.validationMessage", "''"); 64 64 65 // Output elements can't be validated 66 var happyOutput = document.createElement("output"); 67 happySelect.name = "output"; 68 form.appendChild(happyOutput); 69 shouldBe("happyOutput.validationMessage", "''"); 70 71 // Object elements can't be validated 72 var happyObject = document.createElement("object"); 73 happySelect.name = "object"; 74 form.appendChild(happyObject); 75 shouldBe("happyObject.validationMessage", "''"); 76 77 // Keygen controls can't be validated 78 var happyKeygen = document.createElement("keygen"); 79 happySelect.name = "keygen"; 80 form.appendChild(happyKeygen); 81 shouldBe("happyKeygen.validationMessage", "''"); 82 65 83 var successfullyParsed = true; -
trunk/LayoutTests/fast/forms/script-tests/willvalidate.js
r59647 r73686 11 11 + '<button name="victim">' 12 12 + '<select name="victim"></select>' 13 + '<output name="victim"></output>' 14 + '<object name="victim"></object>' 15 + '<keygen name="victim">' 13 16 + '</form>'; 14 17 var controls = document.getElementsByName('victim'); … … 66 69 shouldBeTrue('document.getElementsByTagName("textarea")[0].willValidate'); 67 70 71 debug(''); 72 debug('Output element'); 73 parent.innerHTML = '<form><output></output></form>'; 74 shouldBeFalse('document.getElementsByTagName("output")[0].willValidate'); 75 76 debug(''); 77 debug('Object element'); 78 parent.innerHTML = '<form><object></object></form>'; 79 shouldBeFalse('document.getElementsByTagName("object")[0].willValidate'); 80 81 debug(''); 82 debug('Keygen element'); 83 parent.innerHTML = '<form><keygen></form>'; 84 shouldBeFalse('document.getElementsByTagName("keygen")[0].willValidate'); 85 68 86 var successfullyParsed = true; -
trunk/LayoutTests/fast/forms/validationMessage-expected.txt
r73606 r73686 13 13 PASS happyFieldset.validationMessage is '' 14 14 PASS happySelect.validationMessage is '' 15 PASS happyOutput.validationMessage is '' 16 PASS happyObject.validationMessage is '' 17 PASS happyKeygen.validationMessage is '' 15 18 PASS successfullyParsed is true 16 19 -
trunk/LayoutTests/fast/forms/willvalidate-expected.txt
r59647 r73686 5 5 6 6 Existence of .willValidate 7 PASS typeof controls[i].willValidate is "boolean" 8 PASS typeof controls[i].willValidate is "boolean" 9 PASS typeof controls[i].willValidate is "boolean" 7 10 PASS typeof controls[i].willValidate is "boolean" 8 11 PASS typeof controls[i].willValidate is "boolean" … … 37 40 Textarea element 38 41 PASS document.getElementsByTagName("textarea")[0].willValidate is true 42 43 Output element 44 PASS document.getElementsByTagName("output")[0].willValidate is false 45 46 Object element 47 PASS document.getElementsByTagName("object")[0].willValidate is false 48 49 Keygen element 50 PASS document.getElementsByTagName("keygen")[0].willValidate is false 39 51 PASS successfullyParsed is true 40 52 -
trunk/WebCore/ChangeLog
r73685 r73686 1 2010-12-09 Kenichi Ishibashi <bashi@google.com> 2 3 Reviewed by Kent Tamura. 4 5 Improve validation API support of <object> and <keygen> 6 https://bugs.webkit.org/show_bug.cgi?id=50663 7 8 Adds validation API to HTMLObjectElement class. 9 Makes HTMLKeygenElement::willValidate() return false. 10 11 Test: fast/forms/setCustomValidity-existence.html 12 13 * html/HTMLKeygenElement.h: 14 (WebCore::HTMLKeygenElement::willValidate): Added. 15 * html/HTMLObjectElement.h: 16 (WebCore::HTMLObjectElement::validationMessage): Added. 17 (WebCore::HTMLObjectElement::checkValidity): Added. 18 (WebCore::HTMLObjectElement::setCustomValidity): Added. 19 * html/HTMLObjectElement.idl: Added validation API properties. 20 1 21 2010-12-09 Sadrul Habib Chowdhury <sadrul@chromium.org> 2 22 -
trunk/WebCore/html/HTMLKeygenElement.h
r72835 r73686 40 40 virtual bool appendFormData(FormDataList&, bool); 41 41 42 virtual bool willValidate() const { return false; } 42 43 virtual bool isOptionalFormControl() const { return false; } 43 44 -
trunk/WebCore/html/HTMLObjectElement.h
r73430 r73686 53 53 virtual bool appendFormData(FormDataList&, bool); 54 54 55 // Implementations of constraint validation API. 56 // Note that the object elements are always barred from constraint validation. 57 String validationMessage() { return String(); } 58 bool checkValidity() { return true; } 59 void setCustomValidity(const String&) { } 60 55 61 virtual void attributeChanged(Attribute*, bool preserveDecls = false); 56 62 -
trunk/WebCore/html/HTMLObjectElement.idl
r66327 r73686 44 44 attribute [Reflect] DOMString width; 45 45 readonly attribute boolean willValidate; 46 readonly attribute ValidityState validity; 47 readonly attribute DOMString validationMessage; 48 boolean checkValidity(); 49 void setCustomValidity(in [ConvertUndefinedOrNullToNullString] DOMString error); 46 50 47 51 // Introduced in DOM Level 2:
Note: See TracChangeset
for help on using the changeset viewer.