deno.land / x / lume@v2.1.4 / tests / events.test.ts

events.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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
import { assertStrictEquals as equals } from "../deps/assert.ts";import { getSite } from "./utils.ts";
Deno.test("build events global events", async () => { const site = getSite( { src: "empty", }, {}, );
let times = 0; let once = 0; let aborted = 0;
const controller = new AbortController();
addEventListener("lume:afterBuild", () => { times++; }); addEventListener("lume:afterBuild", () => { once++; }, { once: true }); addEventListener("lume:afterBuild", () => { aborted++; }, { signal: controller.signal, });
await site.build();
equals(times, 1); equals(once, 1); equals(aborted, 1);
await site.build();
equals(times, 2); equals(once, 1); equals(aborted, 2);
controller.abort(); await site.build();
equals(times, 3); equals(once, 1); equals(aborted, 2);});
Deno.test("build events", async () => { const site = getSite( { src: "empty", }, {}, );
let times = 0; let once = 0; let aborted = 0;
const controller = new AbortController();
site.addEventListener("afterBuild", () => times++); site.addEventListener("afterBuild", () => once++, { once: true }); site.addEventListener("afterBuild", () => aborted++, { signal: controller.signal, });
await site.build();
equals(times, 1); equals(once, 1); equals(aborted, 1);
await site.build();
equals(times, 2); equals(once, 1); equals(aborted, 2);
controller.abort(); await site.build();
equals(times, 3); equals(once, 1); equals(aborted, 2);});
lume

Version Info

Tagged at
7 months ago