我有一个可以注册组件的柜台。 register方法需要一个元素以及回调的时间(滴答数)。
类似于:
Service.ts:
new Handler(Looper.getMainLooper()).post(new Runnable() {
@Override
public void run() {
// This is your code
}
});
元素到期后,将其从二叉树中取出,并调用该元素的回调函数。
Service.ts:
registerElement(element: any, ticksToCallback: number): void {
this.sortIntoTree(this.rootTreeElement, ticksToCallback, element);
}
注册很简单:
Component.ts:
if (element.associatedObject.timeOutCallback() === 'function') {
element.associatedObject.timeOutCallback();
}
因此,我提供了元素,并在给定的滴答声之后,调用了元素自己的回调函数。
有没有一种方法可以在测试平台上实现timeOutCallback()函数并跟踪调用? “这个”是指测试平台内部的某些东西吗?
我知道异步任务必须在beforeEach()中实现,所以我正在运行:
Service.spec.ts
this.service.registerElement(this, givenAmountOfTicks);
答案 0 :(得分:0)
我试图根据您提供的代码和描述重新创建体系结构:
element
我们在这里所做的是创建模拟registerElement
(如您所述,它是组件)并将其传递给服务的timeOutCallback
方法。请注意,我们仅提供SELECT SUBSTRING(vValue, INSTR(vValue, '@') + 1) FROM Runtime.dbo.Live
WHERE ...
方法,因为我们仅对其进行测试,但是您可以监视其他方法,或者如果使用它们,则可以为属性提供一些假值。