public void TextWriterEventListenerConstructors() { // using defaults using (TextWriterEventListener listener = new TextWriterEventListener()) { IdentityModelEventSource.Logger.LogLevel = EventLevel.Informational; listener.EnableEvents(IdentityModelEventSource.Logger, EventLevel.Informational); IdentityModelEventSource.Logger.WriteWarning("This is a warning!"); listener.DisableEvents(IdentityModelEventSource.Logger); } string logText = File.ReadAllText(TextWriterEventListener.DefaultLogFileName); Assert.Contains("This is a warning!", logText); File.Delete(TextWriterEventListener.DefaultLogFileName); // passing custom file path var filename = Guid.NewGuid().ToString() + ".txt"; using (TextWriterEventListener listener = new TextWriterEventListener(filename)) { listener.EnableEvents(IdentityModelEventSource.Logger, EventLevel.Informational); IdentityModelEventSource.Logger.WriteWarning("This is a warning for custom file path!"); listener.DisableEvents(IdentityModelEventSource.Logger); } logText = File.ReadAllText(filename); Assert.Contains("This is a warning for custom file path!", logText); File.Delete(filename); // using StreamWriter filename = Guid.NewGuid().ToString() + ".txt"; Stream fileStream = new FileStream(filename, FileMode.OpenOrCreate, FileAccess.Write); StreamWriter streamWriter = new StreamWriter(fileStream); using (TextWriterEventListener listener = new TextWriterEventListener(streamWriter)) { listener.EnableEvents(IdentityModelEventSource.Logger, EventLevel.Informational); IdentityModelEventSource.Logger.WriteWarning("This is a warning for streamwriter!"); listener.DisableEvents(IdentityModelEventSource.Logger); } streamWriter.Flush(); streamWriter.Dispose(); logText = File.ReadAllText(filename); Assert.Contains("This is a warning for streamwriter!", logText); File.Delete(filename); }
public void TextWriterEventListenerLogging() { var filename = Guid.NewGuid().ToString() + ".txt"; var guid1 = Guid.NewGuid().ToString(); var guid2 = Guid.NewGuid().ToString(); var guid3 = Guid.NewGuid().ToString(); IdentityModelEventSource.Logger.LogLevel = EventLevel.Verbose; using (TextWriterEventListener listener = new TextWriterEventListener(filename)) { listener.EnableEvents(IdentityModelEventSource.Logger, EventLevel.Informational); IdentityModelEventSource.Logger.WriteInformation(guid1); IdentityModelEventSource.Logger.WriteVerbose(guid2); IdentityModelEventSource.Logger.WriteCritical(guid3); } string logText = File.ReadAllText(filename); Assert.DoesNotContain(guid2, logText); Assert.Contains(guid1, logText); Assert.Contains(guid3, logText); File.Delete(filename); }