HenrikBengtsson / future.tests

:nut_and_bolt: R package: future.tests - Test Suite for Future API Backends
https://future.tests.futureverse.org
10 stars 1 forks source link

CLEANUP: Automatically reset options and env vars #7

Closed HenrikBengtsson closed 3 years ago

HenrikBengtsson commented 4 years ago

Automatically reset options and env vars after each test. make_test() should do this. One example is:

make_test(title = "futureAssign() - lazy evaluation via disposable option", args = list(lazy = c(FALSE, TRUE)), tags = c("futureAssign", "lazy"), {
  ## Set 'lazy' via disposable option
  options(future.disposable = list(lazy = lazy))
  ## FIXME: Automatically undo
  on.exit(options(future.disposable = NULL))

  a <- 1
  f <- futureAssign("b", { 4 / a })
  a <- 2

  stopifnot(b == 4)
})