0

我是新的Jamine测试框架,目前我有问题来模拟一个接口。任何人都可以帮助我吗?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; 
} 
+0

我认为你是混合的概念。为了模拟一个接口,你只需要实现接口中定义的方法。从你的例子看来,你试图模仿Observable?你的问题的背景是什么? – shusson

+0

@shusson你能给我一个例子,说明如何在界面中实现这些方法吗? – Chwa

回答

0

一个简单的模拟会是什么样子:

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