示例#1
0
        public void FallbackWriter_Constructor_ThrowsOnNullSecondaryWriter()
        {
            var primaryList   = new List <LogEvent>();
            var primaryWriter = new ListLogWriter(primaryList, 10);

            var writer = new FallbackWriter(primaryWriter, null);
        }
示例#2
0
        public void FallbackWriter_Constructor_ThrowsOnNullPrimaryWriter()
        {
            var secondaryList   = new List <LogEvent>();
            var secondaryWriter = new ListLogWriter(secondaryList, 10);

            var writer = new FallbackWriter(null, secondaryWriter);
        }
示例#3
0
        public void FallbackWriter_WriteBatch_WritesToPrimaryWriter()
        {
            var primaryList     = new List <LogEvent>();
            var primaryWriter   = new ListLogWriter(primaryList, 10);
            var secondaryList   = new List <LogEvent>();
            var secondaryWriter = new ListLogWriter(secondaryList, 10);

            var writer = new FallbackWriter(primaryWriter, secondaryWriter);

            LogEvent[] logEvents = new LogEvent[2];
            logEvents[0] = new LogEvent()
            {
                EventName = "Test log message"
            };
            logEvents[1] = new LogEvent()
            {
                EventName = "Test log message 2"
            };

            writer.WriteBatch(logEvents);

            Assert.AreEqual(2, primaryList.Count);
            Assert.AreEqual(0, secondaryList.Count);
            Assert.AreEqual("Test log message", primaryList[0].EventName);
            Assert.AreEqual("Test log message 2", primaryList[1].EventName);
        }
示例#4
0
        public void FallbackWriter_Constructor_ConstructsOkWithValidWriters()
        {
            var primaryList     = new List <LogEvent>();
            var primaryWriter   = new ListLogWriter(primaryList, 10);
            var secondaryList   = new List <LogEvent>();
            var secondaryWriter = new ListLogWriter(secondaryList, 10);

            var writer = new FallbackWriter(primaryWriter, secondaryWriter);
        }
示例#5
0
        public void FallbackWriter_Write_RethrowsOnSecondaryError()
        {
            var primaryWriter   = new MockLogWriterWithError();
            var secondaryWriter = new MockLogWriterWithError();

            var writer = new FallbackWriter(primaryWriter, secondaryWriter);

            var logEvent = new LogEvent()
            {
                EventName = "Test log message"
            };

            writer.Write(logEvent);
        }
示例#6
0
        public void FallbackWriter_Write_FallsbackToSecondaryWriter()
        {
            var primaryWriter   = new MockLogWriterWithError();
            var secondaryList   = new List <LogEvent>();
            var secondaryWriter = new ListLogWriter(secondaryList, 10);

            var writer = new FallbackWriter(primaryWriter, secondaryWriter);

            var logEvent = new LogEvent()
            {
                EventName = "Test log message"
            };

            writer.Write(logEvent);

            Assert.AreEqual(1, secondaryList.Count);
            Assert.AreEqual("Test log message", secondaryList[0].EventName);
        }
示例#7
0
        public void FallbackWriter_WriteBatch_RethrowsOnSecondaryError()
        {
            var primaryWriter   = new MockLogWriterWithError();
            var secondaryWriter = new MockLogWriterWithError();

            var writer = new FallbackWriter(primaryWriter, secondaryWriter);

            LogEvent[] logEvents = new LogEvent[2];
            logEvents[0] = new LogEvent()
            {
                EventName = "Test log message"
            };
            logEvents[1] = new LogEvent()
            {
                EventName = "Test log message 2"
            };

            writer.WriteBatch(logEvents);
        }