【发布时间】:2008-09-15 09:40:40
【问题描述】:
我正在尝试为调用Controller.RedirectToReferrer() 方法的操作方法编写单元测试,但收到“没有可用的推荐人”消息。
如何隔离和模拟这个方法?
【问题讨论】:
标签: c# unit-testing castle-monorail
我正在尝试为调用Controller.RedirectToReferrer() 方法的操作方法编写单元测试,但收到“没有可用的推荐人”消息。
如何隔离和模拟这个方法?
【问题讨论】:
标签: c# unit-testing castle-monorail
你有没有想过创建一个test double?
【讨论】:
在我正在处理的 my 版本的主干 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 才能工作。我不得不在单轨车源中四处搜寻才能弄清楚。
【讨论】: