public void Constructor_WithDuplicateProvider_ThrowsException() { // Arrange var validThreshold = LoggingEventType.Critical; LoggingProviderBase validFallbackProvider = null; LoggingProviderBase provider = new FakeLoggingProvider(); LoggingProviderBase[] invalidProviderList = new[] { provider, provider }; try { // Act new CompositeLoggingProvider(validThreshold, validFallbackProvider, invalidProviderList); // Assert Assert.Fail("Exception expected."); } catch (Exception ex) { Assert.IsInstanceOfType(ex, typeof(ArgumentException)); var msg = ex.Message; Assert.IsTrue(msg.Contains("providers"), "Message should contain argument name."); Assert.IsTrue(msg.Contains("collection contains") && msg.Contains("duplicate references"), "Message should be descriptive enough. Actual message: " + msg); } }
public void Constructor_WithInvalidThreshold_ThrowsException() { var invalidThreshold = (LoggingEventType)(-1); LoggingProviderBase validFallbackProvider = null; LoggingProviderBase validProvider = new FakeLoggingProvider(); // Act new CompositeLoggingProvider(invalidThreshold, validFallbackProvider, validProvider); }
public void Constructor_WithValidArguments_Succeeds() { // Arrange var validThreshold = LoggingEventType.Critical; LoggingProviderBase validFallbackProvider = null; LoggingProviderBase validProvider = new FakeLoggingProvider(); // Act new CompositeLoggingProvider(validThreshold, validFallbackProvider, validProvider); }
public void Constructor_WithMultipleProviders_Succeeds() { // Arrange var validThreshold = LoggingEventType.Critical; LoggingProviderBase validFallbackProvider = null; LoggingProviderBase provider1 = new FakeLoggingProvider(); LoggingProviderBase provider2 = new FakeLoggingProvider(); // Act new CompositeLoggingProvider(validThreshold, validFallbackProvider, provider1, provider2); }