예제 #1
0
        private void ModuleListPanelLoad(object sender, EventArgs e)
        {
            Objects.OnChanged += RefreshPanel;
            RefreshPanel(Objects, EventArgs.Empty);

            _dog = new Watchdog(10000d);
            _dog.Bark += DogBark;
            _dog.Enabled = actEnableMonitor.Checked;

            _watcher = new FileSystemWatcher(((ReloadableObjectRegistry)Objects).Path, Filter)
            {
                IncludeSubdirectories = false
            };
            _watcher.Changed += OnChanged;
            _watcher.Created += OnChanged;
            _watcher.Deleted += OnChanged;
            _watcher.EnableRaisingEvents = actEnableMonitor.Checked;
        }
예제 #2
0
 public void Test()
 {
     int count = 0;
     Watchdog dog = new Watchdog(100d);
     dog.Bark += delegate
                     {
                         count++;
                     };
     dog.Enabled = true;
     dog.KeepBarking = false;
     dog.Feed();
     dog.Feed();
     dog.Feed();
     dog.Feed();
     Thread.Sleep(200);
     Assert.AreEqual(1, count);
     Thread.Sleep(120);
     dog.Enabled = false;
     Assert.IsFalse(dog.Enabled);
     Assert.IsFalse(dog.KeepBarking);
     // TODO: 100% coverage in this way?
     dog.Feed();
     Assert.AreEqual(1, count);
 }