Код выглядит следующим образом:
Код: Выделить всё
public abstract class AbstractClass
{
protected abstract void OneProtectedMethod();
}
public class OneClass : AbstractClass
{
protected override void OneProtectedMethod()
{
Console.WriteLine("Hello");
}
public void DoMethod()
{
OneProtectedMethod();
}
}
[Test]
public void should_call_protected_method()
{
var mock = new Mock();
mock.Protected().Setup("OneProtectedMethod").Callback(() => Console.WriteLine("Goodbye"));
var o = new OneClass();
o.DoMethod();
mock.Protected().Verify("OneProtectedMethod", Times.Once());
}
Спасибо.