我怎样才能用最小起订量模拟System.Net.Mail.Attachment

本文关键字:模拟 System Net Attachment Mail | 更新日期: 2023-09-27 18:37:09

我想为以下代码片段编写一个单元测试:

var attachment = new Attachment(path)
{
   ContentId = Path.GetFileName(path)
};
return attachment;

不幸的是,如果我在单元测试代码中使用假路径调用 ctor ,附件 ctor 会抛出 FileNotFoundException。

如何模拟此代码,以便验证是否正确设置了 ContentId 属性?我不想测试框架代码。

我怎样才能用最小起订量模拟System.Net.Mail.Attachment

您不必为此使用 Moq,只需使用 Attachment 类的这个构造函数,提供您从测试项目的资源中获取的流,以及匹配的 ContentType。例如,可以向资源添加某个文本文件并指定纯文本 MIME 类型。