<!DOCTYPE html>
<html>
<body>
<input type="file" name="file" id="file" onchange="onInputFileChange(testFileInfoList)" multiple>
<pre id='console'></pre>

<script src="resources/setup-for-read-common.js"></script>
<script src="resources/read-common.js"></script>
<script src="resources/read-blob-test-cases.js"></script>
<script>
var testFileInfoList = [
    { 'name': 'non-existent', 'path': 'resources/non-existent' },
    { 'name': 'empty-file', 'path': 'resources/empty-file' },
    { 'name': 'file1', 'path': 'resources/UTF8.txt' },
    { 'name': 'file2', 'path': 'resources/UTF8-2.txt' },
    { 'name': 'file3', 'path': 'resources/UTF8-3.txt' },
];

function isReadAsAsync()
{
    return true;
}

function startTest(testFiles)
{
    runNextTest(testFiles);
}

if (window.eventSender) {
    testRunner.dumpAsText();
    testRunner.waitUntilDone();
    window.onload = function() { runTests(testFileInfoList); }
}
</script>
</body>
</html>
