summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/FileAPI/fileReader.html
diff options
context:
space:
mode:
Diffstat (limited to 'testing/web-platform/tests/FileAPI/fileReader.html')
-rw-r--r--testing/web-platform/tests/FileAPI/fileReader.html67
1 files changed, 67 insertions, 0 deletions
diff --git a/testing/web-platform/tests/FileAPI/fileReader.html b/testing/web-platform/tests/FileAPI/fileReader.html
new file mode 100644
index 000000000..b767e22d4
--- /dev/null
+++ b/testing/web-platform/tests/FileAPI/fileReader.html
@@ -0,0 +1,67 @@
+<!doctype html>
+<html>
+ <head>
+ <title>FileReader States</title>
+ <link rel=help href="http://dev.w3.org/2006/webapi/FileAPI/#dfn-filereader">
+ <link rel=author title="Lenient" href="mailto:lenient315@gmail.com">
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script>
+ </head>
+ <body>
+ <div id="log"></div>
+ <script>
+ test(function() {
+ assert_true("FileReader" in window, "window should have a FileReader property.");
+ }, "FileReader interface object");
+
+ test(function(){
+ var fileReader = new FileReader();
+ assert_true(fileReader instanceof FileReader);
+ }, "no-argument FileReader constructor");
+
+ var t_abort = async_test("FileReader States -- abort");
+ t_abort.step(function(){
+ var fileReader = new FileReader();
+ assert_equals(fileReader.readyState, 0);
+ assert_equals(fileReader.readyState, FileReader.EMPTY);
+
+ var blob = new Blob();
+ fileReader.readAsArrayBuffer(blob);
+ assert_equals(fileReader.readyState, 1);
+ assert_equals(fileReader.readyState, FileReader.LOADING);
+
+ fileReader.onabort = this.step_func(function(e) {
+ assert_equals(fileReader.readyState, 2);
+ assert_equals(fileReader.readyState, FileReader.DONE);
+ t_abort.done();
+ });
+ fileReader.abort();
+ fileReader.onabort = this.unreached_func("abort event should fire sync")
+ });
+
+ var t_event = async_test("FileReader States -- events");
+ t_event.step(function(){
+ var fileReader = new FileReader();
+
+ var blob = new Blob();
+ fileReader.readAsArrayBuffer(blob);
+
+ fileReader.onloadstart = this.step_func(function(e) {
+ assert_equals(fileReader.readyState, 1);
+ assert_equals(fileReader.readyState, FileReader.LOADING);
+ });
+
+ fileReader.onprogress = this.step_func(function(e) {
+ assert_equals(fileReader.readyState, 1);
+ assert_equals(fileReader.readyState, FileReader.LOADING);
+ });
+
+ fileReader.onloadend = this.step_func(function(e) {
+ assert_equals(fileReader.readyState, 2);
+ assert_equals(fileReader.readyState, FileReader.DONE);
+ t_event.done();
+ });
+ });
+ </script>
+ </body>
+</html>