Раньше, когда я хотел имитировать абстрактный класс, я просто создавал фиктивный класс в коде, который расширял абстрактный класс, а затем использовал этот класс в своем модульном тестировании ...
public abstract class MyConverter : IValueConverter
{
public abstract Object Convert(...) { ... };
public virtual Object ConvertBack(...) { ... }
}
private sealed class MockedConverter : MyConverter { ... }
[TestMethod]
public void TestMethod1()
{
var mock = new MockedConverter();
var expected = ...;
var actual = mock.ConvertBack(...);
Assert.AreEqual(expected, actual);
}
Я хочу выработать привычку использовать Вместо этого Moq. Я не уверен, как бы я использовал Moq для проверки возвращаемого значения по умолчанию моего абстрактного класса. Что-нибудь посоветуете?