NSubstitute完全手册(十六)设置out和ref参数

通过使用 Returns() 回调或者 When..Do 语法可以设置 out 和 ref 的参数。

1     public interface ILookup
2     {
3       bool TryLookup(string key, out string value);
4     }

对于上面的接口,我们可以配置其返回值,并设置第二个参数的输出:

复制代码
 1     [TestMethod]
 2     public void Test_SetOutRefArgs_SetOutArg()
 3     {
 4       // Arrange
 5       var value = "";
 6       var lookup = Substitute.For<ILookup>();
 7       lookup
 8         .TryLookup("hello", out value)
 9         .Returns(x =>
10         {
11           x[1] = "world!";
12           return true;
13         });
14 
15       // Act
16       var result = lookup.TryLookup("hello", out value);
17 
18       // Assert
19       Assert.IsTrue(result);
20       Assert.AreEqual(value, "world!");
21     }
复制代码

NSubstitute 完全手册

posted @   sangmado  阅读(1663)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示