Ejemplo n.º 1
0
        public void GetEntriesTest()
        {
            XElement[] actual;
            InMemoryTraceListener_Accessor.entries = new System.Collections.Concurrent.ConcurrentQueue <XElement>();
            InMemoryTraceListener target = new InMemoryTraceListener();

            target.Write("System.ServiceModel Information: 1 : ");
            target.WriteLine("<TraceRecord xmlns=\"http://schemas.microsoft.com/2004/10/E2ETraceEvent/TraceRecord\" Severity=\"Information\"><TraceIdentifier>http://msdn.microsoft.com/en-US/library/System.ServiceModel.Security.SecurityImpersonationSuccess.aspx</TraceIdentifier><Description>Security Impersonation succeeded at the server.</Description><AppDomain>/LM/W3SVC/1/ROOT/riatracing-1-129141143812693125</AppDomain><ExtendedData xmlns=\"http://schemas.microsoft.com/2006/08/ServiceModel/SecurityImpersonationTraceRecord\"><OperationAction>http://tempuri.org/WcfTraceService/GetTrace</OperationAction><OperationName>GetTrace</OperationName></ExtendedData></TraceRecord>");
            target.Write("System.ServiceModel Information: 2 : ");
            target.WriteLine("");
            target.WriteLine("<TraceRecord xmlns=\"http://schemas.microsoft.com/2004/10/E2ETraceEvent/TraceRecord\" Severity=\"Information\"><TraceIdentifier>http://msdn.microsoft.com/en-US/library/System.ServiceModel.Security.SecurityImpersonationSuccess.aspx</TraceIdentifier><Description>Security Impersonation succeeded at the server.</Description><AppDomain>/LM/W3SVC/1/ROOT/riatracing-1-129141143812693125</AppDomain><ExtendedData xmlns=\"http://schemas.microsoft.com/2006/08/ServiceModel/SecurityImpersonationTraceRecord\"><OperationAction>http://tempuri.org/WcfTraceService/GetTrace</OperationAction><OperationName>GetTrace</OperationName></ExtendedData></TraceRecord>");
            target.Write("boo");
            target.WriteLine("foobarbaz");
            target.Write("System.ServiceModel Information: 3 : ");
            target.WriteLine("<TraceRecord xmlns=\"http://schemas.microsoft.com/2004/10/E2ETraceEvent/TraceRecord\" Severity=\"Information\"><TraceIdentifier>http://msdn.microsoft.com/en-US/library/System.ServiceModel.Security.SecurityImpersonationSuccess.aspx</TraceIdentifier><Description>Security Impersonation succeeded at the server.</Description><AppDomain>/LM/W3SVC/1/ROOT/riatracing-1-129141143812693125</AppDomain><ExtendedData xmlns=\"http://schemas.microsoft.com/2006/08/ServiceModel/SecurityImpersonationTraceRecord\"><OperationAction>http://tempuri.org/WcfTraceService/GetTrace</OperationAction><OperationName>GetTrace</OperationName></ExtendedData></TraceRecord>");
            actual = InMemoryTraceListener_Accessor.GetEntries();
            Assert.IsNotNull(actual);
            Assert.IsTrue(actual.Length == 3);
            int lastEntryCode = 4;

            foreach (XElement entry in actual)
            {
                int currentEntryCode = Int32.Parse(entry.Descendants().First(x => x.Name.LocalName == "Code").Value);
                Assert.IsTrue(currentEntryCode < lastEntryCode);
                lastEntryCode = currentEntryCode;
            }
        }
Ejemplo n.º 2
0
        public void InMemoryTraceListenerConstructorTest()
        {
            string name = "foo";
            InMemoryTraceListener target = new InMemoryTraceListener(name);

            Assert.IsTrue(target.Name == name);
        }
Ejemplo n.º 3
0
 public static Dashboard Start(string binding = "http://localhost:12345")
 {
     var listener = new InMemoryTraceListener();
     Trace.Listeners.Add(listener);
     var webapp = WebApp.Start(binding, app =>
        {
            app.Use(typeof(LoggingDisplayMiddleware), listener);
        });
     Trace.TraceInformation("Dashboard started at " + binding);
     return new Dashboard(listener, webapp);
 }
Ejemplo n.º 4
0
        public void MemoryRecordsTraceEventSentDirectly()
        {
            var listener = new InMemoryTraceListener();

            listener.TraceEvent(null, "Source", TraceEventType.Warning, 1, "{0}-{1}", 2, "A");

            var events = listener.GetEvents();

            Assert.AreEqual(1, events.Length);

            Assert.AreEqual("Source", events[0].Source);
            Assert.AreEqual(1, events[0].Id);
            Assert.AreEqual("2-A", events[0].Message);
        }
Ejemplo n.º 5
0
        public void MemoryOverwriteWhenMoreTracesThanLimit()
        {
            var listener = new InMemoryTraceListener(6);

            for (var count = 1; count <= 15; count++)
            {
                listener.TraceEvent(null, "Source", TraceEventType.Warning, count, "");
            }

            var events = listener.GetEvents();

            Assert.AreEqual(6, events.Length);

            Assert.AreEqual(10, events[0].Id);
            Assert.AreEqual(15, events[5].Id);
        }
 public void Dispose()
 {
     InMemoryTraceListener.ClearLogMessages();
     Trace.Listeners.Remove(InMemoryTraceListener.Instance);
 }