Nothing
test_function <- function() {
data.frame(x = rnorm(100),
y = rnorm(100))
}
test_function_memoised <- memoise::memoise(test_function)
same <- function(x, y) {
isTRUE(all.equal(x, y))
}
context("cache logic")
test_that("doesn't cache by default", {
res1 <- with_cache(use_cache = FALSE, file = NULL, test_function_memoised, test_function)
res2 <- with_cache(use_cache = FALSE, file = NULL, test_function_memoised, test_function)
expect_false(same(res1, res2))
file <- tempfile()
res1 <- with_cache(use_cache = FALSE, file = file, test_function_memoised, test_function)
res2 <- with_cache(use_cache = FALSE, file = file, test_function_memoised, test_function)
expect_false(same(res1, res2))
res_file <- read.csv(file)
expect_equal(res2, res_file, check.attributes = FALSE)
})
test_that("cache works", {
res1 <- with_cache(use_cache = TRUE, file = NULL, test_function_memoised, test_function)
res2 <- with_cache(use_cache = TRUE, file = NULL, test_function_memoised, test_function)
expect_equal(res1, res2, check.attributes = FALSE)
file <- tempfile()
res3 <- with_cache(use_cache = TRUE, file = file, test_function_memoised, test_function)
res4 <- with_cache(use_cache = TRUE, file = file, test_function_memoised, test_function)
expect_equal(res3, res4, check.attributes = FALSE)
expect_false(same(res1, res3))
})
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.