예제 #1
0
        public void TimerContext_Finish_DoesNothingIfTimerHasNotBeenStarted()
        {
            var writer = new StringWriter();
            var logger = new Logger()
            {
                OutWriter = writer
            };

            TimerContext context = new TimerContext("some-name", logger, LogLevelEnum.LOG_DEBUG);

            context.Finish();
            writer.Flush();

            Assert.Equal(-1, context.GetElapsedTime());
            Assert.Equal(0, writer.GetStringBuilder().Length);
        }
예제 #2
0
        public void TimerContext_Finish_WritesMessageWithParenthesis()
        {
            var writer = new StringWriter();
            var logger = new Logger()
            {
                OutWriter = writer
            };
            TimerContext context = new TimerContext("some-name", logger, LogLevelEnum.LOG_INFO);

            context.Start();
            context.Message("msg1");  // Notice no colons at the end
            context.Finish();
            writer.Flush();

            var time            = context.GetElapsedTime();
            var expectedMessage = String.Format("[INFO]  msg1 ({0}ms)", time);

            Assert.Equal(expectedMessage, writer.GetStringBuilder().ToString().Substring(9).TrimEnd());
        }