test_that("can customise what statuses are errors", {
req <- request_test()
expect_equal(error_is_error(req, response(404)), TRUE)
expect_equal(error_is_error(req, response(200)), FALSE)
req <- req %>% req_error(is_error = ~ !resp_is_error(.x))
expect_equal(error_is_error(req, response(404)), FALSE)
expect_equal(error_is_error(req, response(200)), TRUE)
})
test_that("can customise error info", {
req <- request_test()
expect_equal(error_body(req, response(404)), NULL)
req <- req %>% req_error(body = ~"Hi!")
expect_equal(error_body(req, response(404)), "Hi!")
})
test_that("failing callback still generates useful body", {
req <- request_test() %>% req_error(body = ~ abort("This is an error!"))
expect_snapshot_error(error_body(req, response(404)))
out <- expect_snapshot(error = TRUE, {
req <- request_test("/status/404")
req <- req %>% req_error(body = ~ resp_body_json(.x)$error)
req %>% req_perform()
})
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.