gpt4 book ai didi

fakeiteasy - 如何使用 FakeItEasy 更新参数的属性

转载 作者:行者123 更新时间:2023-12-01 14:30:19 25 4
gpt4 key购买 nike

我有一个包含如下成员的界面:

void ExecuteSqlCommand(string procedureName, SqlParameter[] parameters);

我正在使用 FakeItEasy 创建一个模拟以传递给我的一个类。

我正在测试的代码调用此方法,然后检查 SqlParameters 之一的值。调用方法时如何使用 FakeItEasy 设置该参数的 Value 属性?

我明白这可能不是从数据库中获取单个信息的最佳做法,但我正在使用现有的存储过程,其中一些具有 OUT 参数。

最佳答案

正如您所说,这可能不是最佳做法。除此之外,我想你可以这样做:

A.CallTo(() => fake.ExecuteSqlCommand(A<string>._, A<SqlParameter[]>._))
.Invokes((string s, SqlParameter[] p) => p[someIndex].Value = yourValue);

或者,使用可读性较差但功能更强大的重载,直接访问 IFakeObjectCall:

A.CallTo(() => fake.ExecuteSqlCommand(A<string>._, A<SqlParameter[]>._))
.Invokes(callObject => callObject.GetArgument<SqlParameter[]>("parameters")[someIndex].Value = yourValue);

关于fakeiteasy - 如何使用 FakeItEasy 更新参数的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7432380/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com