我们模拟一个接口,该接口上有一个事件,如下所示:
public interface IThing<TKey, TValue>
{
event EventHandler<Message<TKey, TValue>> OnMessage;
}
使用NSubstitue,我们模拟接口,并尝试使用NSubstitute准则引发事件:
var mockThing = Substitute.For<IThing>();
mockThing.OnMessage += Raise.EventWith(???)
尽管尝试了很多次,我们还是无法编译这一行代码——这只是将泛型类型和参数放在正确位置的情况吗?
实际调用的OnMessage()函数如下所示:
private void OnMessage(object sender, Message<string, string> message)