【发布时间】:2015-12-04 20:19:40
【问题描述】:
晚上好,
我正在尝试使用 dUnit 和 PascalMock 对我的一些 Delphi 代码进行单元测试。
有大量的遗留代码根本没有接口,它们还包含传入自身对象的参数,例如:
TSelf = Class
Function Hello(self: TSelf);
end;
然后我尝试将接口应用于 TSelf:
ISelf = Interface(IInterface)
Function Hello(self: TSelf)
end;
TSelf = Class(TInterfacedObject, ISelf)
Function Hello(self: TSelf);
end;
这显然是失败的,因为“TSelf”是未定义的,这些是具有许多使用 TSelf 作为参数的函数的大型对象,我唯一的选择是将这些更改为 TObject 吗?并在方法中将它们强制转换为 TSelf?
我们将不胜感激任何帮助,因为它目前阻止我进行自动测试。
或者是否有不需要接口的模拟框架?
谢谢。
【问题讨论】: