【发布时间】:2012-10-16 19:20:37
【问题描述】:
我正在测试的应用程序充满了基于自定义委托的事件,例如:
public delegate void NameChangedHandler(string name);
public event NameChanged OnNameChanged;
...
public void ChangeYourName(string newName)
{
if( NameChanged != null )
NameChanged(newName);
}
我想模拟产生这些事件的类并将这些事件引发到被测类。
我知道 FakeItEasy 可以使用 Raise.With() 来引发具有 MyHandler(object sender, EventArgs e) 或 MyHandler(EventArgs e) 的传统事件签名的事件,但我不知道在我的情况下该怎么做。
有什么想法吗?
【问题讨论】:
-
我今天遇到了完全相同的事情。有人可以帮忙吗?
-
我相信答案是 FakeItEasy 无法做到这一点。我的解决方案是重构我的事件以采用 EventArgs。
标签: c# mocking fakeiteasy