test_that("with_collate works and resets collate", {
current <- Sys.getlocale("LC_COLLATE")
new <- "C"
with_collate(
new,
{
expect_equal(new, Sys.getlocale("LC_COLLATE"))
}
)
expect_equal(current, Sys.getlocale("LC_COLLATE"))
})
test_that("with_collate() and with_locale() set LC_COLLATE envvar (#179)", {
en_US <- en_locale_or_skip()
output <- callr::r(
env = c(LC_COLLATE = "C"),
args = list(en_US = en_US),
function(en_US) {
out <- withr::with_collate(en_US, sort(c("A", "a")))
stopifnot(identical(Sys.getenv("LC_COLLATE"), "C"))
out
}
)
expect_equal(output, c("a", "A"))
output <- callr::r(
env = c(LC_COLLATE = "C"),
args = list(en_US = en_US),
function(en_US) {
out <- withr::with_locale(c(LC_COLLATE = en_US), sort(c("A", "a")))
stopifnot(identical(Sys.getenv("LC_COLLATE"), "C"))
out
}
)
expect_equal(output, c("a", "A"))
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.