public void Logger_CreateFromILogLoggerLog4Net_FatalMethodsTest()
        {
            //Arrange
            var testMessage   = Guid.NewGuid().ToString();
            var testException = new Exception(Guid.NewGuid().ToString());

            //Act
            var logger = LoggerWrapperCommonLog.CreateFromLog4Net(log4Net);

            logger.Fatal(testMessage);
            logger.Fatal(testException);
            logger.Fatal(testMessage, testException);

            //Assert
            Assert.Pass(); // just exception can appear in code above
        }
        public void Logger_CreateFromILogLoggerMock_FatalFormatMethodTest()
        {
            //Arrange
            var testMessage      = "test1";
            var retrievedMessage = string.Empty;
            var localLoggerMock  = CreateLoggerMockWithMethods();

            localLoggerMock.Setup(x => x.Fatal(It.IsAny <string>())).Callback((object x) => retrievedMessage = (string)x);
            //Act
            var logger = LoggerWrapperCommonLog.CreateFromLog4Net(localLoggerMock.Object);

            logger.FatalFormat(CultureInfo.CurrentCulture, "test{0}", 1);

            //Assert
            localLoggerMock.Verify(x => x.Fatal(It.IsAny <string>()), Times.AtLeastOnce);
            Assert.AreEqual(testMessage, retrievedMessage);
        }
        public void Logger_CreateFromILogLoggerMock_FatalMethodsTest()
        {
            //Arrange
            var testMessage   = Guid.NewGuid().ToString();
            var testException = new Exception(Guid.NewGuid().ToString());
            //Act
            var logger = LoggerWrapperCommonLog.CreateFromLog4Net(loggerMock.Object);

            logger.Fatal(testMessage);
            logger.Fatal(testException);
            logger.Fatal(testMessage, testException);

            //Assert
            loggerMock.Verify(x => x.Fatal(It.IsAny <string>()), Times.AtLeastOnce);
            loggerMock.Verify(x => x.Fatal(It.IsAny <Exception>()), Times.AtLeastOnce);
            loggerMock.Verify(x => x.Fatal(It.IsAny <string>(), It.IsAny <Exception>()), Times.AtLeastOnce);
        }
        public void Logger_CreateFromILog_DebugMethodsTest()
        {
            //Arrange
            var testMessage   = Guid.NewGuid().ToString();
            var testException = new Exception(Guid.NewGuid().ToString());
            var logger        = new LoggerWrapperCommonLog(log4Net);
            var messages      = new List <Tuple <LogLevel, string, Exception> >();

            //Act
            logger.LogMessageHandler += (x, y, z) => messages.Add(new Tuple <LogLevel, string, Exception>(x, y, z));
            logger.Debug(testMessage);
            logger.Debug(testException);
            logger.Debug(testMessage, testException);

            //Assert
            Assert.AreEqual(3, messages.Count);
        }