Chromium Code Reviews| Index: LayoutTests/fast/forms/file/file-input-empty-validation.html |
| diff --git a/LayoutTests/fast/forms/file/file-input-empty-validation.html b/LayoutTests/fast/forms/file/file-input-empty-validation.html |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..11f1eaa4cd7bb741bfb55ef160bdf104debe803c |
| --- /dev/null |
| +++ b/LayoutTests/fast/forms/file/file-input-empty-validation.html |
| @@ -0,0 +1,44 @@ |
| +<!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(); |
|
tkent
2014/01/29 23:36:26
nit: You don't need dumpAsText(). js-test.js call
|
| + testRunner.waitUntilDone(); |
|
tkent
2014/01/29 23:36:26
nit: You don't need dumpAsText(). js-test.js call
|
| + window.onload = startTest; |
| +} |
| +</script> |