public void Dispose_Disposes_If_IDisposable()
        {
            var disposableTraceWriter = new DisposableTraceWriter();
            var traceWriter           = new InterceptingTraceWriter(disposableTraceWriter, t => t.Source = "Test");

            Assert.False(disposableTraceWriter.IsDisposed);
            traceWriter.Dispose();
            Assert.True(disposableTraceWriter.IsDisposed);
        }
        public void Dispose_Ignores_IfNot_IDisposable()
        {
            var testTraceWriter = new TestTraceWriter(TraceLevel.Verbose);

            Assert.IsNotType <IDisposable>(testTraceWriter);
            var traceWriter = new InterceptingTraceWriter(testTraceWriter, t => t.Source = "Test");

            // This shouldn't crash
            traceWriter.Dispose();
        }
 public InterceptingTraceWriterSink(InterceptingTraceWriter writer)
 {
 }