test_that("local_reproducible_output() respects local context", { local_reproducible_output(width = 105) expect_equal(getOption("width"), 105) local({ local_reproducible_output(width = 110) expect_equal(getOption("width"), 110) }) expect_equal(getOption("width"), 105) }) test_that("local_envvar respects local context", { local_envvar(test = "a") expect_equal(Sys.getenv("test"), "a") local({ local_envvar(test = "b") expect_equal(Sys.getenv("test"), "b") }) expect_equal(Sys.getenv("test"), "a") local({ local_envvar(test = NA) expect_equal(Sys.getenv("test"), "") }) expect_equal(Sys.getenv("test"), "a") }) test_that("local_collate respects local context", { locale <- switch(Sys.info()[["sysname"]], Darwin = , Linux = "en_US.UTF-8", Windows = if (getRversion() >= "4.2") "en-US" ) skip_if(is.null(locale), "Don't know good locale to use for this platform") local_collate("C") expect_equal(Sys.getlocale("LC_COLLATE"), "C") local({ local_collate(locale) expect_equal(Sys.getlocale("LC_COLLATE"), locale) }) expect_equal(Sys.getlocale("LC_COLLATE"), "C") })