我有一个方法public void SendMail(string email, string subject, string body, List<Attachment> attachements = null)
,其中最后一个参数可以是null
或List<Attachment>
。
我这样嘲笑:
var mailMock = new Mock<IMailService>();
mailMock.Setup(m => m.SendMail(It.IsNotNull<string>(), It.IsNotNull<string>(), It.IsNotNull<string>(), It.IsAny<List<Attachment>>())).Verifiable();
mailMock.Verify();
但它不允许附件参数中的null
值。如何同时传递null
和List<Attachment>
?
更新:实际上,它正在运行,只是我在实际调用测试方法之前过早地调用了mailMock.Verify();
。
答案 0 :(得分:-2)
您不需要“= null”部分。每个可空对象(包含List)都可以为null。所以像这样的方法无论如何都会允许空值。