public void Sync_CheckInput_Socket() { var sync = new FakeISynchronize(new List <FileIndexItem> { new FileIndexItem("/test") { Status = FileIndexItem.ExifStatus.Ok } }); var websockets = new FakeIWebSocketConnectionsService(); var appSettings = new AppSettings(); var syncWatcherPreflight = new SyncWatcherConnector(new AppSettings(), sync, websockets, new FakeIQuery(), new FakeIWebLogger(), new TelemetryClient(new TelemetryConfiguration())); syncWatcherPreflight.Sync( new Tuple <string, string, WatcherChangeTypes>( Path.Combine(appSettings.StorageFolder, "test"), null, WatcherChangeTypes.Changed)); Assert.AreEqual(1, websockets.FakeSendToAllAsync.Count(p => !p.StartsWith("[system]"))); var value = websockets.FakeSendToAllAsync.FirstOrDefault(p => !p.StartsWith("[system]")); Assert.IsTrue(value.Contains("filePath\":\"/test\"")); Assert.AreEqual("/test", sync.Inputs[0].Item1); }
public async Task Sync_Disable_I_Param() { var fakeSync = new FakeISynchronize(); await new SyncCli(fakeSync, new AppSettings(), new ConsoleWrapper(), new FakeSelectorStorage()).Sync( new List <string> { "-i", "false" }.ToArray()); Assert.AreEqual(0, fakeSync.Inputs.Count); }
public async Task Sync_NoArgs_Assume_DefaultCheck() { var fakeSync = new FakeISynchronize(); await new SyncCli(fakeSync, new AppSettings(), new ConsoleWrapper(), new FakeSelectorStorage()).Sync( new List <string> { "" }.ToArray()); Assert.AreEqual("/", fakeSync.Inputs[0].Item1); }
public async Task Sync_MinusP_FullPath() { var fakeSync = new FakeISynchronize(); var appSettings = new AppSettings(); await new SyncCli(fakeSync, appSettings, new ConsoleWrapper(), new FakeSelectorStorage()).Sync( new List <string> { "-p", Path.Combine(appSettings.StorageFolder, "test") }.ToArray()); Assert.AreEqual("/test", fakeSync.Inputs[0].Item1); }
public async Task Sync_NoArgs_NotFound() { var fakeSync = new FakeISynchronize(); var console = new FakeConsoleWrapper(); await new SyncCli(fakeSync, new AppSettings(), console, new FakeSelectorStorage()).Sync( new List <string> { "" }.ToArray()); Assert.IsTrue(console.WrittenLines.Any(p => p.Contains("Not Found"))); }
public async Task Sync_MinusS_SubPath() { var fakeSync = new FakeISynchronize(); var appSettings = new AppSettings(); await new SyncCli(fakeSync, appSettings, new ConsoleWrapper(), new FakeSelectorStorage()).Sync( new List <string> { "-s", "/test" }.ToArray()); Assert.AreEqual("/test", fakeSync.Inputs[0].Item1); }
public async Task Sync_Rename_skipNull() { var sync = new FakeISynchronize(); var appSettings = new AppSettings(); var syncWatcherPreflight = new SyncWatcherConnector(new AppSettings(), sync, new FakeIWebSocketConnectionsService(), new FakeIQuery(), new FakeIWebLogger(), new TelemetryClient(new TelemetryConfiguration())); var result = await syncWatcherPreflight.Sync( new Tuple <string, string, WatcherChangeTypes>( Path.Combine(appSettings.StorageFolder, "test"), null, WatcherChangeTypes.Renamed)); Assert.AreEqual("/test", sync.Inputs[0].Item1); }
public async Task Sync_MinusG_Relative() { var fakeSync = new FakeISynchronize(); var appSettings = new AppSettings(); var syncCli = new SyncCli(fakeSync, appSettings, new ConsoleWrapper(), new FakeSelectorStorage()); await syncCli.Sync( new List <string> { "-g", "0" }.ToArray()); var subPathRelative = new StructureService(new FakeIStorage(), appSettings.Structure) .ParseSubfolders(0); Assert.AreEqual(subPathRelative, fakeSync.Inputs[0].Item1); }
public async Task Sync_Rename() { var sync = new FakeISynchronize(); var appSettings = new AppSettings(); var syncWatcherPreflight = new SyncWatcherConnector(new AppSettings(), sync, new FakeIWebSocketConnectionsService(), new FakeIQuery(), new FakeIWebLogger(), new TelemetryClient(new TelemetryConfiguration())); var result = await syncWatcherPreflight.Sync( new Tuple <string, string, WatcherChangeTypes>( Path.Combine(appSettings.StorageFolder, "test"), Path.Combine(appSettings.StorageFolder, "test2"), WatcherChangeTypes.Renamed)); Assert.AreEqual("/test", sync.Inputs[0].Item1); Assert.AreEqual("/test2", sync.Inputs[1].Item1); // result Assert.AreEqual("/test", result[0].FilePath); Assert.AreEqual(FileIndexItem.ExifStatus.NotFoundSourceMissing, result[0].Status); }
public void Sync_CheckInput_CheckIfCacheIsUpdated_ButIgnoreNotInIndexFile() { var sync = new FakeISynchronize(new List <FileIndexItem> { // = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = > source is missing new FileIndexItem("/test.jpg") { Status = FileIndexItem.ExifStatus.NotFoundSourceMissing } }); var websockets = new FakeIWebSocketConnectionsService(); var appSettings = new AppSettings(); var provider = new ServiceCollection() .AddMemoryCache() .BuildServiceProvider(); var memoryCache = provider.GetService <IMemoryCache>(); var builderDb = new DbContextOptionsBuilder <ApplicationDbContext>(); builderDb.UseInMemoryDatabase(nameof(DownloadPhotoControllerTest)); var options = builderDb.Options; var context = new ApplicationDbContext(options); var query = new Query(context, null, null, null, memoryCache); query.AddCacheParentItem("/", new List <FileIndexItem> { new FileIndexItem("/test.jpg") { IsDirectory = false, Tags = "This should not be the tags", ParentDirectory = "/" } }); var syncWatcherConnector = new SyncWatcherConnector(appSettings, sync, websockets, query, new FakeIWebLogger(), new TelemetryClient(new TelemetryConfiguration())); syncWatcherConnector.Sync( new Tuple <string, string, WatcherChangeTypes>( Path.Combine(appSettings.StorageFolder, "test.jpg"), null, WatcherChangeTypes.Changed)); Assert.AreEqual(0, query.DisplayFileFolders().Count()); }
public async Task Sync_NoArgs_ShouldNotSee_NotFound() { var fakeSync = new FakeISynchronize(new List <FileIndexItem> { new FileIndexItem("/") }); var console = new FakeConsoleWrapper(); await new SyncCli(fakeSync, new AppSettings(), console, new FakeSelectorStorage(new FakeIStorage(new List <string> { "/" }))).Sync( new List <string> { "" }.ToArray()); var t = console.WrittenLines.Any(p => p.Contains("Not Found")); Assert.IsFalse(t); }
public void Sync_CheckInput_Socket_Ignore() { var sync = new FakeISynchronize(new List <FileIndexItem> { new FileIndexItem("/test") { Status = FileIndexItem.ExifStatus.OperationNotSupported } }); var websockets = new FakeIWebSocketConnectionsService(); var appSettings = new AppSettings(); var syncWatcherConnector = new SyncWatcherConnector(appSettings, sync, websockets, new FakeIQuery(), new FakeIWebLogger(), new TelemetryClient(new TelemetryConfiguration())); syncWatcherConnector.Sync( new Tuple <string, string, WatcherChangeTypes>( Path.Combine(appSettings.StorageFolder, "test"), null, WatcherChangeTypes.Changed)); Assert.AreEqual(0, websockets.FakeSendToAllAsync.Count); Assert.AreEqual("/test", sync.Inputs[0].Item1); }