servo/tests/wpt/web-platform-tests/FileAPI/idlharness-manual.html

60 lines
1.9 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>File API manual IDL tests</title>
<link rel="author" title="Intel" href="http://www.intel.com">
<link rel="help" href="http://dev.w3.org/2006/webapi/FileAPI/#conformance">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/WebIDLParser.js"></script>
<script src="/resources/idlharness.js"></script>
</head>
<body>
<h1>File API manual IDL tests</h1>
<div>
<p>Test steps:</p>
<ol>
<li>Download <a href="support/upload.txt">upload.txt</a> to local.</li>
<li>Select the local upload.txt file to run the test.</li>
</ol>
</div>
<form name="uploadData">
<input type="file" id="fileChooser">
</form>
<div id="log"></div>
<script>
var fileInput;
setup(function() {
fileInput = document.querySelector("#fileChooser")
}, {explicit_done: true, explicit_timeout: true});
on_event(fileInput, "change", async function(evt) {
const idl = await fetch('/interfaces/FileAPI.idl').then(r => r.text());
const dom = await fetch('/interfaces/dom.idl').then(r => r.text());
const html = await fetch('/interfaces/html.idl').then(r => r.text());
const url = await fetch('/interfaces/url.idl').then(r => r.text());
const idl_array = new IdlArray();
idl_array.add_idls(idl);
idl_array.add_dependency_idls(url);
idl_array.add_dependency_idls(html);
idl_array.add_dependency_idls(dom);
idl_array.add_untested_idls("[Exposed=(Window,Worker)] interface ArrayBuffer {};");
idl_array.add_objects({
FileList: [fileInput.files],
File: [fileInput.files[0]],
});
idl_array.test();
done();
});
</script>
</body>
</html>