一些集成的就比较简单就不介绍了,直接看单测
import { EventBus } from "../plugin/EventBus";
const bus = new EventBus();
describe("实现:事件车(发布订阅模式)", () => {
it("event bus on", () => {
const muckFn = jest.fn();
bus.on("event one", muckFn);
expect(bus.eventsMap.size).toBe(1)
});
// 事件监听 on这个功能 使用muck一个fn 看bus.eventMap这个集合中的 数量 是否放入中了
it("event bus emit", () => {
const muckFn = jest.fn();
bus.on("event one", muckFn);
bus.emit("event one", '1111111111111111111');
bus.emit("event one", '2222222222222222222');
bus.emit("event one", '3333333333333333333');
expect(muckFn).toBeCalledTimes(3)
});
// 发送事件 看muck的fn调用次数 是不是三次
it("event bus off", () => {
const muckFn = jest.fn();
bus.on("event one", muckFn);
bus.emit("event one", '1111111111111111111');
bus.off("event one", muckFn);
bus.emit("event one", '1111111111111111111');
expect(muckFn).toBeCalledTimes(1)
});
// 主要是看off之后是否函数继续

最低0.47元/天 解锁文章
986

被折叠的 条评论
为什么被折叠?



