public async Task GetStops_KnownStation()
        {
            using (PathSqlDbRepository dbRepository = this.CreateSqlDbRepository())
            {
                using (var databaseStream = new FileStream(TEST_DATABASE_PATH, FileMode.Open))
                {
                    this.mockApiClient.Setup(api => api.GetLatestChecksum(INITIAL_CHECKSUM)).ReturnsAsync(LATEST_CHECKSUM);
                    this.mockApiClient.Setup(api => api.GetDatabaseAsStream(LATEST_CHECKSUM)).ReturnsAsync(databaseStream);
                    await dbRepository.OnStartup();
                }

                var stops = await dbRepository.GetStops(Station.Newark);

                CollectionAssert.AreEquivalent(new List <Stop>()
                {
                    new Stop()
                    {
                        Id           = "26733",
                        Name         = "Newark",
                        Latitude     = 40.73454,
                        Longitude    = -74.16375,
                        LocationType = LocationType.Station,
                        ParentStopId = "",
                        Timezone     = "America/New_York"
                    },
                    new Stop()
                    {
                        Id           = "781718",
                        Name         = "Newark",
                        Latitude     = 40.73454,
                        Longitude    = -74.16375,
                        LocationType = LocationType.Platform,
                        ParentStopId = "26733",
                        Timezone     = ""
                    },
                    new Stop()
                    {
                        Id           = "781719",
                        Name         = "Newark",
                        Latitude     = 40.73454,
                        Longitude    = -74.16375,
                        LocationType = LocationType.Platform,
                        ParentStopId = "26733",
                        Timezone     = ""
                    },
                    new Stop()
                    {
                        Id           = "782490",
                        Name         = "Newark",
                        Latitude     = 40.7344,
                        Longitude    = -74.1635,
                        LocationType = LocationType.Entrance,
                        ParentStopId = "26733",
                        Timezone     = ""
                    },
                    new Stop()
                    {
                        Id           = "782491",
                        Name         = "Newark",
                        Latitude     = 40.7343,
                        Longitude    = -74.1649,
                        LocationType = LocationType.Entrance,
                        ParentStopId = "26733",
                        Timezone     = ""
                    }
                }, stops);
            }
        }
        public async Task GetStops_UnknownStation()
        {
            using (PathSqlDbRepository dbRepository = this.CreateSqlDbRepository())
            {
                using (var databaseStream = new FileStream(TEST_DATABASE_PATH, FileMode.Open))
                {
                    this.mockApiClient.Setup(api => api.GetLatestChecksum(INITIAL_CHECKSUM)).ReturnsAsync(LATEST_CHECKSUM);
                    this.mockApiClient.Setup(api => api.GetDatabaseAsStream(LATEST_CHECKSUM)).ReturnsAsync(databaseStream);
                    await dbRepository.OnStartup();
                }

                await Assert.ThrowsExceptionAsync <ArgumentException>(async() => await dbRepository.GetStops(Station.Unspecified));
            }
        }