Как использовать moq для тестирования конкретного метода в абстрактном классе?

Раньше, когда я хотел имитировать абстрактный класс, я просто создавал фиктивный класс в коде, который расширял абстрактный класс, а затем использовал этот класс в своем модульном тестировании ...

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 для проверки возвращаемого значения по умолчанию моего абстрактного класса. Что-нибудь посоветуете?

16
задан Anthony Pegram 7 October 2011 в 19:17
поделиться