public void GetPrincipal_HttpContextUserIsAuthenticated_ReturnsSecurityPrincipalWithNameFromUser() { var identityStub = MockRepository.GenerateStub <IIdentity>(); identityStub.Stub(_ => _.IsAuthenticated).Return(true); identityStub.Stub(_ => _.Name).Return("The User"); var principalStub = MockRepository.GenerateStub <IPrincipal>(); principalStub.Stub(_ => _.Identity).Return(identityStub); var httpContextStub = MockRepository.GenerateStub <HttpContextBase>(); httpContextStub.User = principalStub; var httpContextProviderStub = MockRepository.GenerateStub <IHttpContextProvider>(); httpContextProviderStub.Stub(_ => _.GetCurrentHttpContext()).Return(httpContextStub); IPrincipalProvider principalProvider = new HttpContextPrincipalProvider(httpContextProviderStub); var securityPrincipal = principalProvider.GetPrincipal(); Assert.That(securityPrincipal, Is.TypeOf <SecurityPrincipal>()); Assert.That(securityPrincipal.User, Is.EqualTo("The User")); }
public void GetPrincipal_HttpContextProviderReturnsNull_ThrowsInvalidOperationException() { var httpContextProviderStub = MockRepository.GenerateStub <IHttpContextProvider>(); httpContextProviderStub.Stub(_ => _.GetCurrentHttpContext()).Return(null); IPrincipalProvider principalProvider = new HttpContextPrincipalProvider(httpContextProviderStub); Assert.That( () => principalProvider.GetPrincipal(), Throws.InvalidOperationException.With.Message.EqualTo("IHttpContextProvider.GetCurrentHttpContext() evaludated and returned null.")); }
public void GetPrincipal_HttpContextUserIsNotAuthenticated_ReturnsNullSecurityPrincipal() { var identityStub = MockRepository.GenerateStub <IIdentity>(); identityStub.Stub(_ => _.IsAuthenticated).Return(false); var principalStub = MockRepository.GenerateStub <IPrincipal>(); principalStub.Stub(_ => _.Identity).Return(identityStub); var httpContextStub = MockRepository.GenerateStub <HttpContextBase>(); httpContextStub.User = principalStub; var httpContextProviderStub = MockRepository.GenerateStub <IHttpContextProvider>(); httpContextProviderStub.Stub(_ => _.GetCurrentHttpContext()).Return(httpContextStub); IPrincipalProvider principalProvider = new HttpContextPrincipalProvider(httpContextProviderStub); Assert.That(principalProvider.GetPrincipal(), Is.TypeOf <NullSecurityPrincipal>()); }
public void GetIsNull() { IPrincipalProvider principalProvider = new HttpContextPrincipalProvider(MockRepository.GenerateStub <IHttpContextProvider>()); Assert.That(principalProvider.IsNull, Is.False); }