我刚开始在MvcContrib中使用TestHelpers。我想尝试在我的控制器上测试一个操作方法,该方法本身测试IsAjaxRequest()是否为true。关于MvcContrib的新手问题TestHelpers
我使用的是TestHelper样本中显示成立TestControllerBuilder
_controller = new StarsController();
_builder = new TestControllerBuilder();
_builder.InitializeController(_controller);
相同的代码,以便_controller拥有所有伪造/嘲笑的HttpContext里面,这实在是太棒了。但是我现在要做什么来强制内部伪装的Request对象上的IsAjaxRequest()返回true?
谢谢,这听起来不错,但我怎么实际上做到这一点。我真的不知道Rhino Mocks。我已经用了一点Moq,但是我不知道从哪里开始挖掘HttpRequest.Headers属性。你能告诉我一些让我开始帕特里克的代码吗? – 2010-05-28 14:12:30
它确定,我想通了。我已经添加了另一个答案,所以我可以粘贴我使用的代码以防别人帮助其他人。谢谢帕特里克你肯定把我放在正确的轨道上。 – 2010-05-28 14:46:19
var request = _builder.HttpContext.Request; request.Stub(r => r.Headers).Return(new NameValueCollection {{“X-Requested-With”,“XMLHttpRequest”}}); – PatrickSteele 2010-05-28 14:52:44