Nothing
test_that("fails when not set up", {
# test missing setup
expect_error(o311_services(), class = "o311_setup_error")
})
test_that("selecting api works", {
# test endpoint passed
j1 <- o311_api("san diego")
expect_named(o311_cache, "juris")
# test jurisdiction passed
j2 <- o311_api(jurisdiction = "sandiego.gov")
expect_identical(j1, j2)
})
test_that("identical endpoints/jurisdictions fail", {
# test identical endpoints and jurisdictions
with_mocked_bindings(
{
add_test_endpoint()
add_test_endpoint()
},
has_duplicate_endpoints = function(...) FALSE
)
expect_error(
o311_api("sd test"),
class = "o311_endpoints_corrupt_error"
)
o311_reset_endpoints()
})
test_that("no arguments returns current api", {
expect_identical(o311_api(), get_juris())
})
test_that("print method works", {
expect_output(print(o311_api()), "r311_api")
})
test_that("invalid api fails", {
# test invalid jurisdiction
expect_error(
o311_api("invalid"),
class = "o311_not_found_error"
)
})
test_that("format checks in place", {
# test format errors
add_test_endpoint(json = FALSE)
expect_error(
o311_api("sd test", format = "json"),
class = "o311_json_unsupported_error"
)
with_mocked_bindings(
expect_error(
o311_api("sd test", format = "xml"),
class = "o311_package_error"
),
loadable = function(...) FALSE
)
o311_reset_endpoints()
})
test_that("key is stored/removed correctly", {
o311_add_endpoint(
name = "test",
root = "test.org",
key = TRUE
)
expect_warning(o311_api("test"))
o311_api("st. louis", key = "test")
expect_identical(o311_cache$api_key, "test")
o311_api("st. louis", key = "test2")
expect_identical(o311_cache$api_key, "test2")
o311_api("rostock")
expect_null(o311_cache$api_key)
o311_reset_endpoints()
})
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.