2008-09-25 86 views
6

比方说,您有一个只能由该配置文件的所有者访问的配置文件页面。该个人资料页位于:你如何使用ASP.NET MVC单元测试网页授权?

用户/资料/ {用户ID}

现在,我为了防止访问此页由其他用户想象,你可以组织你的UserController类的个人资料功能,检查当前会议的身份:

HttpContext.Current.User.Identity.Name

如果ID相匹配的URL中,这样就可以进行。否则,你会重定向到某种错误页面。

我的问题是你如何单元测试这样的东西?我猜你需要在控制器中使用某种依赖注入而不是HttpContext来进行检查,但我不清楚最好的方法是什么。任何意见将是有益的。

回答

1

我结束了在卡子所示的“UserNameFilter”走出曼佐尔的blog post。像魅力一样工作,并且易于进行单元测试。

0

这是嘲讽进来,用假的HttpContext。