public SchedulesController() { var systemTime = new SystemTime(); var httpClient = new HttpClient(); var client = new Client(httpClient); var scraper = new Scraper(systemTime, client); var serializer = new ScrapeResultSerializer(); var pathBuilder = new PathBuilder(); var storageClient = new StorageClient(systemTime, pathBuilder); var uniqueClient = new UniqueClient(storageClient); var statusRecorder = new UploadStatusRecorder(storageClient, systemTime); _scrapeResultRecorder = new ScrapeResultRecorder(scraper, serializer, storageClient, uniqueClient, statusRecorder); _throttledScrapeResultRecorder = new ThrottledScrapeResultRecorder(systemTime, _scrapeResultRecorder); var gtfsConverter = new GtfsConverter(); var gtfsCsvSerializer = new GtfsCsvSerializer(); var gtfsFeedSerializer = new GtfsFeedSerializer(gtfsCsvSerializer); _gtfsFeedArchiveRecord = new GtfsFeedArchiveRecorder(storageClient, uniqueClient, gtfsConverter, gtfsFeedSerializer, statusRecorder); var settingsService = new SettingsProvider(); _settings = new Settings(settingsService); }
private static async Task VerifyExpectedFileNames(bool groupAmPm) { // Arrange var feed = await TestData.GetGtfsFeedAsync(groupAmPm); var csvSerializer = new GtfsCsvSerializer(); var target = new GtfsFeedSerializer(csvSerializer); using (var stream = new MemoryStream()) { // Act await target.SerializeAsync(stream, feed); // Assert stream.Seek(0, SeekOrigin.Begin); using (var zipArchive = new ZipArchive(stream, ZipArchiveMode.Read)) { var fullNames = zipArchive.Entries.Select(e => e.FullName).OrderBy(e => e).ToList(); Assert.Equal( new[] { "agency.txt", "calendar.txt", "routes.txt", "shapes.txt", "stop_times.txt", "stops.txt", "trips.txt" }, fullNames); } } }