سؤال

In my app users loging in via WIF. User's credentials is stored in System.Security.Principal.IIdentity. Now i want to test CreateUser() method. I have to in some way fake that object. I try to do something like this: -extract method which returns that object:

public IIdentity GetIdentity()
{
    return Thread.CurrentPrincipal.Identity;
}

and then in test file do something like this:

    var identity = new GenericIdentity("mymail@mydomain.com");
    A.CallTo(() => _userRepository.GetIdentity()).Returns(identity);

But it doesn't work. Any ideas how to do that in the best way?

هل كانت مفيدة؟

المحلول

Have a look at WIF's ClaimsPrincipalHttpModule. It will transform a Windows identity into an IClaimsPrincipal without needing an STS.

Also have a look at SelfSTS which is an extremely useful tool.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top