[英]Substituting a method return using NSubstitute, AutoFixture and AutoFixture.AutoNSubstitute
[英]How to mock a sequence of calls to the same method to return different values in AutoFixture using NSubstitute?
我正在尋找一種模擬方法的方法,以便在多次調用時結果是不同的。 更具體地說,我要模擬的是方法,以便第三次調用該方法時,我想針對該結果進行斷言。
此語法不正確,但是模擬了我想要完成的工作:
var foo = Fixture.Freeze<IFoo>();
foo.Exists(Arg.Any<object>()).Returns("firstcall").SecondCall("secondcall").ThirdCall("thirdcall");
您可以在AutoFixture中執行此操作嗎?
編輯:正如馬克所指出的,這是一個與NSubstitute有關的問題,而不是與AutoFixture本身有關。 我已經更新了標題。
我在提交問題之前已經找到了答案,所以我將答案發布在這里:
Fixture.Freeze<IFoo>()
.Exists(Arg.Any<object>())
.Returns("default", "firstcall", "secondcall", "thirdcall");
現在,當Exists()
被調用三次時,響應將是"firstcall"
然后是"secondcall"
然后是"thirdcall"
。 此后的任何呼叫都將收到"default"
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.