test_that("r", { skip_if_not_installed("withr") withr::with_options( list(repos = "foobar"), expect_equal( r_copycat(function() getOption("repos"), user_profile = FALSE, system_profile = FALSE ), "foobar" ) ) gc() }) ## Need to supply libpath for covr... test_that("r_vanilla", { expect_equal( r_vanilla(function() getOption("repos"), libpath = .libPaths()), c(CRAN = "@CRAN@") ) gc() }) test_that("r_safe", { expect_equal( r_safe(function() Sys.getenv("R_TESTS")), "" ) gc() }) ## https://github.com/r-lib/callr/issues/66 test_that("names of getOption('repos') are preserved", { skip_if_not_installed("withr") repos <- withr::with_options( list(repos = c(foo = "bar")), callr::r(function() getOption("repos")) ) expect_false(is.null(names(repos))) expect_identical("foo", names(repos)[[1]]) gc() })