asp.net-mvc – 单元测试(mvc) – 带角色的问题
发布时间:2020-12-16 03:36:57 所属栏目:asp.Net 来源:网络整理
导读:我有mvc应用程序,我正在使用poco对象和编写单元测试.问题是当我们到达这行代码Roles.IsUserInRole(“someUser”,“role”)时,我的所有测试都失败了.我应该为角色或……实现新的界面或存储库吗? 谢谢 解决方法 我在编码单元测试中尝试模拟Roles.IsUserInRole
我有mvc应用程序,我正在使用poco对象和编写单元测试.问题是当我们到达这行代码Roles.IsUserInRole(“someUser”,“role”)时,我的所有测试都失败了.我应该为角色或……实现新的界面或存储库吗?
谢谢 解决方法
我在编码单元测试中尝试模拟Roles.IsUserInRole功能时遇到了同样的问题.我的解决方案是创建一个名为RoleProvider的新类和一个方法IsUserInRole的接口,然后调用System.Web.Security.Roles.IsUserInRole:
public class RoleProvider: IRoleProvider { public bool IsUserInRole(IPrincipal userPrincipal) { return System.Web.Security.Roles.IsUserInRole(userPrincipal.Identity.Name,"User"); } } 然后在我的代码中,我调用RoleProvider IsUserInRole方法.如果你有一个接口,你可以在你的测试中模拟IRoleProvider,这里显示的例子是使用Rhino Mocks: var roleProvider = MockRepository.GenerateStub<IRoleProvider>(); roleProvider.Expect(rp => rp.IsUserInRole(userPrincipal)).Return(true); 希望这可以帮助. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – 停止在每次构建时创建和删除app_offline.htm?
- asp.net-mvc-3 – 单元测试一个文件上传,怎么样?
- 确定ASP.Net是否正确注册
- asp.net – JSON字符串中的反斜杠
- 实体框架 – 具有实体框架的MVC MiniProfiler 5模型第一个错
- asp.net – 包装StaticFileMiddleware以重定向404错误
- asp.net-mvc – 用于拆分日期时间字段的ASP.NET MVC 2自定义
- .net – 如何配置Simple Injector IoC以使用RavenDB
- asp.net – 如何在IIS中部署.NET Web项目
- ASP.NET获取当前用户名
推荐文章
站长推荐
热点阅读