public void NetworkPropertiesRequiredForValidConfiguration() { var config = new LogConfiguration("net", LogType.Network, LogManager.DefaultSubscriptions); Assert.Throws <InvalidConfigurationException>(() => config.Validate()); config.Hostname = "foo"; Assert.Throws <InvalidConfigurationException>(() => config.Validate()); config = new LogConfiguration("net", LogType.Network, LogManager.DefaultSubscriptions); config.Port = 5309; Assert.Throws <InvalidConfigurationException>(() => config.Validate()); config.Hostname = "foo"; Assert.DoesNotThrow(() => config.Validate()); }
public void ConstructorValidation() { var validLogConfigs = new[] { new LogConfiguration(null, LogType.Console, LogManager.DefaultSubscriptions), }; foreach (var value in Enum.GetValues(typeof(Configuration.AllowEtwLoggingValues))) { var validValue = (Configuration.AllowEtwLoggingValues)value; Assert.DoesNotThrow(() => new Configuration(validLogConfigs, validValue)); } var invalidAllowValue = (Configuration.AllowEtwLoggingValues)((int)Configuration.AllowEtwLoggingValues.Enabled + 8675309); Assert.Throws <ArgumentOutOfRangeException>(() => new Configuration(validLogConfigs, invalidAllowValue)); Assert.Throws <ArgumentNullException>(() => new Configuration(null)); Assert.Throws <ArgumentException>(() => new Configuration(new LogConfiguration[0])); var invalidConfig = new LogConfiguration("foo", LogType.Network, LogManager.DefaultSubscriptions); Assert.Throws <InvalidConfigurationException>(() => invalidConfig.Validate()); var invalidLogConfigs = new List <LogConfiguration>(validLogConfigs); invalidLogConfigs.Add(invalidConfig); Assert.Throws <InvalidConfigurationException>(() => new Configuration(invalidLogConfigs)); var duplicateLogConfigs = new List <LogConfiguration>(validLogConfigs); duplicateLogConfigs.AddRange(validLogConfigs); Assert.Throws <InvalidConfigurationException>(() => new Configuration(duplicateLogConfigs)); var memoryLogs = new[] { new LogConfiguration("memory", LogType.MemoryBuffer, LogManager.DefaultSubscriptions), }; Assert.Throws <InvalidConfigurationException>(() => new Configuration(memoryLogs)); }