diff options
Diffstat (limited to 'testing/web-platform/tests/xhr/progressevent-interface.html')
-rw-r--r-- | testing/web-platform/tests/xhr/progressevent-interface.html | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/testing/web-platform/tests/xhr/progressevent-interface.html b/testing/web-platform/tests/xhr/progressevent-interface.html new file mode 100644 index 0000000000..7552ff73d3 --- /dev/null +++ b/testing/web-platform/tests/xhr/progressevent-interface.html @@ -0,0 +1,49 @@ +<!DOCTYPE html> +<title>The ProgressEvent interface</title> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<div id="log"></div> +<script> +test(function() { + assert_equals(typeof ProgressEvent, "function") + assert_equals(ProgressEvent.length, 1) +}) +test(function() { + var desc = Object.getOwnPropertyDescriptor(ProgressEvent, "prototype") + assert_equals(desc.value, ProgressEvent.prototype) + assert_equals(desc.writable, false) + assert_equals(desc.enumerable, false) + assert_equals(desc.configurable, false) + assert_throws_js(TypeError, function() { + "use strict"; + delete ProgressEvent.prototype; + }) + assert_equals(ProgressEvent.prototype.constructor, ProgressEvent) + assert_equals(Object.getPrototypeOf(ProgressEvent.prototype), Event.prototype) +}, "interface prototype object") +var attributes = [ + ["boolean", "lengthComputable"], + ["unsigned long long", "loaded"], + ["unsigned long long", "total"] +]; +attributes.forEach(function(a) { + test(function() { + var desc = Object.getOwnPropertyDescriptor(ProgressEvent.prototype, a[1]) + assert_equals(desc.enumerable, true) + assert_equals(desc.configurable, true) + assert_throws_js(TypeError, function() { + ProgressEvent.prototype[a[1]] + }) + }) +}) +test(function() { + for (var p in window) { + assert_not_equals(p, "ProgressEvent") + } +}, "Interface objects properties should not be Enumerable") +test(function() { + assert_true(!!window.ProgressEvent, "Interface should exist.") + assert_true(delete window.ProgressEvent, "The delete operator should return true.") + assert_equals(window.ProgressEvent, undefined, "Interface should be gone.") +}, "Should be able to delete ProgressEvent.") +</script> |