public async Task InitializeAsync() { var cleanFixture = new CleanDBFixture(); var exchangeSyncSetupFixture = new ExchangeSyncSetupFixture(); await cleanFixture.InitializeAsync(); await exchangeSyncSetupFixture.InitializeAsync(); _sync = exchangeSyncSetupFixture.ExchangeSync; _syncRepo = exchangeSyncSetupFixture.ExchangeSyncRepo; _symbolRepo = exchangeSyncSetupFixture.SymbolRepo; }
public async Task InitializeAsync() { var mockDbOptions = new Mock <IOptionsMonitor <DbOptions> >(); mockDbOptions.Setup(x => x.CurrentValue).Returns(new DbOptions { ConnectionString = AppTestSettings.Instance.TestDBConnectionString, DefaultBulkCopyBatchSize = AppTestSettings.Instance.DefaultBulkCopyBatchSize }); var nasdaqLogger = new Mock <ILogger <NasdaqParser> >(); var exchangeClientLogger = new Mock <ILogger <ExchangeClient> >(); // Setup dependencies ExchangeSyncRepo = new ExchangeSyncRepository(mockDbOptions.Object); string nasdaqDownloadUrl = (await ExchangeSyncRepo.GetSyncSettings()).Url; // Stub FTP so we use downloaded file from disk instead of every test run var stubFTPClient = new CachedNasdaqClient(nasdaqDownloadUrl); var exchangeClient = new ExchangeClient( ftpClient: stubFTPClient, parser: new NasdaqParser(nasdaqLogger.Object), logger: exchangeClientLogger.Object); var changesetFactory = new ExchangeSyncChangesetsFactory(); ExchangeSync = new ExchangeSync(exchangeClient, ExchangeSyncRepo, changesetFactory, new Mock <ILogger <ExchangeSync> >().Object); SymbolRepo = new SymbolRepository(mockDbOptions.Object); await ToggleSyncThreshold(false); await ExchangeSync.Sync(); await ToggleSyncThreshold(true); }