RhinoMocks - насмешливый метод, чье возвращаемое значение изменяется (даже если передан один и тот же параметр) с несколькими вызовами

Я хочу выяснить, как я могу смоделировать метод, который возвращает другое значение во второй раз, когда он вызывается в первый раз. Например, что-то вроде этого:

public interface IApplicationLifetime
{
    int SecondsSinceStarted {get;}
}

[Test]
public void Expected_mock_behaviour()
{
    IApplicationLifetime mock = MockRepository.GenerateMock<IApplicationLifetime>();

    mock.Expect(m=>m.SecondsSinceStarted).Return(1).Repeat.Once();
    mock.Expect(m=>m.SecondsSinceStarted).Return(2).Repeat.Once();

    Assert.AreEqual(1, mock.SecondsSinceStarted);
    Assert.AreEqual(2, mock.SecondsSinceStarted);
}

Есть ли что-нибудь, что делает это возможным? Помимо реализации подпрограммы для геттера, который реализует конечный автомат?

Приветствия, ребята,

Alex

Ответы на вопрос(3)

Ваш ответ на вопрос