【问题标题】:FakeItEasy Returns different value for subsequent calls to the mock methodFakeItEasy 为后续调用 mock 方法返回不同的值
【发布时间】:2019-05-17 08:52:11
【问题描述】:

我在 Math 类中有一个名为 GetNumber() 的函数。我想为第一次调用返回 1,为第二次调用返回 2,依此类推。我在 Mockito 中做过类似的事情

when(mathObj.GetNumber()).thenReturn(1).thenReturn(2).thenReturn(3);

我怎样才能用 FakeItEasy 做同样的事情

A.CallTo( () => mathObj.GetNumber()).Returns("")

【问题讨论】:

    标签: c# .net nunit fakeiteasy


    【解决方案1】:

    有关一些示例,请参阅 Return Values Calculated at Call TimeChanging behavior between calls。一种选择是

    A.CallTo(() => mathObj.GetNumber()).ReturnsNextFromSequence(1, 2, 3);
    

    另一个是

    A.CallTo(() => mathObj.GetNumber())
        .Returns(1).Once()
        .Then
        .Returns(2).Once()
        .Then
        .Returns(3).Once();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-21
      相关资源
      最近更新 更多