51 lines
1.3 KiB
HTML
51 lines
1.3 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<script src="../../resources/js-test-pre.js"></script>
|
|
</head>
|
|
<body>
|
|
<input type="file" ondrop="dropped(event)"></input>
|
|
<div id="console"></div>
|
|
<script>
|
|
description("Tests that FileList objects have an iterator.");
|
|
jsTestIsAsync = true;
|
|
|
|
function runTest()
|
|
{
|
|
var inputElement = document.getElementsByTagName('input')[0];
|
|
eventSender.beginDragWithFiles(['test.txt']);
|
|
eventSender.mouseMoveTo(inputElement.offsetLeft + inputElement.offsetWidth / 2,
|
|
inputElement.offsetTop + inputElement.offsetHeight / 2);
|
|
eventSender.mouseUp();
|
|
}
|
|
|
|
function dropped(event)
|
|
{
|
|
fileList = event.dataTransfer.files;
|
|
shouldBe("fileList.__proto__", "FileList.prototype");
|
|
shouldBeTrue("Symbol.iterator in fileList");
|
|
forOfSucceeded = false;
|
|
try {
|
|
for (var file of fileList) { }
|
|
forOfSucceeded = true;
|
|
} catch (e) {
|
|
forOfSucceeded = false;
|
|
}
|
|
shouldBeTrue("forOfSucceeded");
|
|
|
|
shouldBeFalse("'entries' in fileList");
|
|
shouldBeFalse("'keys' in fileList");
|
|
shouldBeFalse("'forEach' in fileList");
|
|
shouldBeFalse("'values' in fileList");
|
|
|
|
finishJSTest();
|
|
}
|
|
|
|
runTest();
|
|
|
|
</script>
|
|
<script src="../../resources/js-test-post.js"></script>
|
|
</body>
|
|
</html>
|