[英]How can I Delphi Mocks an event handler or, assign interface method as delegate in Delphi?
因此,我有一个带有事件的Delphi对象,该事件是“对procedure()的引用”。 通常,我可以这样做来分配代表。
MyObj.OnBooom:= HandleOnBooom;
现在我要对事件是否被调用进行单元测试。 因此,对于依赖于接口的Delphi Mocks,我将创建一个具有过程“ OnBooom”的接口,并将该接口传递给TMock对象。 然后做这个。
MyObj.OnBooom:= FMockCaller.Instance.OnBooom;
但这不会编译,因为显然Delphi认为,在右侧,我只是在调用接口的过程,而不是希望将其分配给左侧。
那么,有什么办法可以让我分配这个作品吗? 还是有其他方法可以阻止Delphi参加活动? 谢谢。
您可以使用匿名方法:
MyObj.OnBooom := procedure begin FMockCaller.Instance.OnBooom; end;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.