Имитация одного метода класса вместо всего класса с помощью Moq?

У меня есть класс

public interface IMyInterface 
{
    string MethodA();
    void MethodB();
}

public class MyClass : IMyInterface
{
    public string MethodA()
    {
        // Do something important
    }

    public void MethodB()
    {
        string value = MethodA();
        // Do something important
    }
}

Я хочу выполнить модульное тестирование MethodB, но мне трудно думать о том, как я могу смоделировать MethodA, все еще вызывая MethodBс помощью Moq. Moq издевается над интерфейсом, а не над классом, поэтому я не могу просто вызвать mock.Object.MethodB(), верно?

Это возможно? Если да, то как?

9
задан Kyle Trauberman 27 July 2012 в 13:11
поделиться