示例#1
0
        public void TestWriteEventLogEntryToSyslog(EventLogLevel severity)
        {
            var mockSyslogMessageWriter = new Mock <ISyslogMessageWriter>(MockBehavior.Strict);

            var syslogWriter = new EventLogSyslogWriter(mockSyslogMessageWriter.Object)
            {
                InstallFolder      = @"C:\InstallFolder",
                ApplicationName    = "AppName",
                DatabaseName       = "DbName",
                DatabaseServer     = "DbServerName",
                EnterpriseId       = 11111,
                SoftwareVersion    = "1.0",
                ErrorEnabled       = severity == EventLogLevel.Error,
                InformationEnabled = severity == EventLogLevel.Information,
                WarningEnabled     = severity == EventLogLevel.Warning,
                TraceEnabled       = severity == EventLogLevel.Trace
            };

            var logEntry = new EventLogEntry(Guid.NewGuid(), DateTime.Now, Stopwatch.GetTimestamp(), severity, "MachineName", "ProcessName", 10, "MsgSource", "Test Message", 5555,
                                             "FRED", "Bob");

            mockSyslogMessageWriter.Setup(w => w.Write(It.Is <SyslogMessage>(m => ValidateMessage(syslogWriter, m, logEntry))));

            syslogWriter.WriteEntry(logEntry);

            mockSyslogMessageWriter.VerifyAll();
        }
示例#2
0
        public void TestWriteNullEventLogEntryToSyslog()
        {
            var mockSyslogMessageWriter = new Mock <ISyslogMessageWriter>(MockBehavior.Loose);

            var syslogWriter = new EventLogSyslogWriter(mockSyslogMessageWriter.Object);

            Assert.DoesNotThrow(() => syslogWriter.WriteEntry(null));
        }