好的 - 所以我是这样开始的,
public ViewResult Index()
{
return View(service.GetProjects());
}
这是我的测试。
[TestMethod]
public void Index_Will_Return_A_List_Of_Active_Projects()
{
var view = controller.Index();
Assert.AreEqual(view.ViewData.Model.GetType(), typeof(List<Project>));
}
所有这一切都被 dokken 所震撼,但后来我添加了登录名,如果用户未通过身份验证,我将他们重定向到登录页面。这是新方法的样子。
public ActionResult Index()
{
if (Request.IsAuthenticated)
return View(service.GetProjects());
return RedirectToAction("Login", "Account");
}
我的问题是这个 - 我无法弄清楚如何为我的生活修复单元测试。我无法再返回 ViewResult,因此无法检查 .ViewData.Model 属性,但我无法弄清楚如何在返回查看结果的同时重定向。我一直在浏览该网站,发现这个如何在 ViewResult 或 ActionResult 函数中重定向?但这并没有真正的帮助。
如果有人能告诉我这将是什么规则 - 我很难过。