如何使用ref参数存根方法? [英] How to stub a method with ref argument?
问题描述
我正在使用NSubstitute Framework。我使用Return for Specific Arguments的方式模拟我的方法。
Ex: -
public string Concat(string a,string b)
{
var error = new SomeClass();
var result = SomeMethod(a,b ,ref error);
if(result!= null)
{
返回a + b ;
}
else {
返回null;
}
}
如果我想要模仿上面的方法,我怎么能这样做?
我试过,
var mockObj = Substitute.For< SomeObject>();
var error = new SomeClass();
mockObj.SomeMethod(Arg.Is< string>(< some condition>),Arg.Is< string>(某些条件),ref error).Returns(a + b);
但没有成功。我不想使用ReturnForAnyArgs()而不是Returns()
请建议我使用返回来使用ref参数模拟方法的一些解决方案()。
嗨朋友,
欢迎光临MSDN论坛。
首先,请安装NSubstitute,运行以下命令:
程序包管理器控制台。
(工具 - > NuGet包经理 - >包管理器控制台) 。
PM> Install-Package NSubstitute -Version 2.0.3
>>我正在使用Return for Specific Arguments的方式来模拟我的方法。
Out和ref参数可以使用
返回()回调 ,或使用
当......操作 。
请参阅此文档以获取示例:
< p style ="margin:0px 0px 11px"> http://nsubstitute.github.io/help/setting-out-and-ref-arguments/
请感受如果您有任何问题,请免费告诉我。
最好的问候,
< span style ="font-size:medium"> Fletcher
I am using NSubstitute Framework. I am mocking my methods using the way Return for Specific Arguments.
Ex:-
public string Concat(string a, string b)
{
var error = new SomeClass();
var result = SomeMethod(a,b,ref error);
if(result != null)
{
return a + b;
}
else{
return null;
}
}
If i want to mock above method, how can I do that?
I tried like,
var mockObj = Substitute.For<SomeObject>();
var error = new SomeClass();
mockObj.SomeMethod(Arg.Is<string>(<some condition>), Arg.Is<string>(some condition), ref error).Returns(a+b);
but doesn't work out. and I dont want to use ReturnForAnyArgs() instead of Returns()
Please suggest me some solution to mock a method with ref argument using Returns().
Hi friend,
Welcome to MSDN forum.
First, please install NSubstitute, run the following command in the Package Manager Console.
(Tools-> NuGet Package Manager-> Package Manager Console).
PM> Install-Package NSubstitute -Version 2.0.3
>> I am mocking my methods using the way Return for Specific Arguments.
Out and ref arguments can be set using a Returns() callback, or using When..Do.
Please refer to this documentation to get example:
http://nsubstitute.github.io/help/setting-out-and-ref-arguments/
Please feel free let me know if you have any issue.
Best regards,
Fletcher
这篇关于如何使用ref参数存根方法?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!