Обновление:
Вы неправильно используете синтаксис AAA. Вам больше не нужен экземпляр для MockRepository (он использовался для Rhino до 3.5). Просто вызовите статические методы в MockRepository:
var contextChannel = MockRepository.GenerateStub<IContextChannel>();
var context = MockRepository.GenerateStub<IOperationContext>();
context.Stub(x => x.Channel).Return(contextChannel);
Вот некоторая документация:
Оригинальный ответ
Вы не делаете. В таких ситуациях больше не нужно звонить Replay
.
В предыдущих версиях существовала парадигма «запись-воспроизведение», в которой вы записывали ожидания и воспроизводили их во время теста. Он был заменен синтаксисом AAA, где вы можете намного проще и гибче настраивать макеты.
За кулисами все еще сохраняется состояние записи и воспроизведения макета. Такие методы, как Stub
, переводят макет в состояние записи, настраивают его и возвращают в запись. Вам не нужно явно звонить Record
в этих случаях.
Если вы хотите выполнить более сложные операции, вы можете настроить макет так, чтобы он сам воспроизводил состояние, например, что-нибудь с этим сделайте. чтобы сбросить ожидания:
mock.BackToRecord(BackToRecordOptions.All);
mock.Replay();