public void Log_provider_passes_through_correct_verbosity(LogLevel logProviderLevel, LogLevel [] allowedLevels) { var lp = new LogProvider(logProviderLevel); var sentEntry = default(LogEntry); lp.EntryAdded += (sender, logEntry) => { sentEntry = logEntry; }; var allLevels = Enum.GetValues(typeof(LogLevel)).Cast <LogLevel> ().ToArray(); foreach (var level in allLevels) { var newLogEntry = new LogEntry( null, DateTime.UtcNow, TimeSpan.Zero, level, LogFlags.None, null, "Test log.", null, null, 0); lp.Commit(newLogEntry); if (allowedLevels.Contains(level)) { sentEntry.ShouldEqual(newLogEntry); sentEntry.ShouldNotEqual(default(LogEntry)); } } }
public void Log_provider_drops_higher_verbosity(LogLevel newEntryLevel) { var lp = new LogProvider(LogLevel.Info); var sentEntry = default(LogEntry); lp.EntryAdded += (sender, logEntry) => { sentEntry = logEntry; }; var newLogEntry = new LogEntry( null, DateTime.UtcNow, TimeSpan.Zero, newEntryLevel, LogFlags.None, null, "Test log.", null, null, null, 0); lp.Commit(newLogEntry); sentEntry.ShouldNotEqual(newLogEntry); sentEntry.ShouldEqual(default(LogEntry)); }