aboutsummaryrefslogtreecommitdiff
path: root/bench/snippets
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2022-12-05 03:52:35 -0800
committerGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2022-12-05 03:52:35 -0800
commit8582bc08ec02032fdb5c261a69b87cc18b313343 (patch)
tree3f182b913ff3f41235f32fe8c0aacbfbe530d901 /bench/snippets
parenteeea1707a132ac7b5c8898f0b4bcf5c0f04a097b (diff)
downloadbun-8582bc08ec02032fdb5c261a69b87cc18b313343.tar.gz
bun-8582bc08ec02032fdb5c261a69b87cc18b313343.tar.zst
bun-8582bc08ec02032fdb5c261a69b87cc18b313343.zip
microbench
Diffstat (limited to 'bench/snippets')
-rw-r--r--bench/snippets/emitter.js39
1 files changed, 38 insertions, 1 deletions
diff --git a/bench/snippets/emitter.js b/bench/snippets/emitter.js
index 4b6b8b216..0dacf18ac 100644
--- a/bench/snippets/emitter.js
+++ b/bench/snippets/emitter.js
@@ -16,18 +16,55 @@ bench("EventEmitter.emit", () => {
});
});
+var monkey = Object.assign({}, EventEmitter.prototype);
+monkey.on("hello", (event) => {
+ event.preventDefault();
+});
+
+bench("[monkey] EventEmitter.emit", () => {
+ var called = false;
+ monkey.emit("hello", {
+ preventDefault() {
+ id++;
+ called = true;
+ },
+ });
+
+ if (!called) {
+ throw new Error("monkey failed");
+ }
+});
+
bench("EventEmitter.on x 10_000 (handler)", () => {
- var cb = () => {
+ var cb = (event) => {
event.preventDefault();
};
emitter.on("hey", cb);
+ var called = false;
for (let i = 0; i < 10_000; i++)
emitter.emit("hey", {
preventDefault() {
id++;
+ called = true;
},
});
emitter.off("hey", cb);
+
+ if (!called) throw new Error("not called");
+});
+
+bench("[monkey] EventEmitter.on x 10_000 (handler)", () => {
+ var cb = () => {
+ event.preventDefault();
+ };
+ monkey.on("hey", cb);
+ for (let i = 0; i < 10_000; i++)
+ monkey.emit("hey", {
+ preventDefault() {
+ id++;
+ },
+ });
+ monkey.off("hey", cb);
});
var target = new EventTarget();