diff options
Diffstat (limited to 'third_party/WebKit/LayoutTests/fast/forms/file/file-input-empty-validation.html')
-rw-r--r-- | third_party/WebKit/LayoutTests/fast/forms/file/file-input-empty-validation.html | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/third_party/WebKit/LayoutTests/fast/forms/file/file-input-empty-validation.html b/third_party/WebKit/LayoutTests/fast/forms/file/file-input-empty-validation.html new file mode 100644 index 0000000..26c12a3 --- /dev/null +++ b/third_party/WebKit/LayoutTests/fast/forms/file/file-input-empty-validation.html @@ -0,0 +1,43 @@ +<!DOCTYPE html> +<script src="../../../resources/js-test.js"></script> +<form method="GET" onsubmit="finish(false)"> +<input type="file" oninvalid="finish(true)" required> +<input type="submit"> +</form> +<pre id="console"></pre> +<script> +description("This tests that a file input cleared of its (required) value doesn't validate."); + +var invalid = false; +function finish(pass) +{ + invalid = pass; + shouldBeTrue("invalid"); + finishJSTest(); +} + +function moveMouseToCenterOfElement(element) { + var centerX = element.offsetLeft + element.offsetWidth / 2; + var centerY = element.offsetTop + element.offsetHeight / 2; + eventSender.mouseMoveTo(centerX, centerY); +} + +function dragFilesOntoInput(input, files) { + eventSender.beginDragWithFiles(files); + moveMouseToCenterOfElement(input); + eventSender.mouseUp(); +} + +function startTest() +{ + dragFilesOntoInput(document.forms[0].querySelector("[type=file]"), ['file-input-empty-validation.html']); + document.forms[0].querySelector("[type=file]").value = ""; + document.forms[0].querySelector("[type=submit]").click(); +} + +if (window.eventSender) { + window.jsTestIsAsync = true; + testRunner.dumpAsText(); + window.onload = startTest; +} +</script> |