Skip to content

Commit 6e23b14

Browse files
committed
perf: Improve overall performance
1 parent 6e4b64f commit 6e23b14

File tree

12 files changed

+123
-80
lines changed

12 files changed

+123
-80
lines changed

__tests__/emit.ts

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ it("should return false when there are not events to emit", () => {
88
});
99

1010
it("should emit with context", (done) => {
11+
expect.assertions(3);
12+
1113
const context = { bar: "baz" };
1214
const e = new EventEmitter();
1315

@@ -20,10 +22,14 @@ it("should emit with context", (done) => {
2022
done();
2123
},
2224
context,
23-
).emit("foo", "bar");
25+
);
26+
27+
expect(e.emit("foo", "bar")).toBe(true);
2428
});
2529

2630
it("should emit with context, multiple arguments (force apply)", (done) => {
31+
expect.assertions(3);
32+
2733
const context = { bar: "baz" };
2834
const e = new EventEmitter();
2935

@@ -36,7 +42,9 @@ it("should emit with context, multiple arguments (force apply)", (done) => {
3642
done();
3743
},
3844
context,
39-
).emit("foo", "bar", 1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
45+
);
46+
47+
expect(e.emit("foo", "bar", 1, 2, 3, 4, 5, 6, 7, 8, 9, 0)).toBe(true);
4048
});
4149

