public void MonitorFile()
        {
            const int Times = 5;

            using (DefaultLogMonitor monitor = new DefaultLogMonitor())
            {
                UpdateLogFile("test");

                monitor.StartMonitoring(
                    LogFileName,
                    LogFileCreated,
                    LogFileDeleted,
                    LogFileUpdated,
                    LogFileMonitorError);

                for (int i = 0; i < Times; i++)
                {
                    UpdateLogFile("test2" + i);
                    Thread.Sleep(100);
                }
            }

            Assert.AreEqual(0, errorCount);
            Assert.AreEqual(0, deletedCount);
            Assert.AreEqual(Times * 2, updatedCount);
        }
        public void CreateMonitoredFile()
        {
            using (DefaultLogMonitor monitor = new DefaultLogMonitor())
            {
                monitor.StartMonitoring(
                    LogFileName,
                    LogFileCreated,
                    LogFileDeleted,
                    LogFileUpdated,
                    LogFileMonitorError);

                Thread.Sleep(100);
                UpdateLogFile("test");
                Thread.Sleep(100);
            }

            Assert.AreEqual(0, errorCount);
            Assert.AreEqual(1, createdCount);
            Assert.AreEqual(0, deletedCount);
            Assert.AreEqual(1, updatedCount);
        }