У меня есть следующий сценарий.Использование RhinoMocks заглушки, чтобы вернуть значение, затем исключение
Я использую RhinoMocks, чтобы издеваться над одним из моих сервисов. Начальное действие заглушки заключается в увеличении количества вызовов, при последующем вызове я хотел бы сделать исключение ... как бы я это сделал?
Это то, что я в настоящее время есть и я ее настройке в методе TestFixtureSetup
var mockBLL = MockRepository.GenerateMock<IBLL>();
mockBLL.Stub(x => x.SaveOrUpdateDTO(null, null)).IgnoreArguments().WhenCalled
(invocation =>
{
nSaveOrUpdateCount++;
});
SimpleIoc.Default.Register<IBLL>(() => mockBLL);
В моих тестов, один из моего объекта будет читать из IoC, а затем выполнить вызов к " SaveOrUpdateDTO ". Первый тестовый пример проверяет правильность подсчета, второй тестовый пример попытается поймать исключение.
Мой первоначальный вариант - создать еще один макет, а затем перерегистрировать его перед вторым тестовым примером, но я не думаю, что это лучший способ.
Любые мысли о том, как сгенерировать два разных заглушки, один вызывает действие и другой бросает исключение?
Хорошо - это интересный способ взглянуть на него. Я попробую. – aggietech