单元测试 – 如何在ASP MVC 5(Microsoft.AspNet.Identity)中存储User.Identi
发布时间:2020-12-04 23:23:21 所属栏目:asp.Net 来源:互联网
导读:如何在ASP MVC 5(Microsoft.AspNet.Identity)中存储User.Identity.GetUserId(),以进行MVC5控制器的单元测试? GetUserId()是一个扩展名,所以我不能直接模拟它.我需要在测试之前分配Id. 您似乎必须创建一个声明并将其分配给GenericIdentity.但是,单元测试看起
如何在ASP MVC 5(Microsoft.AspNet.Identity)中存储User.Identity.GetUserId(),以进行MVC5控制器的单元测试? GetUserId()是一个扩展名,所以我不能直接模拟它.我需要在测试之前分配Id.
解决方法非常感谢你的想法.我正在使用NSubstitute.我没有Microsoft Fakes和JustMock.所以我结束了直接对GenericIdentity的索赔,所以我可以控制UserId的值:string username = "username"; string userid = Guid.NewGuid().ToString("N"); //could be a constant List<Claim> claims = new List<Claim>{ new Claim("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name",username),new Claim("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier",userid) }; var genericIdentity = new GenericIdentity(""); genericIdentity.AddClaims(claims); var genericPrincipal = new GenericPrincipal(genericIdentity,new string[] { "Asegurado" }); controllerContext.HttpContext.User = genericPrincipal; (编辑:台州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – IIS显示服务器错误而不是自定义错误
- 我应该在ASP.NET MVC中构建我的下一个Web应用程序吗?
- entity-framework – 如果EF 5,如何定义自定义命名约定
- ASP.NET web.config中数据库连接字符串connectionStrings节
- asp.net – Html.Partial()跳过控制器动作
- 如何单元测试我的asp.net-mvc控制器的OnActionExecuting方法
- asp.net – 在Azure网站上启用gzip压缩
- asp.net-mvc – 找到相同类型的两个实体之间的差异
- ASP.NET Core中调整HTTP请求大小的几种方法详解
- asp.net-mvc – 在asp.net mvc 3剃刀中识别html助手的问题
推荐文章
站长推荐
- asp.net-mvc – 用于测试目的的假开放ID提供程序
- 集成ASP.NET Webforms,WebAPI和AngularJS
- asp.net-mvc – ASP.NET MVC:处理取消按钮的正确
- asp.net-mvc – 缩小ASP.NET MVC中的Action Filt
- Asp.NET控制文件上传的大小方法(超简单)
- 我如何让Fiddler捕获我的MVC应用程序向我的ASP.N
- 从ASP.NET应用程序使用Active Directory时,Direc
- asp.net中MVC借助Iframe实现无刷新上传文件实例
- ASP.NET 根据汉字获取汉字拼音的首字母(含多音字
- asp.net-mvc – 在MVC Controller中访问GET参数
热点阅读