public void Create_NoAuthenticationModeConfigured_ReturnsStrategyOfTypeGenericAuthenticationUnauthorizedStrategy()
        {
            var httpContextHandler = A.Fake <IHttpContextHandler>();
            var authenticationConfigurationLoader = A.Fake <IAuthenticationConfigurationLoader>();

            var factory = new UnauthorizedStrategyFactory(httpContextHandler, authenticationConfigurationLoader);

            var result = factory.Create();

            Assert.IsInstanceOf <GenericUnauthorizedStrategy>(result);
        }
        public void Create_WindowsAuthenticationModeConfigured_ReturnsStrategyOfTypeGenericAuthenticationUnauthorizedStrategy()
        {
            var httpContextHandler = A.Fake <IHttpContextHandler>();
            var authenticationConfigurationLoader = A.Fake <IAuthenticationConfigurationLoader>();
            var authenticationConfiguration       = A.Fake <IAuthenticationConfiguration>();

            A.CallTo(() => authenticationConfigurationLoader.Load()).Returns(authenticationConfiguration);
            A.CallTo(() => authenticationConfiguration.Mode).Returns(AuthenticationMode.Windows);

            var factory = new UnauthorizedStrategyFactory(httpContextHandler, authenticationConfigurationLoader);

            var result = factory.Create();

            Assert.IsInstanceOf <GenericUnauthorizedStrategy>(result);
        }