4250
it("should be able to emit the function with multiple arguments", () => {

__tests__/removeListener.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,5 +36,5 @@ it("removes only the first listener matching the specified listener", () => {
3636

3737
expect(e.removeListener("foo", foo)).toEqual(e);
3838
expect(e.listeners("bar")).toEqual([bar]);
39-
expect(e.listeners("foo")).toEqual([foo]);
39+
expect(e.listeners("foo")).toEqual([]);
4040
});

benchmarks/add-remove.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ const { EventEmitter } = require("events");
33
const { EventEmitter2 } = require("eventemitter2");
44
const EventEmitter3 = require("eventemitter3");
55
const { EventEmitter: DripEmitter } = require("drip");
6-
const { EventEmitter: FoxifyEmitter } = require("..");
6+
const FoxifyEmitter = require("..").default;
77

88
function handle() {
99
return 1;
@@ -36,10 +36,10 @@ new Suite()
3636
dripEmitter.on("foo", handle);
3737
dripEmitter.removeListener("foo", handle);
3838
})
39-
.on("cycle", e => {
39+
.on("cycle", (e) => {
4040
console.log(e.target.toString());
4141
})
4242
.on("complete", function onComplete() {
4343
console.log("Fastest is %s", this.filter("fastest").map("name"));
4444
})
45-
.run({ async: true });
45+
.run();

benchmarks/context.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ const { EventEmitter } = require("events");
33
const { EventEmitter2 } = require("eventemitter2");
44
const EventEmitter3 = require("eventemitter3");
55
const { EventEmitter: DripEmitter } = require("drip");
6-
const { EventEmitter: FoxifyEmitter } = require("..");
6+
const FoxifyEmitter = require("..").default;
77

88
const ctx = { foo: "bar" };
99

@@ -39,10 +39,10 @@ new Suite()
3939
.add("drip", () => {
4040
dripEmitter.emit("foo");
4141
})
42-
.on("cycle", e => {
42+
.on("cycle", (e) => {
4343
console.log(e.target.toString());
4444
})
4545
.on("complete", function onComplete() {
4646
console.log("Fastest is %s", this.filter("fastest").map("name"));
4747
})
48-
.run({ async: true });
48+
.run();

benchmarks/emit-multiple-listeners.js

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,7 @@ const { EventEmitter } = require("events");
33
const { EventEmitter2 } = require("eventemitter2");
44
const EventEmitter3 = require("eventemitter3");
55
const { EventEmitter: DripEmitter } = require("drip");
6-
const { EventEmitter: FoxifyEmitter } = require("..");
7-
6+
const FoxifyEmitter = require("..").default;
87

98
function foo() {
109
return 1;
@@ -24,11 +23,11 @@ const eventEmitter3 = new EventEmitter3();
2423
const dripEmitter = new DripEmitter();
2524
const foxifyEmitter = new FoxifyEmitter();
2625

27-
eventEmitter.on("foo", foo).on('foo', bar).on('foo', baz);
28-
eventEmitter2.on("foo", foo).on('foo', bar).on('foo', baz);
29-
eventEmitter3.on("foo", foo).on('foo', bar).on('foo', baz);
30-
dripEmitter.on("foo", foo).on('foo', bar).on('foo', baz);
31-
foxifyEmitter.on("foo", foo).on('foo', bar).on('foo', baz);
26+
eventEmitter.on("foo", foo).on("foo", bar).on("foo", baz);
27+
eventEmitter2.on("foo", foo).on("foo", bar).on("foo", baz);
28+
eventEmitter3.on("foo", foo).on("foo", bar).on("foo", baz);
29+
dripEmitter.on("foo", foo).on("foo", bar).on("foo", baz);
30+
foxifyEmitter.on("foo", foo).on("foo", bar).on("foo", baz);
3231

3332
new Suite()
3433
.add("events", () => {
@@ -46,10 +45,10 @@ new Suite()
4645
.add("drip", () => {
4746
dripEmitter.emit("foo");
4847
})
49-
.on("cycle", e => {
48+
.on("cycle", (e) => {
5049
console.log(e.target.toString());
5150
})
5251
.on("complete", function onComplete() {
5352
console.log("Fastest is %s", this.filter("fastest").map("name"));
5453
})
55-
.run({ async: true });
54+
.run();

benchmarks/emit.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ const { EventEmitter } = require("events");
33
const { EventEmitter2 } = require("eventemitter2");
44
const EventEmitter3 = require("eventemitter3");
55
const { EventEmitter: DripEmitter } = require("drip");
6-
const { EventEmitter: FoxifyEmitter } = require("..");
6+
const FoxifyEmitter = require("..").default;
77

88
function handle() {
99
return 1;
@@ -37,10 +37,10 @@ new Suite()
3737
.add("drip", () => {
3838
dripEmitter.emit("foo");
3939
})
40-
.on("cycle", e => {
40+
.on("cycle", (e) => {
4141
console.log(e.target.toString());
4242
})
4343
.on("complete", function onComplete() {
4444
console.log("Fastest is %s", this.filter("fastest").map("name"));
4545
})
46-
.run({ async: true });
46+
.run();

benchmarks/hundreds.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ const { EventEmitter } = require("events");
33
const { EventEmitter2 } = require("eventemitter2");
44
const EventEmitter3 = require("eventemitter3");
55
const { EventEmitter: DripEmitter } = require("drip");
6-
const { EventEmitter: FoxifyEmitter } = require("..");
6+
const FoxifyEmitter = require("..").default;
77

88
function handle() {
99
return 1;
@@ -51,10 +51,10 @@ new Suite()
5151
dripEmitter.emit(`event:${i}`);
5252
}
5353
})
54-
.on("cycle", e => {
54+
.on("cycle", (e) => {
5555
console.log(e.target.toString());
5656
})
5757
.on("complete", function onComplete() {
5858
console.log("Fastest is %s", this.filter("fastest").map("name"));
5959
})
60-
.run({ async: true });
60+
.run();

benchmarks/init.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ const { EventEmitter } = require("events");
33
const { EventEmitter2 } = require("eventemitter2");
44
const EventEmitter3 = require("eventemitter3");
55
const { EventEmitter: DripEmitter } = require("drip");
6-
const { EventEmitter: FoxifyEmitter } = require("..");
6+
const FoxifyEmitter = require("..").default;
77

88
new Suite()
99
.add("events", () => {
@@ -21,10 +21,10 @@ new Suite()
2121
.add("drip", () => {
2222
const emitter = new DripEmitter();
2323
})
24-
.on("cycle", e => {
24+
.on("cycle", (e) => {
2525
console.log(e.target.toString());
2626
})
2727
.on("complete", function onComplete() {
2828
console.log("Fastest is %s", this.filter("fastest").map("name"));
2929
})
30-
.run({ async: true });
30+
.run();

benchmarks/listeners.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ const { EventEmitter } = require("events");
33
const { EventEmitter2 } = require("eventemitter2");
44
const EventEmitter3 = require("eventemitter3");
55
const { EventEmitter: DripEmitter } = require("drip");
6-
const { EventEmitter: FoxifyEmitter } = require("..");
6+
const FoxifyEmitter = require("..").default;
77

88
function handle() {
99
return 1;
@@ -18,7 +18,7 @@ const foxifyEmitter = new FoxifyEmitter();
1818
eventEmitter.setMaxListeners(25);
1919
eventEmitter2.setMaxListeners(25);
2020

21-
for(let i = 0; i < 25; i++) {
21+
for (let i = 0; i < 25; i++) {
2222
eventEmitter.on("foo", handle);
2323
eventEmitter2.on("foo", handle);
2424
eventEmitter3.on("foo", handle);
@@ -42,10 +42,10 @@ new Suite()
4242
.add("drip", () => {
4343
dripEmitter.listeners("foo");
4444
})
45-
.on("cycle", e => {
45+
.on("cycle", (e) => {
4646
console.log(e.target.toString());
4747
})
4848
.on("complete", function onComplete() {
4949
console.log("Fastest is %s", this.filter("fastest").map("name"));
5050
})
51-
.run({ async: true });
51+
.run();

benchmarks/once.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ const { EventEmitter } = require("events");
33
const { EventEmitter2 } = require("eventemitter2");
44
const EventEmitter3 = require("eventemitter3");
55
const { EventEmitter: DripEmitter } = require("drip");
6-
const { EventEmitter: FoxifyEmitter } = require("..");
6+
const FoxifyEmitter = require("..").default;
77

88
function handle() {
99
return 1;
@@ -31,10 +31,10 @@ new Suite()
3131
.add("drip", () => {
3232
dripEmitter.once("foo", handle).emit("foo");
3333
})
34-
.on("cycle", e => {
34+
.on("cycle", (e) => {
3535
console.log(e.target.toString());
3636
})
3737
.on("complete", function onComplete() {
3838
console.log("Fastest is %s", this.filter("fastest").map("name"));
3939
})
40-
.run({ async: true });
40+
.run();

0 commit comments

Comments
 (0)