2011-12-29 170 views
1

我使用WCFMock嘲笑我的web服务的WebOperationContext。唯一的用法是将自定义HTTP标头添加到WebOperationContext.Current.OutgoingResponse.Headers集合中。我无法使用Moq验证这一点。我已经尝试过:嘲讽WebOperationContext

  • 验证Add方法是否正在调用。失败的原因是加不虚
  • 尝试直接从MockedWebOperationContext.Current访问头。这在数量上始终为零

如何在我的单元测试案例中验证是否已添加自定义标头?

回答

4

想通了。这是后代的解决方案。

当我们创建了“起订量模拟”为IWebOperationContext的例子表明,我们设置的属性DefaultValue = DefaultValue.Mock。这将模拟包括HttpHeaders集合在内的所有依赖项。我跳过这个并嘲笑OutgoingWebResponseContext返回WebHeaderCollection。对于我的测试用例,我只是在这个集合上声明。

+0

我看很接近这个问题,你有什么东西,任何机会,你可以发布您的代码?我在这里错过了一些概念性的观点,这对我很有帮助。 – BryanGrimes 2012-01-19 15:46:50

+0

看起来像这个项目仍然有效,尽管它自2009年以来还没有新版本? – PositiveGuy 2013-10-28 21:16:19