Local helper functions for package unit tests
Usage
local_bru_testthat_assign(x, values, envir = parent.frame())
local_bru_testthat_tolerances(
tolerances = c(1e-04, 0.01, 0.1),
envir = parent.frame()
)
local_bru_options_set(..., .reset = FALSE, envir = parent.frame())
local_basic_intercept_testdata()
local_basic_fixed_effect_testdata()
local_bru_safe_inla(multicore = FALSE, quietly = TRUE, envir = parent.frame())
local_bru_testthat_setup(envir = parent.frame())
Arguments
- x
character; Name of variable to assign to
- values
the object to assign to
x
- envir
environment for exit handlers
- tolerances
numeric vector of length 3;
[lowtol, midtol, hitol]
- .reset
For
local_bru_options_set
, logical indicating if the global override options list should be emptied before setting the new option(s).- multicore
logical; if
TRUE
, multiple cores are allowed, and the INLAnum.threads
option is not checked or altered. Default:FALSE
, multicore not allowed (used for examples and unit tests).- quietly
logical; if
TRUE
, prints diagnostic messages. A message is always printed if the INLAnum.threads
option is altered, regardless of thequietly
argument. Default: TRUE.
Value
local_bru_options_set()
returns a copy of the global override
options (not including the defaults), invisibly.
Functions
local_bru_testthat_assign()
: Assign local variable. Useful for easy cleanup of global workspace withwithr::deferred_run()
when running tests interactively.local_bru_testthat_tolerances()
: Assign test tolerances Assign local tolerance variables. Useful for easy cleanup of global workspace withwithr::deferred_run()
when running tests interactively.local_bru_options_set()
: Callsbru_options_set()
in a reversible waylocal_bru_safe_inla()
: Tests should set num.threads = "1:1" to ensure within-system repeatability by callinglocal_bru_safe_inla()
; see alsobru_safe_inla()
local_bru_testthat_setup()
: Initialise environment for tests. Assigns tolerance variables. To be called either at the top of a testfile, or inside tests. Does not calllocal_bru_safe_inla()
, since that may invoke a skip and should be called inside each test that relies on INLA.
Examples
my_fun <- function(val) {
local_bru_options_set(bru_verbose = val)
bru_options_get("bru_verbose")
}
# Inside the function, the bru_verbose option is changed.
# Outside the function, the bru_verbose option is unchanged.
print(my_fun(TRUE))
#> [1] TRUE
print(bru_options_get("bru_verbose"))
#> [1] 0
print(my_fun(FALSE))
#> [1] FALSE
print(bru_options_get("bru_verbose"))
#> [1] 0