Насмешки носорога: Повториться. Однажды () не работа?

Следующий ответ был правильным. Я только что проверил это с Eclipse Juno.

Шаги:

  1. Открыть Eclipse
  2. Справка -> Установить новое программное обеспечение
  3. Добавить (в правом верхнем углу)
  4. Введите следующее ссылка на плагин Aptana с Eclipse Juno: http://download.aptana.com/studio3/plugin/install
  5. Нажмите OK
  6. Поставьте галочку для Aptana Studio 3
  7. Далее -> Далее -> Готово

15
задан ROMANIA_engineer 14 December 2017 в 21:12
поделиться

1 ответ

Там уже является потоком в группе RhinoMocks .

GenerateMock создает динамический макет. Динамический макет разрешает вызовы, которые не указаны (= ожидаемые). Если это произойдет, он просто вернет null (или значение по умолчанию для возвращаемого типа).

Примечание: Repeat - это спецификация поведения (например, Stub), а не ожидание , даже если оно указано в ожидании.

Если вы хотите избежать более определенного количества вызовов, можно было написать:

[Test]
public void uhh_what() 
{
    var a = MockRepository.GenerateMock<IPrebuiltNotifier>();
    a.Expect(x => x.Notify()).Repeat.Once();
    a.Stub(x => x.Notify()).Throw(new InvalidOperationException("gotcha"));
    a.Notify();

    // this fails
    a.Notify();

    a.VerifyAllExpectations();
}

Или

[Test]
public void uhh_what() 
{
    var a = MockRepository.GenerateMock<IPrebuiltNotifier>();
    a.Notify();
    a.Notify();

    // this fails
    a.AssertWasCalled(
      x => x.Notify(), 
      o => o.Repeat.Once());
}
26
ответ дан 1 December 2019 в 01:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: