Index: LayoutTests/imported/web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate.html |
diff --git a/LayoutTests/imported/web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate.html b/LayoutTests/imported/web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate.html |
new file mode 100644 |
index 0000000000000000000000000000000000000000..189d2678443f7bc74cb83d022468a7e3072247a9 |
--- /dev/null |
+++ b/LayoutTests/imported/web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate.html |
@@ -0,0 +1,90 @@ |
+<!DOCTYPE html> |
+<meta charset="utf-8"> |
+<title>The constraint validation API Test: element.willValidate</title> |
+<link rel="author" title="Intel" href="http://www.intel.com/"> |
+<link rel="help" href="https://html.spec.whatwg.org/multipage/#dom-cva-willvalidate"> |
+<link rel="help" href="https://html.spec.whatwg.org/multipage/#the-constraint-validation-api"> |
+<script src="../../../../../../resources/testharness.js"></script> |
+<script src="../../../../../../resources/testharnessreport.js"></script> |
+<script src="support/validator.js"></script> |
+<div id="log"></div> |
+<script> |
+ var testElements = [ |
+ //input in hidden, button and reset status must be barred from the constraint validation |
+ { |
+ tag: "input", |
+ types: ["hidden", "button", "reset"], |
+ testData: [{conditions: {}, expected: false, name: "[target] Must be barred from the constraint validation"}] |
+ }, |
+ //button in button and reset status must be barred from the constraint validation |
+ { |
+ tag: "button", |
+ types: ["button", "reset"], |
+ testData: [{conditions: {}, expected: false, name: "[target] Must be barred from the constraint validation"}] |
+ }, |
+ //FIELDSET, OUTPUT elements should not be barred from the constraint validation |
+ { |
+ tag: "fieldset", |
+ types: [], |
+ testData: [{conditions: {}, expected: true, name: "[target] Must not be barred from the constraint validation"}] |
+ }, |
+ { |
+ tag: "output", |
+ types: [], |
+ testData: [{conditions: {}, expected: true, name: "[target] Must not be barred from the constraint validation"}] |
+ }, |
+ //OBJECT, KEYGEN, elements must be barred from the constraint validation |
+ { |
+ tag: "object", |
+ types: [], |
+ testData: [{conditions: {}, expected: false, name: "[target] Must be barred from the constraint validation"}] |
+ }, |
+ { |
+ tag: "keygen", |
+ types: [], |
+ testData: [{conditions: {}, expected: false, name: "[target] Must be barred from the constraint validation"}] |
+ }, |
+ //If an element is disabled, it is barred from constraint validation. |
+ //The willValidate attribute must be true if an element is mutable |
+ //If the readonly attribute is specified on an INPUT element, the element is barred from constraint validation. |
+ { |
+ tag: "input", |
+ types: ["text", "search", "tel", "url", "email", "password", "datetime", "date", "month", "week", "time", "color", "file", "submit"], |
+ testData: [ |
+ {conditions: {disabled: true}, expected: false, name: "[target] Must be barred from the constraint validation if it is disabled"}, |
+ {conditions: {disabled: false, readOnly: false}, expected: true, name: "[target] The willValidate attribute must be true if an elment is mutable"}, |
+ {conditions: {readOnly: true}, expected: false, name: "[target] Must be barred from the constraint validation if it is readonly"}, |
+ {conditions: {disabled: false, readOnly: false}, expected: false, name: "[target] The willValidate attribute must be false if it has a datalist ancestor", ancestor: "datalist"}, |
+ ] |
+ }, |
+ { |
+ tag: "button", |
+ types: ["submit"], |
+ testData: [ |
+ {conditions: {disabled: true}, expected: false, name: "[target] Must be barred from the constraint validation"}, |
+ {conditions: {disabled: false}, expected: true, name: "[target] The willValidate attribute must be true if an elment is mutable"}, |
+ {conditions: {disabled: false}, expected: false, name: "[target] The willValidate attribute must be false if it has a datalist ancestor", ancestor: "datalist"} |
+ ] |
+ }, |
+ { |
+ tag: "select", |
+ types: [], |
+ testData: [ |
+ {conditions: {disabled: true}, expected: false, name: "[target] Must be barred from the constraint validation"}, |
+ {conditions: {disabled: false}, expected: true, name: "[target] The willValidate attribute must be true if an elment is mutable"}, |
+ {conditions: {disabled: false}, expected: false, name: "[target] The willValidate attribute must be false if it has a datalist ancestor", ancestor: "datalist"} |
+ ] |
+ }, |
+ { |
+ tag: "textarea", |
+ types: [], |
+ testData: [, |
+ {conditions: {disabled: true}, expected: false, name: "[target] Must be barred from the constraint validation"}, |
+ {conditions: {disabled: false}, expected: true, name: "[target] The willValidate attribute must be true if an elment is mutable"}, |
+ {conditions: {disabled: false}, expected: false, name: "[target] The willValidate attribute must be false if it has a datalist ancestor", ancestor: "datalist"} |
+ ] |
+ } |
+ ]; |
+ |
+ validator.run_test(testElements, "willValidate"); |
+</script> |