예제 #1
0
        public void BeginningTheScopeAddsTheListenerToTheSource_EndingTheScopeRemovesTheListenerFromTheSource()
        {
            CheckThatSourceDoesNotContainTheListener();
            IDisposable defaultScope = DataBindingTraceListener.BeginScope();

            CheckThatSourceContainsTheListener();
            IDisposable customScope = DataBindingTraceListener.BeginScope(Handle);

            CheckThatSourceContainsTheListener();
            customScope.Dispose();
            CheckThatSourceContainsTheListener();
            defaultScope.Dispose();
            CheckThatSourceDoesNotContainTheListener();
예제 #2
0
        public void MessageIsBuiltOnFlushAndIsBasedOnDataPassedViaTraceEvent()
        {
            string?actualMessage = null;

            using TraceListener traceListener = new DataBindingTraceListener(m => actualMessage = m);

            string header          = "Source Verbose: 1 : ";
            string expectedMessage = header + "Format-Argument0-Argument1" + Environment.NewLine;

            traceListener.TraceEvent(null, "Source", TraceEventType.Verbose, 1, "Format-{0}-{1}", "Argument0", "Argument1");

            Assert.Null(actualMessage);
            traceListener.Flush();
            Assert.Equal(expectedMessage, actualMessage);
        }
예제 #3
0
        public void TraceEventOnSourceCallsTraceEventOfListener_WhichCallsWriteViaWriteHeaderAndWriteLineOfListener()
        {
            string?actualMessage = null;

            using (DataBindingTraceListener.BeginScope(m => actualMessage = m))
            {
                string header          = "System.Windows.Data Error: 2 : ";
                string expectedMessage = header + "Format" + Environment.NewLine;

                PresentationTraceSources.DataBindingSource.TraceEvent(TraceEventType.Error, 2, "Format", Array.Empty <object>());

                Assert.Null(actualMessage);
                PresentationTraceSources.DataBindingSource.Flush();
                Assert.Equal(expectedMessage, actualMessage);
            }
        }
예제 #4
0
 public void CreateWithName()
 {
     using TraceListener traceListener = new DataBindingTraceListener(_ => { });
     Assert.Equal("DataBindingTraceListener", traceListener.Name);
 }