Exemplo n.º 1
0
        public void TestFileLogger(string logDirectory, string logFileNameBase, string message, logMsgType entryType, int logCount, int logDelayMilliseconds)
        {
            var logFilePath = Path.Combine(logDirectory, logFileNameBase);

            var logger        = new clsFileLogger(logFilePath);
            var randGenerator = new Random();

            string formatString;

            if (logCount < 10)
            {
                formatString = "{0} {1}/{2}";
            }
            else
            {
                formatString = "{0} {1,2}/{2}";
            }

            for (var i = 0; i < logCount; i++)
            {
                logger.PostEntry(string.Format(formatString, message, i + 1, logCount), entryType, true);
                ProgRunner.SleepMilliseconds(logDelayMilliseconds + randGenerator.Next(0, logDelayMilliseconds / 10));
            }

            var expectedName = logFileNameBase + "_" + DateTime.Now.ToString("MM-dd-yyyy");

            if (!logger.CurrentLogFilePath.Contains(expectedName))
            {
                Assert.Fail("Log file name was not in the expected format of " + expectedName + "; see " + logger.CurrentLogFilePath);
            }

            Console.WriteLine("Log entries written to " + logger.CurrentLogFilePath);
        }
Exemplo n.º 2
0
        public void TestQueueLogger(string logDirectory, string logFileNameBase, string message, logMsgType entryType, int logCount, int logDelayMilliseconds)
        {
            var logFilePath = Path.Combine(logDirectory, logFileNameBase);

            var logger        = new clsFileLogger(logFilePath);
            var randGenerator = new Random();

            var queueLogger = new clsQueLogger(logger);

            string formatString;

            if (logCount < 10)
            {
                formatString = "{0} {1}/{2}";
            }
            else
            {
                formatString = "{0} {1,2}/{2}";
            }

            for (var i = 0; i < logCount; i++)
            {
                queueLogger.PostEntry(string.Format(formatString, message, i + 1, logCount), entryType, true);
                ProgRunner.SleepMilliseconds(logDelayMilliseconds + randGenerator.Next(0, logDelayMilliseconds / 10));
            }

            if (logCount > 5)
            {
                var messages = new List <clsLogEntry>();
                for (var i = 0; i < logCount; i++)
                {
                    messages.Add(new clsLogEntry(string.Format(formatString, "Bulk " + message, i + 1, logCount), entryType));
                }
                queueLogger.PostEntries(messages);
            }

            // Sleep to give the Queue logger time to log the log entries
            ProgRunner.SleepMilliseconds(4000);

            var expectedName = logFileNameBase + "_" + DateTime.Now.ToString(clsFileLogger.FILENAME_DATE_STAMP);

            if (!logger.CurrentLogFilePath.Contains(expectedName))
            {
                Assert.Fail("Log file name was not in the expected format of " + expectedName + "; see " + logger.CurrentLogFilePath);
            }

            Console.WriteLine("Log entries written to " + logger.CurrentLogFilePath);
        }