有谁知道我如何在抽象类上引发事件?
下面的测试在最后一行失败。我得到的例外如下:
System.InvalidOperationException :无效调用,已使用最后一次调用或未进行调用(确保您正在调用虚拟(C#)/可覆盖(VB)方法)。
我可以在接口上引发事件,但不能在实现该接口的抽象类上引发。这是使用最新版本的 RhinoMocks (3.6.0.0)。
谢谢,亚历克斯
public abstract class SomeClass : SomeInterface
{
public event EventHandler SomeEvent;
}
public interface SomeInterface
{
event EventHandler SomeEvent;
}
[Test]
public void Test_raising_event()
{
var someClass = MockRepository.GenerateMock<SomeClass>();
var someInterface = MockRepository.GenerateMock<SomeInterface>();
someInterface.Raise(x => x.SomeEvent += null, someClass, EventArgs.Empty);
someClass.Raise(x => x.SomeEvent += null, someClass, EventArgs.Empty);
}