Я использую RhinoMocks для очень простого теста (должен сказать, что я здесь новичок). Я пытался издеваться над своим объектом вот так
var mock = MockRepository.GenerateMock<MyClass>();
создать вспомогательную заглушку:
var stubLinkedObject = MockRepository.GenerateStub<MyClass>();
затем выполните некоторую логику, которая должна вызвать метод AddLink класса MyClass с моим аргументом-заглушкой. В конце теста я просто утверждаю, что этот метод действительно был вызван с
mockAction.AssertWasCalled(a => a.AddLink(stubLinkedObject));
Я ввел правильную зависимость, и метод действительно вызван. Однако проблема в том, что вызывается настоящая реализация в MyClass, что приводит к сбою, потому что некоторая логика просто не может быть выполнена (сбор ссылок недоступен и т. Д.). Как я могу обойти выполнение и просто проверить, вызывается ли метод? Я пробовал что-то вроде
mockAction.Stub(a => a.AddLink(null)).IgnoreArguments().Do(null);
прежде чем я перейду к выполнению, но это, похоже, не работает (у меня есть только некоторые исключения). Любые идеи и, возможно, объяснение, почему макет вообще выполняет логику метода?