4
我有,我想测试服务的方法。该方法在同一个类中调用另一个方法。此方法已经过测试,所以我想嘲笑该方法。嘲讽的方法在同一界面MOQ
这是我的设置:
private readonly Mock<INewsLetterRepository> _mockNewsLetterRepository;
private readonly Mock<INewsLetterService> _mockNewsLetterService;
private readonly INewsLetterService _newsLetterService;
public NewsLetterServiceTest()
{
_mockNewsLetterRepository = new Mock<INewsLetterRepository>();
_mockNewsLetterService = new Mock<INewsLetterService> {CallBase = true};
_newsLetterService = new NewsLetterService(_mockNewsLetterRepository.Object);
}
这是我使用的测试:
现在的问题是,该功能我嘲笑:BuildNewsLetterHTML空返回,而不是内容它应该返回。
下面是函数的简化版本,我想测试:
public string CreateNewsLetter(NewsLetter newsLetter)
{
var newsletterHTML = BuildNewsLetterHTML(newsLetter);
return newsletterHTML;
}
所以问题是,至少在我看来,是我嘲笑功能不返回字符串的内容它应该返回。 Assert.AreEqual
测试失败,因为实际为空。你们中的任何人都知道为什么实际为空?
在此先感谢。
谢谢你的回复。我试过你的方法,它像一个魅力工作! – Gerard 2010-11-22 12:55:53