Moq:第一次调用和以后调用的返回值不同

本文关键字:调用 返回值 第一次 Moq | 更新日期: 2024-09-22 14:44:28

我可以在Moq中设置一个接口的属性,以便它在第一次调用时返回0,在所有后续调用中返回10吗?

Moq:第一次调用和以后调用的返回值不同

Mock<IFoo> foo = new Mock<IFoo>(MockBehavior.Strict);
bool isFirstCall = true;
foo.Setup(item => item.GetInt())
   .Returns(() =>
   {
       if (isFirstCall)
       {
           isFirstCall = false;
           return 0;
       }
       return 10;
   });