如果我正在模拟一个类,如下所示,有什么方法可以让模拟不覆盖虚拟方法?我知道我可以简单地删除虚拟修饰符,但我实际上想稍后为这个方法删除行为。
换句话说,除了删除虚拟修饰符之外,我怎样才能让这个测试通过:
namespace Sandbox {
public class classToMock {
public int IntProperty { get; set; }
public virtual void DoIt() {
IntProperty = 1;
}
}
public class Foo {
static void Main(string[] args) {
classToMock c = MockRepository.GenerateMock<classToMock>();
c.DoIt();
Assert.AreEqual(1, c.IntProperty);
Console.WriteLine("Pass");
}
}
}