public HttpQueryableServiceSpec() { this.listener = new ConsoleTraceListener(); this.listener.Name = Guid.NewGuid().ToString(); TracerExtensibility.AddListener(SourceName.For <TracingChannel>(), listener); TracerExtensibility.SetTracingLevel(SourceName.For <TracingChannel>(), SourceLevels.All); }
public void WhenAddListener_ThenAddsItToEntryConfiguration() { var listener = new ConsoleTraceListener(); TracerExtensibility.AddListener("Foo", listener); var entry = global::System.Diagnostics.Tracer.Instance.GetSourceEntryFor("Foo"); Assert.True(entry.Configuration.Listeners.Contains(listener)); }
public void WhenReplacingTracer_ThenTracersInvokeIt() { var tracer = new Mock <ITracer> { DefaultValue = DefaultValue.Mock }; using (TracerExtensibility.SetTracer(tracer.Object)) { global::System.Diagnostics.Tracer.GetSourceFor <IComparable>(); tracer.Verify(x => x.GetSourceEntryFor("*")); tracer.Verify(x => x.GetSourceEntryFor("System")); tracer.Verify(x => x.GetSourceEntryFor("System.IComparable")); } }
public void WhenDisposingReplacedTracerResult_ThenRevertsToExisting() { var tracer = new Mock <ITracer> { DefaultValue = DefaultValue.Mock }; using (TracerExtensibility.SetTracer(tracer.Object)) { } global::System.Diagnostics.Tracer.GetSourceFor <IComparable>(); tracer.Verify(x => x.GetSourceEntryFor("*"), Times.Never()); tracer.Verify(x => x.GetSourceEntryFor("System"), Times.Never()); tracer.Verify(x => x.GetSourceEntryFor("System.IComparable"), Times.Never()); }
public void WhenRemoveAddedListener_ThenRemovesItFromEntryConfiguration() { var listener = new ConsoleTraceListener { Name = "Bar" }; TracerExtensibility.AddListener("Foo", listener); var entry = global::System.Diagnostics.Tracer.Instance.GetSourceEntryFor("Foo"); Assert.True(entry.Configuration.Listeners.Contains(listener)); TracerExtensibility.RemoveListener("Foo", "Bar"); Assert.False(entry.Configuration.Listeners.Contains(listener)); }
public void WhenExecutingRequest_ThenTracesInformationHeaders() { var listener = new ConsoleTraceListener(); TracerExtensibility.AddListener(SourceName.For <TracingChannel>(), listener); TracerExtensibility.SetTracingLevel(SourceName.For <TracingChannel>(), SourceLevels.All); var config = HttpHostConfiguration.Create() .UseJsonNet() .AddMessageHandlers(typeof(TracingChannel)); using (var ws = new HttpWebService <TestService>("http://localhost:20000", "products", true, config)) { var client = new HttpEntityClient(ws.BaseUri); var products = client.Query <Product>().Skip(1).Take(1).ToList(); Assert.Equal(1, products.Count); Assert.Equal(2, products[0].Id); } listener.Flush(); }
public void WhenSettingTracingLevel_ThenConfigurationIsSet() { TracerExtensibility.SetTracingLevel("Foo", SourceLevels.Warning); Assert.Equal(SourceLevels.Warning, global::System.Diagnostics.Tracer.Instance.GetSourceEntryFor("Foo").Configuration.Switch.Level); }
public void WhenSettingTracingLevelWithNullSourceName_ThenThrowsArgumentNullException() { Assert.Throws <ArgumentNullException>(() => TracerExtensibility.SetTracingLevel(null, SourceLevels.All)); }
public void WhenSettingNullTracer_ThenThrowsArgumentNullException() { Assert.Throws <ArgumentNullException>(() => TracerExtensibility.SetTracer(null)); }
public void WhenRemoveListenerWithNullTracer_ThenThrowsArgumentNullException() { Assert.Throws <ArgumentNullException>(() => TracerExtensibility.RemoveListener(null, "Foo", "Bar")); }
public void WhenRemoveListenerWithNullListenerName_ThenThrowsArgumentNullException() { Assert.Throws <ArgumentNullException>(() => TracerExtensibility.RemoveListener("Foo", null)); }
public void WhenAddNullListener_ThenThrowsArgumentNullException() { Assert.Throws <ArgumentNullException>(() => TracerExtensibility.AddListener("Foo", null)); }
public void WhenAddListenerWithNullSourceName_ThenThrowsArgumentNullException() { Assert.Throws <ArgumentNullException>(() => TracerExtensibility.AddListener(null, new ConsoleTraceListener())); }
public void Dispose() { this.listener.Flush(); TracerExtensibility.RemoveListener(SourceName.For <TracingChannel>(), listener.Name); }