我的一个控制器动作(在Ajax请求中被调用的动作)正在将URL返回给客户端,以便它可以进行重定向。我正在使用,Url.RouteUrl(..)
并且在我的单元测试期间由于Controller.Url
未预先填写参数而导致失败。
我尝试了很多操作,其中包括尝试存根UrlHelper
(失败)的其他方法,并手动创建了UrlHelper
具有RequestContext
存根HttpContextBase
(在RouteCollection.GetUrlWithApplicationPath
通话中失败)的。
我已经搜索过Google,但在该主题上几乎找不到任何内容。我在执行Url.RouteUrl
Controller动作时是否正在做一些非常愚蠢的事情?有更容易的方法吗?
更糟糕的是,我希望能够在单元测试中测试返回的URL-实际上,我只想知道它已重定向到正确的路由,但是由于我返回的是URL,而不是路由,我想控制要解析的URL(例如通过使用stubbed RouteCollection
)-但我很乐意让我的测试通过。
料青山看我应如是