Два отказа от ответственности: (1) Я переехал из Rhino Mocks в Moq несколько лет назад, так что это по памяти.(2) Я не вижу тестируемый вами код, поэтому я должен предположить, что вы правильно настраиваете свои макеты в соответствии с тем, как работает код.
Вам нужно проверить, был ли правильный вызовсделал в зависимость.Это делается с помощью Verify
.Добавьте это в ваш assert
раздел.
mockTransloaderRepository.Verify(t => t.DeleteAsync(ostTransloader5));
Вы можете доказать, правильно ли это проверяется, изменив тестируемый код на вызов DeleteAsync(null)
, что должно привести к сбою теста, и когда выположите его обратно, тест должен пройти.
Кстати, в Moq я бы также предложил использовать параметр Times.Once
, чтобы он вызывался ровно один раз, и я предполагаю, что Rhino Mocks имеет нечто подобное, но я извиняюсь, я не знаю, что это такое.