17

我有一个使用 out 参数的函数。我怎样才能模拟这个功能?

我的功能是:

GetProperties(out string name, out string path, out string extension);

在我的原始代码中,我这样做:

string Name;
string Path;
string Extension;
MyObject.GetProperties(out Name, out Path, out Extension);

现在,我怎么能嘲笑这个?

4

1 回答 1

25

您应该在调用这样的方法之前分配变量的值:

string Name = "name";
string Path = "path";
string Extension = "extension";
mock.Setup(item => item.GetProperties(out Name, out Path, out Extension))
    .Returns(someReturnValue);

尽管我更喜欢在您的返回类型中返回这些值,而不是使用这么多的输出参数。

于 2012-07-19T07:38:39.650 回答