Nothing
context("Responses")
test_that("response properly sets basic cookies", {
res <- PlumberResponse$new()
res$setCookie("abc", "two words")
head <- res$toResponse()$headers
expect_equal(head[["Set-Cookie"]], "abc=two%20words")
})
test_that("response sets non-char cookies", {
res <- PlumberResponse$new()
res$setCookie("abc", 123)
head <- res$toResponse()$headers
expect_equal(head[["Set-Cookie"]], "abc=123")
})
test_that("can set multiple same-named headers", {
res <- PlumberResponse$new()
res$setHeader("head", "test")
res$setHeader("head", "another")
test <- FALSE
another <- FALSE
pres <- res$toResponse()
for (i in 1:length(pres$headers)){
n <- names(pres$headers)[i]
if (n == "head"){
if (pres$headers[[i]] == "test"){
test <- TRUE
} else if (pres$headers[[i]] == "another"){
another <- TRUE
}
}
}
expect_true(test)
expect_true(another)
})
test_that("response properly sets cookies with multiple options", {
res <- PlumberResponse$new()
res$setCookie("abc", "two words", http=TRUE, secure=TRUE, same_site="None")
head <- res$toResponse()$headers
expect_equal(head[["Set-Cookie"]], "abc=two%20words; HttpOnly; Secure; SameSite=None")
})
test_that("Body on HTTP responses which forbid it", {
res <- PlumberResponse$new()
res$body <- "Hello"
res$status <- 204
expect_null(res$toResponse()$body)
})
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.