-
Notifications
You must be signed in to change notification settings - Fork 3.3k
/
Copy pathanimationevent-interface.js
92 lines (76 loc) · 3.02 KB
/
animationevent-interface.js
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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
(function() {
test(function() {
var event = new AnimationEvent("");
assert_true(event instanceof window.AnimationEvent);
}, "the event is an instance of AnimationEvent");
test(function() {
var event = new AnimationEvent("");
assert_true(event instanceof window.Event);
}, "the event inherts from Event");
test(function() {
assert_throws(new TypeError(), function() {
new AnimationEvent();
}, 'First argument is required, so was expecting a TypeError.');
}, 'Missing type argument');
test(function() {
var event = new AnimationEvent("test");
assert_equals(event.type, "test");
}, "type argument is string");
test(function() {
var event = new AnimationEvent(null);
assert_equals(event.type, "null");
}, "type argument is null");
test(function() {
var event = new AnimationEvent(undefined);
assert_equals(event.type, "undefined");
}, "event type set to undefined");
test(function() {
var event = new AnimationEvent("test");
assert_equals(event.animationName, "");
}, "animationName has default value of empty string");
test(function() {
var event = new AnimationEvent("test");
assert_equals(event.elapsedTime, 0.0);
}, "elapsedTime has default value of 0.0");
test(function() {
var event = new AnimationEvent("test");
assert_readonly(event, "animationName", "readonly attribute value");
}, "animationName is readonly");
test(function() {
var event = new AnimationEvent("test");
assert_readonly(event, "elapsedTime", "readonly attribute value");
}, "elapsedTime is readonly");
test(function() {
var event = new AnimationEvent("test", null);
assert_equals(event.animationName, "");
assert_equals(event.elapsedTime, 0.0);
}, "animationEventInit argument is null");
test(function() {
var event = new AnimationEvent("test", undefined);
assert_equals(event.animationName, "");
assert_equals(event.elapsedTime, 0.0);
}, "animationEventInit argument is undefined");
test(function() {
var event = new AnimationEvent("test", {});
assert_equals(event.animationName, "");
assert_equals(event.elapsedTime, 0.0);
}, "animationEventInit argument is empty dictionary");
test(function() {
var event = new AnimationEvent("test", {pseudoElement: "::testPseudo"});
assert_equals(event.pseudoElement, "::testPseudo");
}, "AnimationEvent.pseudoElement initialized from the dictionary");
test(function() {
var event = new AnimationEvent("test", {animationName: "sample"});
assert_equals(event.animationName, "sample");
}, "animationName set to 'sample'");
test(function() {
var event = new AnimationEvent("test", {elapsedTime: 0.5});
assert_equals(event.elapsedTime, 0.5);
}, "elapsedTime set to 0.5");
test(function() {
var eventInit = {animationName: "sample", elapsedTime: 0.5};
var event = new AnimationEvent("test", eventInit);
assert_equals(event.animationName, "sample");
assert_equals(event.elapsedTime, 0.5);
}, "AnimationEventInit properties set value");
})();