【问题标题】:Jamine how to mock interface with callbackJamine 如何使用回调模拟接口
【发布时间】:2017-07-13 09:44:17
【问题描述】:

我是 Jamine 测试框架的新手,目前我在模拟接口时遇到问题。有人可以帮我吗?

界面如下:

interface MessengerSubscribe {
    onSystemLoggedIn(callback: (data: INotLoggedinInfo) => void): MessengerSubscription;
    onSessionTimedOut(callback: () => void): MessengerSubscription;
    onHasEssBalance(callback: () => void): MessengerSubscription;
}

这是我尝试过的,但不起作用。

let mockMessenger: MessengerStatic = {
        subscribe: {
            onSystemLoggedIn: () => <MessengerSubscription>
        }
    };

这里是消息描述:

interface MessengerSubscription {
    dispose(): void;
}

【问题讨论】:

  • 我认为你在混合概念。要模拟一个接口,您所要做的就是实现接口中定义的方法。从您的示例看来,您正在尝试模拟 Observable?你的问题的背景是什么?
  • @shusson 你能举个例子说明如何实现接口中的方法吗?

标签: unit-testing typescript knockout.js jasmine typescript-typings


【解决方案1】:

一个简单的模拟看起来像:

let mockMessenger: MessengerSubscribe = {
    onSystemLoggedIn: (callback: any): any => {},
    onSessionTimedOut: (callback: any): any => {},
    onHasEssBalance: (callback: any): any => {}
};

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-08
    • 1970-01-01
    • 2017-10-23
    • 1970-01-01
    • 2013-01-16
    • 1970-01-01
    相关资源
    最近更新 更多