public void Create_DoNotSendInApplicationNameInConfig_ReturnsConfigWithApplicationNameSetToTypeName() {
			var ldapConfigFactory = A.Fake<ILdapConfigFactory>();
			var factory = new ProviderConfigFactory(ldapConfigFactory);

			var providerConfig = factory.Create<ProviderConfigFactoryTests>(null, null);

			Assert.AreEqual(typeof(ProviderConfigFactoryTests).Name, providerConfig.ApplicationName);
		}
		public void Create_SendInName_ReturnsConfigWithName() {
			var ldapConfigFactory = A.Fake<ILdapConfigFactory>();
			var factory = new ProviderConfigFactory(ldapConfigFactory);

			var providerConfig = factory.Create<ProviderConfigFactoryTests>("providername", null);

			Assert.AreEqual("providername", providerConfig.Name);
		}
        public void Create_DoNotSendInApplicationNameInConfig_ReturnsConfigWithApplicationNameSetToTypeName()
        {
            var ldapConfigFactory = A.Fake <ILdapConfigFactory>();
            var factory           = new ProviderConfigFactory(ldapConfigFactory);

            var providerConfig = factory.Create <ProviderConfigFactoryTests>(null, null);

            Assert.AreEqual(typeof(ProviderConfigFactoryTests).Name, providerConfig.ApplicationName);
        }
        public void Create_SendInName_ReturnsConfigWithName()
        {
            var ldapConfigFactory = A.Fake <ILdapConfigFactory>();
            var factory           = new ProviderConfigFactory(ldapConfigFactory);

            var providerConfig = factory.Create <ProviderConfigFactoryTests>("providername", null);

            Assert.AreEqual("providername", providerConfig.Name);
        }
		public void Create_DoNotSendInName_ReturnsConfigWithNameSetToApplicationName() {
			var ldapConfigFactory = A.Fake<ILdapConfigFactory>();
			var factory = new ProviderConfigFactory(ldapConfigFactory);

			var config = new NameValueCollection();
			config.Add("applicationName", "applicationName");

			var providerConfig = factory.Create<ProviderConfigFactoryTests>(null, config);

			Assert.AreEqual("applicationName", providerConfig.Name);
		}
		public void Create_SendInApplicationNameInConfig_ReturnsConfigWithApplicationNameFromConfig() {
			var ldapConfigFactory = A.Fake<ILdapConfigFactory>();
			var factory = new ProviderConfigFactory(ldapConfigFactory);

			var config = new NameValueCollection();
			config.Add("applicationName", "anyname");

			var providerConfig = factory.Create<ProviderConfigFactoryTests>(null, config);

			Assert.AreEqual("anyname", providerConfig.ApplicationName);
		}
        public void Create_DoNotSendInName_ReturnsConfigWithNameSetToApplicationName()
        {
            var ldapConfigFactory = A.Fake <ILdapConfigFactory>();
            var factory           = new ProviderConfigFactory(ldapConfigFactory);

            var config = new NameValueCollection();

            config.Add("applicationName", "applicationName");

            var providerConfig = factory.Create <ProviderConfigFactoryTests>(null, config);

            Assert.AreEqual("applicationName", providerConfig.Name);
        }
        public void Create_SendInApplicationNameInConfig_ReturnsConfigWithApplicationNameFromConfig()
        {
            var ldapConfigFactory = A.Fake <ILdapConfigFactory>();
            var factory           = new ProviderConfigFactory(ldapConfigFactory);

            var config = new NameValueCollection();

            config.Add("applicationName", "anyname");

            var providerConfig = factory.Create <ProviderConfigFactoryTests>(null, config);

            Assert.AreEqual("anyname", providerConfig.ApplicationName);
        }
        public void Create_DoNotSendInAnyLdapServerInConfig_ReturnsDefaultLdapServer()
        {
            var ldapConfigFactory = A.Fake <ILdapConfigFactory>();
            var ldapConfig        = A.Fake <ILdapConfig>();

            A.CallTo(() => ldapConfigFactory.GetConfig(A <string> .Ignored)).ReturnsLazily(c => {
                A.CallTo(() => ldapConfig.Name).ReturnsLazily(() => c.GetArgument <string>(0));
                return(ldapConfig);
            });

            var factory        = new ProviderConfigFactory(ldapConfigFactory);
            var providerConfig = factory.Create <ProviderConfigFactoryTests>(null, null);

            Assert.AreEqual(string.Empty, providerConfig.LdapConfig.Name);
        }
        public void Create_SendInLdapServerInConfig_ReturnsConfigForLdapServer()
        {
            var ldapConfigFactory = A.Fake <ILdapConfigFactory>();
            var ldapConfig        = A.Fake <ILdapConfig>();

            A.CallTo(() => ldapConfigFactory.GetConfig(A <string> .Ignored)).ReturnsLazily(c => {
                A.CallTo(() => ldapConfig.Name).ReturnsLazily(() => c.GetArgument <string>(0));
                return(ldapConfig);
            });

            var factory = new ProviderConfigFactory(ldapConfigFactory);

            var config = new NameValueCollection();

            config.Add("ldapServer", "serverName");

            var providerConfig = factory.Create <ProviderConfigFactoryTests>(null, config);

            Assert.AreEqual("serverName", providerConfig.LdapConfig.Name);
        }
		public void Create_DoNotSendInAnyLdapServerInConfig_ReturnsDefaultLdapServer() {
			var ldapConfigFactory = A.Fake<ILdapConfigFactory>();
			var ldapConfig = A.Fake<ILdapConfig>();
			
			A.CallTo(() => ldapConfigFactory.GetConfig(A<string>.Ignored)).ReturnsLazily(c => {
				A.CallTo(() => ldapConfig.Name).ReturnsLazily(() => c.GetArgument<string>(0));
				return ldapConfig;
			});

			var factory = new ProviderConfigFactory(ldapConfigFactory);
			var providerConfig = factory.Create<ProviderConfigFactoryTests>(null, null);

			Assert.AreEqual(string.Empty, providerConfig.LdapConfig.Name);
		}
		public void Create_SendInLdapServerInConfig_ReturnsConfigForLdapServer() {
			var ldapConfigFactory = A.Fake<ILdapConfigFactory>();
			var ldapConfig = A.Fake<ILdapConfig>();
			
			A.CallTo(() => ldapConfigFactory.GetConfig(A<string>.Ignored)).ReturnsLazily(c => {
				A.CallTo(() => ldapConfig.Name).ReturnsLazily(() => c.GetArgument<string>(0));
				return ldapConfig;
			});
			
			var factory = new ProviderConfigFactory(ldapConfigFactory);

			var config = new NameValueCollection();
			config.Add("ldapServer", "serverName");

			var providerConfig = factory.Create<ProviderConfigFactoryTests>(null, config);

			Assert.AreEqual("serverName", providerConfig.LdapConfig.Name);
		}