问题描述
我正在使用 Rhino Mock 并希望根据单元测试中传递的参数设置不同的数据。当我单独运行它们时,它们会按预期运行,但是当我并行运行它们时,即使执行 if-else 代码,数据集也不会改变。
public SetMockData(bool pass=true)
{
var jsonDataPass = "{\"results\":[{\"a\":\"12345\",\"StatusId\":\"12\",\"Id\":\"30\",\"PrimaryId\":\"1\"}";
var jsonDataFails = "{\"results\":[{\"a\":\"12875\",\"StatusId\":\"13\",\"Id\":\"34\",\"PrimaryId\":\"2\"}";
var apiclient = MockRepository.GenerateMock<Iapiclient>();
apiclient.Stub(x => x.GetApiUrl(null,null)).IgnoreArguments().Return("");
if (pass)
{
apiclient.Stub(x => x.ExecuteAsync<JToken>(Arg<string>.Is.Anything,Arg<HttpMethod>.Is.Anything,Arg<StringContent>.Is.Anything)).IgnoreArguments().Return(Task.Fromresult(new ServiceResponse<JToken>
{
Data = JObject.Parse(jsonDataPass),Outcome = Success
}));
apiclient.Stub(x => x.ExecuteAsync<JToken>(Arg<string>.Is.Anything,Arg<string>.Is.Anything,Outcome = Success
}));
}
else
{
apiclient.Stub(x => x.ExecuteAsync<JToken>(Arg<string>.Is.Anything,Arg<StringContent>.Is.Anything)).IgnoreArguments().Return(Task.Fromresult(new ServiceResponse<JToken>
{
Data = JObject.Parse(jsonDataFails),Outcome = Success
}));
}
IoCFactory.RegisterInstance(typeof(Iapiclient),apiclient);
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)