summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/FileAPI/FileReader/test_errors-manual.html
blob: b8c3f84d2bf23ae675f20057021b0908cee23017 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>FileReader Errors Test</title>
    <link rel=help href="http://dev.w3.org/2006/webapi/FileAPI/#convenienceAPI">
    <link rel=author title="Breezewish" href="mailto:me@breeswish.org">
    <script src="/resources/testharness.js"></script>
    <script src="/resources/testharnessreport.js"></script>
</head>
<body>
    <form name="upload">
        <input type="file" id="fileChooser"><br><input type="button" id="start" value="start">
    </form>

    <div>
        <p>Test steps:</p>
        <ol>
            <li>Download the <a href="support/file_test1.txt">file</a>.</li>
            <li>Select the file in the file inputbox.</li>
            <li>Delete the file.</li>
            <li>Click the 'start' button.</li>
        </ol>
    </div>

    <div id="log"></div>

    <script>

        var fileChooser = document.querySelector('#fileChooser');

        setup({explicit_done: true});
        setup({explicit_timeout: true});

        on_event(fileChooser, 'change', function() {

            async_test(function(t) {

                var reader = new FileReader();
                reader.readAsArrayBuffer(fileChooser.files[0]);

                reader.onloadend = t.step_func_done(function(event) {
                    assert_equals(event.target.readyState, FileReader.DONE);
                    assert_equals(reader.error, null);
                });

            }, 'FileReader.error should be null if there are no errors when reading');

        });

        on_event(document.querySelector('#start'), 'click', function() {

            async_test(function(t) {

                var reader = new FileReader();
                reader.readAsArrayBuffer(fileChooser.files[0]);

                reader.onloadend = t.step_func_done(function(event) {
                    assert_equals(event.target.readyState, FileReader.DONE);
                    assert_equals(reader.error.code, 8);
                    assert_true(reader.error instanceof DOMException);
                });

            }, 'FileReader.error should be NOT_FOUND_ERR if the file is not found when reading');

            done();

        });

    </script>
</body>
</html>