Nothing
# if running manually, please run the following line first:
# source("tests/testthat/setup.R")
testthat::skip_on_cran()
tester <- function(speed, mode) set_speed(r5r_core, speed, mode)
test_that("input is correct", {
expect_error(tester(10, 1))
expect_error(tester(10, c("bike", "bike")))
expect_error(tester(10, "oie"))
expect_error(tester("a", "walk"))
expect_error(tester(c(1, 1), "walk"))
expect_error(tester(0, "walk"))
expect_error(tester(Inf, "walk"))
})
test_that("set_speed argument works in travel_time_matrix()", {
walk_expr <- call("travel_time_matrix", r5r_core, pois, pois, mode = "WALK")
slow_walk_expr <- fast_walk_expr <- walk_expr
slow_walk_expr$walk_speed <- 2
fast_walk_expr$walk_speed <- 4
slow_walk <- eval(slow_walk_expr)
fast_walk <- eval(fast_walk_expr)
expect_true(nrow(fast_walk) > nrow(slow_walk))
slow_walk[
fast_walk,
on = c("from_id", "to_id"),
travel_time_fast := i.travel_time_p50
]
expect_true(all(slow_walk$travel_time_p50 >= slow_walk$travel_time_fast))
expect_true(any(slow_walk$travel_time_p50 > slow_walk$travel_time_fast))
bike_expr <- walk_expr
bike_expr$mode <- "BICYCLE"
slow_bike_expr <- fast_bike_expr <- bike_expr
slow_bike_expr$bike_speed <- 5
fast_bike_expr$bike_speed <- 10
slow_bike <- eval(slow_bike_expr)
fast_bike <- eval(fast_bike_expr)
expect_true(nrow(fast_bike) > nrow(slow_bike))
slow_bike[
fast_bike,
on = c("from_id", "to_id"),
travel_time_fast := i.travel_time_p50
]
expect_true(all(slow_bike$travel_time_p50 >= slow_bike$travel_time_fast))
expect_true(any(slow_bike$travel_time_p50 > slow_bike$travel_time_fast))
})
test_that("set_speed argument works in expanded_travel_time_matrix()", {
walk_expr <- call(
"expanded_travel_time_matrix",
r5r_core,
pois,
pois,
mode = "WALK"
)
slow_walk_expr <- fast_walk_expr <- walk_expr
slow_walk_expr$walk_speed <- 2
fast_walk_expr$walk_speed <- 4
slow_walk <- eval(slow_walk_expr)
fast_walk <- eval(fast_walk_expr)
expect_true(nrow(fast_walk) > nrow(slow_walk))
slow_walk[
fast_walk,
on = c("from_id", "to_id"),
total_time_fast := i.total_time
]
expect_true(all(slow_walk$total_time >= slow_walk$total_time_fast))
expect_true(any(slow_walk$total_time > slow_walk$total_time_fast))
bike_expr <- walk_expr
bike_expr$mode <- "BICYCLE"
slow_bike_expr <- fast_bike_expr <- bike_expr
slow_bike_expr$bike_speed <- 5
fast_bike_expr$bike_speed <- 10
slow_bike <- eval(slow_bike_expr)
fast_bike <- eval(fast_bike_expr)
expect_true(nrow(fast_bike) > nrow(slow_bike))
slow_bike[
fast_bike,
on = c("from_id", "to_id"),
total_time_fast := i.total_time
]
expect_true(all(slow_bike$total_time >= slow_bike$total_time_fast))
expect_true(any(slow_bike$total_time > slow_bike$total_time_fast))
})
test_that("set_speed argument works in accessibility()", {
walk_expr <- call(
"accessibility",
r5r_core,
points[1:15],
points[1:15],
mode = "WALK",
opportunities_colnames = "population",
decay_function = "step",
cutoffs = 30
)
slow_walk_expr <- fast_walk_expr <- walk_expr
slow_walk_expr$walk_speed <- 2
fast_walk_expr$walk_speed <- 5
slow_walk <- eval(slow_walk_expr)
fast_walk <- eval(fast_walk_expr)
slow_walk[fast_walk, on = "id", accessibility_fast := i.accessibility]
expect_true(all(slow_walk$accessibility <= slow_walk$accessibility_fast))
expect_true(any(slow_walk$accessibility < slow_walk$accessibility_fast))
bike_expr <- walk_expr
bike_expr$mode <- "BICYCLE"
slow_bike_expr <- fast_bike_expr <- bike_expr
slow_bike_expr$bike_speed <- 5
fast_bike_expr$bike_speed <- 10
slow_bike <- eval(slow_bike_expr)
fast_bike <- eval(fast_bike_expr)
slow_bike[fast_bike, on = "id", accessibility_fast := i.accessibility]
expect_true(all(slow_bike$accessibility <= slow_bike$accessibility_fast))
expect_true(any(slow_bike$accessibility < slow_bike$accessibility_fast))
})
test_that("set_speed argument works in pareto_frontier()", {
walk_expr <- call(
"pareto_frontier",
r5r_core,
points[1:5],
points[1:5],
mode = "WALK",
fare_structure = fare_structure,
fare_cutoffs = 0
)
slow_walk_expr <- fast_walk_expr <- walk_expr
slow_walk_expr$walk_speed <- 2
fast_walk_expr$walk_speed <- 4
slow_walk <- eval(slow_walk_expr)
fast_walk <- eval(fast_walk_expr)
expect_true(nrow(fast_walk) > nrow(slow_walk))
slow_walk[
fast_walk,
on = c("from_id", "to_id"),
travel_time_fast := i.travel_time
]
expect_true(all(slow_walk$travel_time >= slow_walk$travel_time_fast))
expect_true(any(slow_walk$travel_time > slow_walk$travel_time_fast))
bike_expr <- walk_expr
bike_expr$mode <- "BICYCLE"
slow_bike_expr <- fast_bike_expr <- bike_expr
slow_bike_expr$bike_speed <- 5
fast_bike_expr$bike_speed <- 10
slow_bike <- eval(slow_bike_expr)
fast_bike <- eval(fast_bike_expr)
expect_true(nrow(fast_bike) > nrow(slow_bike))
slow_bike[
fast_bike,
on = c("from_id", "to_id"),
travel_time_fast := i.travel_time
]
expect_true(all(slow_bike$travel_time >= slow_bike$travel_time_fast))
expect_true(any(slow_bike$travel_time > slow_bike$travel_time_fast))
})
# FIXME: currently, the speeds calculated from detailed_itineraries() distance
# and duration fields don't result in the same speed specified in the function
# call. some investigation of why is on issue #276
test_that("set_speed argument works in detailed_itineraries()", {
walk_expr <- call(
"detailed_itineraries",
r5r_core,
pois,
pois[15:1],
mode = "WALK",
drop_geometry = TRUE
)
slow_walk_expr <- fast_walk_expr <- walk_expr
slow_walk_expr$walk_speed <- 2
fast_walk_expr$walk_speed <- 4.68
slow_walk <- eval(slow_walk_expr)
fast_walk <- eval(fast_walk_expr)
slow_walk[
fast_walk,
on = c("from_id", "to_id"),
segment_duration_fast := i.segment_duration
]
expect_true(
all(slow_walk$segment_duration >= slow_walk$segment_duration_fast)
)
expect_true(any(slow_walk$segment_duration > slow_walk$segment_duration_fast))
bike_expr <- walk_expr
bike_expr$mode <- "BICYCLE"
bike_expr$max_lts < 4
slow_bike_expr <- fast_bike_expr <- bike_expr
slow_bike_expr$bike_speed <- 5
fast_bike_expr$bike_speed <- 10
slow_bike <- eval(slow_bike_expr)
fast_bike <- eval(fast_bike_expr)
slow_bike[
fast_bike,
on = c("from_id", "to_id"),
segment_duration_fast := i.segment_duration
]
expect_true(
all(slow_bike$segment_duration >= slow_bike$segment_duration_fast)
)
expect_true(any(slow_bike$segment_duration > slow_bike$segment_duration_fast))
})
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.