使用FakeItEasy的Out和Ref参数

时间:2011-03-30 21:34:59

标签: c# .net tdd mocking fakeiteasy

我有一个具有out参数的方法,该参数返回许多记录。我想知道如何用FakeItEasy嘲笑它。

1 个答案:

答案 0 :(得分:44)

您应该使用.AssignsOutAndRefParameters配置方法:

[Test]
public void Output_and_reference_parameters_can_be_configured()
{
    var fake = A.Fake<IDictionary<string, string>>();
    string ignored = null;

    A.CallTo(() => fake.TryGetValue("test", out ignored))
        .Returns(true)
        .AssignsOutAndRefParameters("foo");

    // This would of course be within you SUT.
    string outputValue = null;
    fake.TryGetValue("test", out outputValue);

    Assert.That(outputValue, Is.EqualTo("foo"));
}