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 73 74 75 76 77
|
<!doctype html>
<title>ProgressEvent constructor</title>
<link rel="help" href="https://xhr.spec.whatwg.org/#interface-progressevent">
<link rel="help" href="https://dom.spec.whatwg.org/#concept-event-constructor">
<link rel="help" href="https://dom.spec.whatwg.org/#interface-event">
<script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script>
<div id=log></div>
<script>
test(function() {
var ev = new ProgressEvent("test")
assert_equals(ev.type, "test")
assert_equals(ev.target, null)
assert_equals(ev.currentTarget, null)
assert_equals(ev.eventPhase, Event.NONE)
assert_equals(ev.bubbles, false)
assert_equals(ev.cancelable, false)
assert_equals(ev.defaultPrevented, false)
assert_equals(ev.isTrusted, false)
assert_true(ev.timeStamp > 0)
assert_true("initEvent" in ev)
assert_equals(ev.lengthComputable, false)
assert_equals(ev.loaded, 0)
assert_equals(ev.total, 0)
}, "Default event values.")
test(function() {
var ev = new ProgressEvent("test")
assert_equals(ev["initProgressEvent"], undefined)
}, "There must not be a initProgressEvent().")
test(function() {
var ev = new ProgressEvent("I am an event", { type: "trololol", bubbles: true, cancelable: false})
assert_equals(ev.type, "I am an event")
assert_equals(ev.bubbles, true)
assert_equals(ev.cancelable, false)
}, "Basic test.")
test(function() {
var ev = new ProgressEvent(null, { lengthComputable: "hah", loaded: "2" })
assert_equals(ev.type, "null")
assert_equals(ev.lengthComputable, true)
assert_equals(ev.loaded, 2)
}, "ECMAScript value conversion test.")
test(function() {
var ev = new ProgressEvent(null, { loaded: 1, total: 2 })
assert_equals(ev.type, "null")
assert_equals(ev.loaded, 1)
assert_equals(ev.total, 2)
}, "Positive integer number test.")
test(function () {
var ev = new ProgressEvent(null, { loaded: 0, total: 1 })
assert_equals(ev.type, "null")
assert_equals(ev.loaded, 0)
assert_equals(ev.total, 1)
}, "Zero test.")
test(function () {
var ev = new ProgressEvent(null, { loaded: 1.5, total: 3.5 })
assert_equals(ev.type, "null")
assert_equals(ev.loaded, 1.5)
assert_equals(ev.total, 3.5)
}, "Decimal number test.")
test(function () {
var ev = new ProgressEvent(null, { loaded: 1.5, total: 5 })
assert_equals(ev.type, "null")
assert_equals(ev.loaded, 1.5)
assert_equals(ev.total, 5)
}, "Mixed integer and decimal number test.")
test(function () {
var ev = new ProgressEvent(null, { loaded: -1, total: -5.5 })
assert_equals(ev.type, "null")
assert_equals(ev.loaded, -1)
assert_equals(ev.total, -5.5)
}, "Negative number.")
test(function () {
var ev = new ProgressEvent("Xx", { lengthcomputable: true})
assert_equals(ev.type, "Xx")
assert_equals(ev.lengthComputable, false)
}, "ProgressEventInit members must be matched case-sensitively.")
</script>
|