public async Task AddParentFolder_ExistingFolder() { var storage = GetStorage(); var folderPath = "/exist2"; var query = new FakeIQuery(new List <FileIndexItem> { new FileIndexItem("/exist2") { IsDirectory = true } }); var syncFolder = new SyncFolder(_appSettings, query, new FakeSelectorStorage(storage), new ConsoleWrapper(), new FakeIWebLogger(), new FakeMemoryCache()); var result = await syncFolder.AddParentFolder(folderPath); Assert.IsNotNull(query.GetObjectByFilePathAsync(folderPath)); Assert.AreEqual(folderPath, result.FilePath); // should not add duplicate content var allItems = await query.GetAllRecursiveAsync("/"); Assert.AreEqual(1, allItems.Count); Assert.AreEqual(folderPath, allItems[0].FilePath); Assert.AreEqual(FileIndexItem.ExifStatus.Ok, allItems[0].Status); }
public async Task AddParentFolder_NewFolders() { var storage = GetStorage(); var folderPath = "/should_add_root2"; storage.CreateDirectory(folderPath); var query = new FakeIQuery(); var syncFolder = new SyncFolder(_appSettings, query, new FakeSelectorStorage(storage), new ConsoleWrapper(), new FakeIWebLogger(), new FakeMemoryCache()); var result = await syncFolder.AddParentFolder(folderPath); Assert.IsNotNull(query.GetObjectByFilePathAsync("/")); Assert.IsNotNull(query.GetObjectByFilePathAsync(folderPath)); Assert.AreEqual(folderPath, result.FilePath); Assert.AreEqual(FileIndexItem.ExifStatus.Ok, result.Status); }
public async Task AddParentFolder_NotFound() { var storage = GetStorage(); var folderPath = "/not-found"; var query = new FakeIQuery(); var syncFolder = new SyncFolder(_appSettings, query, new FakeSelectorStorage(storage), new ConsoleWrapper(), new FakeIWebLogger(), new FakeMemoryCache()); var result = await syncFolder.AddParentFolder(folderPath); Assert.IsNotNull(query.GetObjectByFilePathAsync(folderPath)); Assert.AreEqual(folderPath, result.FilePath); Assert.AreEqual(FileIndexItem.ExifStatus.NotFoundSourceMissing, result.Status); // should not add content var allItems = await query.GetAllRecursiveAsync("/"); Assert.AreEqual(0, allItems.Count); }