public void FullTextFormatter_FormatToTextWriter_ContainsCustomProperties()
        {
            var rendererMap = new ScribeSharp.PropertyRenderers.TypeRendererMap(new KeyValuePair <Type, IPropertyRenderer>(typeof(Exception), new PropertyRenderers.ExceptionAsXmlRenderer()));
            var formatter   = new FullTextLogEventFormatter(rendererMap);
            var logEvent    = new LogEvent()
            {
                EventName        = "Test log event.",
                Source           = "TestSource",
                SourceMethod     = "TestSourceMethod",
                SourceLineNumber = 50,
                DateTime         = new DateTime(2016, 05, 08, 12, 15, 36),
                EventSeverity    = LogEventSeverity.Diagnostic,
                EventType        = LogEventType.Start,
                Properties       = new Dictionary <string, object>()
                {
                    { "Test Property", "Test Value" }
                }
            };

            var sb = new System.Text.StringBuilder();

            using (var writer = new System.IO.StringWriter(sb))
            {
                formatter.FormatToTextWriter(logEvent, writer);
                Assert.IsTrue(sb.ToString().Contains("Properties:"));
                Assert.IsTrue(sb.ToString().Contains("Test Property: Test Value"));
            }
        }
        public void FullTextFormatter_FormatToTextWriter_ContainsEventName()
        {
            var rendererMap = new ScribeSharp.PropertyRenderers.TypeRendererMap(new KeyValuePair <Type, IPropertyRenderer>(typeof(Exception), new PropertyRenderers.ExceptionAsXmlRenderer()));
            var formatter   = new FullTextLogEventFormatter(rendererMap);
            var logEvent    = new LogEvent()
            {
                EventName = "Test log event."
            };

            var sb = new System.Text.StringBuilder();

            using (var writer = new System.IO.StringWriter(sb))
            {
                formatter.FormatToTextWriter(logEvent, writer);
                Assert.IsTrue(sb.ToString().Contains("Event Name: Test log event."));
            }
        }
        public void FullTextFormatter_FormatToTextWriter_ContainsDateTime()
        {
            var rendererMap = new ScribeSharp.PropertyRenderers.TypeRendererMap(new KeyValuePair <Type, IPropertyRenderer>(typeof(Exception), new PropertyRenderers.ExceptionAsXmlRenderer()));
            var formatter   = new FullTextLogEventFormatter(rendererMap);
            var logEvent    = new LogEvent()
            {
                EventName        = "Test log event.",
                Source           = "TestSource",
                SourceMethod     = "TestSourceMethod",
                SourceLineNumber = 50,
                DateTime         = new DateTime(2016, 05, 08, 12, 15, 36)
            };

            var sb = new System.Text.StringBuilder();

            using (var writer = new System.IO.StringWriter(sb))
            {
                formatter.FormatToTextWriter(logEvent, writer);
                Assert.IsTrue(sb.ToString().Contains("Date: " + logEvent.DateTime.ToString("G", System.Globalization.CultureInfo.InvariantCulture)));
            }
        }