| <!DOCTYPE html> |
| <html> |
| <body> |
| <script src="../../resources/testharness.js"></script> |
| <script src="../../resources/testharnessreport.js"></script> |
| <script type="text/javascript"> |
| var test = async_test("Test reading data from a blob as an ArrayBuffer"); |
| |
| var onloadstartSeen = false; |
| |
| test.step(function() { |
| var blob = new Blob(["HelloWorld"]); |
| var reader = new FileReader(); |
| assert_equals(reader.readyState, reader.EMPTY, |
| "reader.readyState"); |
| reader.readAsArrayBuffer(blob); |
| reader.onloadstart = test.step_func(function() { |
| assert_false(onloadstartSeen, "onloadstartSeen"); |
| onloadstartSeen = true; |
| |
| assert_equals(reader.readyState, reader.LOADING, |
| "reader.readyState"); |
| assert_equals(reader.error, null, "reader.error"); |
| assert_equals(reader.result, null, "reader.result"); |
| }); |
| reader.onabort = test.step_func(function() { |
| assert_unreached("onabort invoked on reader"); |
| }); |
| reader.onerror = test.step_func(function() { |
| assert_unreached("onerror invoked on reader"); |
| }); |
| reader.onloadend = test.step_func(function() { |
| assert_equals(reader.readyState, reader.DONE, |
| "reader.readyState"); |
| assert_equals(reader.error, null, "reader.error"); |
| assert_not_equals(reader.result, null, "reader.result"); |
| assert_equals(reader.result.byteLength, 10, |
| "reader.result.byteLength"); |
| test.done(); |
| }); |
| }); |
| </script> |
| </body> |
| </html> |