forked from denoland/deno
-
Notifications
You must be signed in to change notification settings - Fork 0
/
event_test.ts
70 lines (57 loc) · 2.1 KB
/
event_test.ts
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
// Copyright 2018-2019 the Deno authors. All rights reserved. MIT license.
import { test, assertEqual } from "./test_util.ts";
test(function eventInitializedWithType() {
const type = "click";
const event = new Event(type);
assertEqual(event.isTrusted, false);
assertEqual(event.target, null);
assertEqual(event.currentTarget, null);
assertEqual(event.type, "click");
assertEqual(event.bubbles, false);
assertEqual(event.cancelable, false);
});
test(function eventInitializedWithTypeAndDict() {
const init = "submit";
const eventInitDict = new EventInit({ bubbles: true, cancelable: true });
const event = new Event(init, eventInitDict);
assertEqual(event.isTrusted, false);
assertEqual(event.target, null);
assertEqual(event.currentTarget, null);
assertEqual(event.type, "submit");
assertEqual(event.bubbles, true);
assertEqual(event.cancelable, true);
});
test(function eventComposedPathSuccess() {
const type = "click";
const event = new Event(type);
const composedPath = event.composedPath();
assertEqual(composedPath, []);
});
test(function eventStopPropagationSuccess() {
const type = "click";
const event = new Event(type);
assertEqual(event.cancelBubble, false);
event.stopPropagation();
assertEqual(event.cancelBubble, true);
});
test(function eventStopImmediatePropagationSuccess() {
const type = "click";
const event = new Event(type);
assertEqual(event.cancelBubble, false);
assertEqual(event.cancelBubbleImmediately, false);
event.stopImmediatePropagation();
assertEqual(event.cancelBubble, true);
assertEqual(event.cancelBubbleImmediately, true);
});
test(function eventPreventDefaultSuccess() {
const type = "click";
const event = new Event(type);
assertEqual(event.defaultPrevented, false);
event.preventDefault();
assertEqual(event.defaultPrevented, false);
const eventInitDict = new EventInit({ bubbles: true, cancelable: true });
const cancelableEvent = new Event(type, eventInitDict);
assertEqual(cancelableEvent.defaultPrevented, false);
cancelableEvent.preventDefault();
assertEqual(cancelableEvent.defaultPrevented, true);
});