在我的应用中,用户通过WIF登录。用户的凭据存储在System.Security.Principal.IIdentity
中。现在我想测试CreateUser()
方法。
我必须以某种方式假装那个对象。我尝试做这样的事情:
-extract方法返回该对象:
public IIdentity GetIdentity()
{
return Thread.CurrentPrincipal.Identity;
}
然后在测试文件中执行以下操作:
var identity = new GenericIdentity("mymail@mydomain.com");
A.CallTo(() => _userRepository.GetIdentity()).Returns(identity);
但它不起作用。任何想法如何以最好的方式做到这一点?
答案 0 :(得分:1)
看看WIF的ClaimsPrincipalHttpModule。它将Windows身份转换为IClaimsPrincipal而无需STS。
另请查看SelfSTS这是一个非常有用的工具。