public void GetInstance_NoConfigFound_ReturnsNull() {
			var configRepository = A.Fake<IConfigRepository>();
			A.CallTo(() => configRepository.GetConfig(true)).Returns(null);
			var facotry = new ConfigurableLogManagerFactory(configRepository);

			var result = facotry.GetInstance();

			Assert.IsNull(result);
		}
		public void GetInstance_ConfigForNonExistingLogManagerExists_ThrowsTypeLoadException() {
			var configRepository = A.Fake<IConfigRepository>();
			var config = A.Fake<IConfig>();
			A.CallTo(() => configRepository.GetConfig(true)).Returns(config);
			A.CallTo(() => config.GetAttribute("logManager", "qualifiedTypeName")).Returns("NotExisingLogManager");
			var facotry = new ConfigurableLogManagerFactory(configRepository);

			Assert.Throws<TypeLoadException>(() => facotry.GetInstance());
		}
示例#3
0
        public void GetInstance_ConfigForNonExistingLogManagerExists_ThrowsTypeLoadException()
        {
            var configRepository = A.Fake <IConfigRepository>();
            var config           = A.Fake <IConfig>();

            A.CallTo(() => configRepository.GetConfig(true)).Returns(config);
            A.CallTo(() => config.GetAttribute("logManager", "qualifiedTypeName")).Returns("NotExisingLogManager");
            var facotry = new ConfigurableLogManagerFactory(configRepository);

            Assert.Throws <TypeLoadException>(() => facotry.GetInstance());
        }
示例#4
0
        public void GetInstance_NoConfigFound_ReturnsNull()
        {
            var configRepository = A.Fake <IConfigRepository>();

            A.CallTo(() => configRepository.GetConfig(true)).Returns(null);
            var facotry = new ConfigurableLogManagerFactory(configRepository);

            var result = facotry.GetInstance();

            Assert.IsNull(result);
        }
		public void GetInstance_ConfigForFakeLogManagerExists_ReturnsFakeLogManagerInstance() {
			var configRepository = A.Fake<IConfigRepository>();
			var config = A.Fake<IConfig>();
			A.CallTo(() => configRepository.GetConfig(true)).Returns(config);
			A.CallTo(() => config.GetAttribute("logManager", "qualifiedTypeName")).Returns(typeof(FakeLogManager).AssemblyQualifiedName);
			var facotry = new ConfigurableLogManagerFactory(configRepository);

			var result = facotry.GetInstance();

			Assert.IsInstanceOf<FakeLogManager>(result);
			
		}
示例#6
0
        public void GetInstance_ConfigForFakeLogManagerExists_ReturnsFakeLogManagerInstance()
        {
            var configRepository = A.Fake <IConfigRepository>();
            var config           = A.Fake <IConfig>();

            A.CallTo(() => configRepository.GetConfig(true)).Returns(config);
            A.CallTo(() => config.GetAttribute("logManager", "qualifiedTypeName")).Returns(typeof(FakeLogManager).AssemblyQualifiedName);
            var facotry = new ConfigurableLogManagerFactory(configRepository);

            var result = facotry.GetInstance();

            Assert.IsInstanceOf <FakeLogManager>(result);
        }
示例#7
0
        public void GetInstance_ConfigForFakeLogManagerExistsButIsDiscarded_ReturnsNullAfterConfigDiscarded()
        {
            var configRepository = A.Fake <IConfigRepository>();
            var config           = A.Fake <IConfig>();

            A.CallTo(() => configRepository.GetConfig(true)).Returns(config);
            A.CallTo(() => config.GetAttribute("logManager", "qualifiedTypeName")).Returns(typeof(FakeLogManager).AssemblyQualifiedName);
            var facotry = new ConfigurableLogManagerFactory(configRepository);

            var result = facotry.GetInstance();

            Assert.IsInstanceOf <FakeLogManager>(result);

            config.Discarded += Raise.With(config, EventArgs.Empty).Now;

            A.CallTo(() => configRepository.GetConfig(true)).Returns(null);

            result = facotry.GetInstance();

            Assert.IsNull(result);
        }
		public void GetInstance_ConfigForFakeLogManagerExistsButIsDiscarded_ReturnsNullAfterConfigDiscarded() {
			var configRepository = A.Fake<IConfigRepository>();
			var config = A.Fake<IConfig>();
			A.CallTo(() => configRepository.GetConfig(true)).Returns(config);
			A.CallTo(() => config.GetAttribute("logManager", "qualifiedTypeName")).Returns(typeof(FakeLogManager).AssemblyQualifiedName);
			var facotry = new ConfigurableLogManagerFactory(configRepository);

			var result = facotry.GetInstance();

			Assert.IsInstanceOf<FakeLogManager>(result);

			config.Discarded += Raise.With(config, EventArgs.Empty).Now;

			A.CallTo(() => configRepository.GetConfig(true)).Returns(null);

			result = facotry.GetInstance();

			Assert.IsNull(result);
	
		}