我正在尝试为调用该Controller.RedirectToReferrer()
方法的操作方法编写单元测试,但收到“没有可用的推荐人”消息。
如何隔离和模拟这种方法?
我正在尝试为调用该Controller.RedirectToReferrer()
方法的操作方法编写单元测试,但收到“没有可用的推荐人”消息。
如何隔离和模拟这种方法?
你有没有想过创建一个测试替身?
在我正在使用的主干版本 r5299 中,我必须这样做来模拟 RedirectToReferrer。我认为它在最近的提交中发生了变化,我不确定。
[TestFixture]
public class LoginControllerTests : GenericBaseControllerTest<LoginController>
{
private string referrer = "http://www.example.org";
protected override IMockRequest BuildRequest()
{
var request = new StubRequest(Cookies);
request.UrlReferrer = referrer;
return request;
}
protected override IMockResponse BuildResponse(UrlInfo info)
{
var response = new StubResponse(info,
new DefaultUrlBuilder(),
new StubServerUtility(),
new RouteMatch(),
referrer);
return response;
}
等等等等
奇怪的是,您需要调动响应RedirectToReferrer
才能使其正常工作。我不得不在单轨资源中爬行才能弄清楚。