public FileWatcherService(Logger logger) { _logger = logger; FileObserver.CreateFunction = (dto, notifier) => new FileWatchDog(dto, notifier); var fileManager = new FileNotifierManager(new SignalRNotifier()); GlobalHost.DependencyResolver.Register(typeof(FileNotifierHub), () => new FileNotifierHub(fileManager)); }
public void RemoveFromObservableListException_Test() { //Given var mockNotifier = Substitute.For <IFileNotifier>(); var fileNotifierManager = new FileNotifierManager(mockNotifier); const string path = @"D:\data.xml"; //Then Assert.Throws <InvalidOperationException>(() => fileNotifierManager.Remove(path)); }
public void AddFileToObservableListMoreThanOnce_Test() { //Given var mockNotifier = Substitute.For <IFileNotifier>(); var fileNotifierManager = new FileNotifierManager(mockNotifier); var fileToObserve = new ObserveFileDto() { DirectoryPath = @"D:\data.xml", Filter = string.Empty, WithSubDirectories = true }; //When fileNotifierManager.Set(fileToObserve); //Then Assert.Throws <ArgumentException>(() => fileNotifierManager.Set(fileToObserve)); }
public void AddFileToObservableList_Test() { //Given var mockNotifier = Substitute.For <IFileNotifier>(); var fileNotifierManager = new FileNotifierManager(mockNotifier); var fileToObserve = new ObserveFileDto() { DirectoryPath = @"D:\data.xml", Filter = string.Empty, WithSubDirectories = true }; //When fileNotifierManager.Set(fileToObserve); //Then Assert.AreEqual(fileNotifierManager.PerformFileList().Count, 1); }
public void NotifyFileOnCreated_Test() { //Given var fileNotifier = new FakeNotifier(); var fileToObserve = new ObserveFileDto() { DirectoryPath = mainDir, Filter = "*.*", WithSubDirectories = false }; var fileNotifierManager = new FileNotifierManager(fileNotifier); //When fileNotifierManager.Set(fileToObserve); File.Create(FilePath).Close(); //Then Assert.That(() => fileNotifier.CountInvoked, Is.EqualTo(1).After(Delay)); }
public void NotifyInSubDirectory_Test() { //Given var fileNotifier = new FakeNotifier(); var fileToObserve = new ObserveFileDto() { DirectoryPath = mainDir, Filter = "*.*", WithSubDirectories = true }; var fileNotifierManager = new FileNotifierManager(fileNotifier); //When fileNotifierManager.Set(fileToObserve); const string testfile = "testfile.txt"; File.Create(Path.Combine(SubDirPath, testfile)).Close(); //Then Assert.That(() => fileNotifier.CountInvoked, Is.EqualTo(1).After(Delay)); }
public void OnRename_Test() { //Given var fileNotifier = new FakeNotifier(); var fileToObserve = new ObserveFileDto() { DirectoryPath = mainDir, Filter = "*.*", WithSubDirectories = false }; var fileNotifierManager = new FileNotifierManager(fileNotifier); //When fileNotifierManager.Set(fileToObserve); File.Create(FilePath).Close(); string newfileName = Path.Combine(mainDir, "newFileName.txt"); File.Move(FilePath, newfileName); DeleteIfExist(newfileName); //Then Assert.That(() => fileNotifier.CountInvoked, Is.EqualTo(3).After(Delay)); }
public FileNotifierHub(FileNotifierManager fileNotifierManager) { _fileNotifierManager = fileNotifierManager; }