在控制器内使用成员资格详细信息的单元测试友好方式
这是来自我的 ASP.NET MVC 3 应用程序中的一个 controller 的一段代码:
_destinationdetailRepository.Add(new DestinationDetail {
DestinationID = destination.DestinationID,
CreatedOn = DateTime.Now,
CreatedBy = User.Identity.Name
});
这里重要的是 CreatedBy 属性值这是User.Identity.Name
。它效果很好,我也在我的应用程序的其他部分使用它。但是,我想这不是一种友好的单元测试的做事方式。
那么,在控制器内使用会员数据的方式是什么,以便我在对应用程序进行单元测试时感到高兴。
Here is a piece of code from one of the controller inside my ASP.NET MVC 3 App :
_destinationdetailRepository.Add(new DestinationDetail {
DestinationID = destination.DestinationID,
CreatedOn = DateTime.Now,
CreatedBy = User.Identity.Name
});
What is important here is the CreatedBy property value which is User.Identity.Name
. It works great and I use this on another parts of my app as well. But, I guess this is not a unit test firendly way of doing things.
So, what is the way of using Membership data inside the controller so that I will be happy when I am unit testing my app.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
不,它是单元测试友好的并且是正确的代码。
用户
属性是一个 IPrincipal 接口,可以被嘲笑在单元测试中。No, it's unit test friendly and it is correct code. The
User
property is an IPrincipal interface that can be mocked in an unit test.