# TODO rewrite with synthesized sample data
test_that("Stop frequencies (headways) for included data are as expected", {
expect_equal(nrow(get_stop_frequency(gtfs_duke, by_route = FALSE)), 47)
expect_equal(nrow(get_stop_frequency(gtfs_duke, start_time = 10*3600, end_time = 11*3600, by_route = FALSE)), 41)
stops_frequency <- get_stop_frequency(gtfs_duke, service_ids = "c_853_b_19828_d_64")
ex_address <- stops_frequency$mean_headway[stops_frequency$stop_id==778058]
expect_equal(711L, as.integer(ex_address))
stops_frequency_by_route <- get_stop_frequency(gtfs_duke,
service_ids = "c_853_b_19828_d_64",
by_route = TRUE)
expect_equal(
colnames(stops_frequency_by_route),
c("stop_id", "route_id", "direction_id", "service_id", "n_departures", "mean_headway"))
})
test_that("Route frequencies (headways)", {
# TODO rewrite with synthesized sample data
routes_frequency <- get_route_frequency(gtfs_duke)
expect_equal(routes_frequency[routes_frequency$route_id == 1679, ]$median_headways, 24*60)
})
test_that("Route frequencies (headways) w/ service id", {
# TODO rewrite with synthesized sample data
routes_frequency <- get_route_frequency(gtfs_duke, service_ids = "c_883_b_21967_d_31")
expect_equal(routes_frequency[routes_frequency$route_id == 1680, ]$median_headways, (53+1/3)*60)
expect_error(get_route_frequency(gtfs_duke, service_ids = "unknown"),
"Failed to calculate frequency, no departures found")
gtfs_duke2 = gtfs_duke
gtfs_duke2$frequencies[1,] <- list("t_674449_b_19828_tn_21", "00:00:00", "23:00:00", 60, 0)
expect_message(get_route_frequency(gtfs_duke2, service_ids = "c_883_b_21967_d_31"),
"A pre-calculated frequencies dataframe exists for this feed already, consider using that.")
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.