Nothing
drake_context("console")
test_with_dir("crop_lines() crops lines", {
expect_equal(length(crop_lines(letters, n = 10)), 10)
})
test_with_dir("multiline message cap", {
skip_on_cran() # CRAN gets essential tests only (check time limits).
n <- 100
x1 <- "aldksjf"
x2 <- rep(x1, n)
y1 <- capture.output(multiline_message(x1))
y2 <- capture.output(multiline_message(x2))
dots <- "\\.\\.\\."
expect_false(grepl(dots, y1))
expect_true(grepl(dots, y2))
expect_true(nchar(y2) < nchar(x1) * n)
})
test_with_dir("console to file", {
skip_on_cran() # CRAN gets essential tests only (check time limits).
skip_if_not_installed("knitr")
load_mtcars_example()
cache <- storr::storr_environment()
expect_false(file.exists("log.txt"))
tmp <- capture.output({
make(
my_plan, cache = cache, verbose = 1L, session_info = FALSE,
log_make = "log.txt"
)
make(
my_plan, cache = cache, verbose = 1L, session_info = FALSE,
log_make = "log.txt"
)
make(
my_plan, cache = cache, verbose = 1L, session_info = FALSE,
trigger = trigger(condition = TRUE), log_make = "log.txt"
)
},
type = "message"
)
expect_equal(tmp, character(0))
expect_true(length(readLines("log.txt")) > 0)
})
test_with_dir("drake_warning() and drake_error()", {
skip_on_cran() # CRAN gets essential tests only (check time limits).
plan <- drake_plan(
x = {
message("some_message")
warning("some_warning")
stop("some_error")
}
)
cache <- storr::storr_environment()
expect_error(
expect_warning(
make(
plan, cache = cache,
session_info = FALSE,
verbose = 1L
),
regexp = "some_warning"
),
regexp = "some_error"
)
o <- diagnose(x, cache = cache)
expect_equal(o$warnings, "some_warning")
expect_equal(o$messages, "some_message")
expect_equal(o$error$message, "some_error")
expect_true(any(grepl("some_error", as.character(unlist(o$error$calls)))))
expect_false(file.exists("log.txt"))
expect_error(expect_warning(make(
plan, log_make = "log.txt",
cache = storr::storr_environment(),
session_info = FALSE
)))
x <- readLines("log.txt")
expect_true(any(grepl("some_message", x)))
expect_true(any(grepl("some_warning", x)))
expect_true(any(grepl("some_error", x)))
})
test_with_dir("show_source()", {
skip_on_cran() # CRAN gets essential tests only (check time limits).
plan <- drake_plan(x = base::sqrt(15))
cache <- storr::storr_environment()
make(plan, cache = cache, session_info = FALSE)
config <- drake_config(plan, cache = cache)
expect_message(show_source(x, config), regexp = "command")
expect_message(
show_source("base::sqrt", config, character_only = TRUE), regexp = "import"
)
expect_message(
loadd(x, cache = cache, show_source = TRUE),
regexp = "was built from command"
)
expect_message(
y <- readd(x, cache = cache, show_source = TRUE),
regexp = "was built from command"
)
expect_true(is.numeric(x))
expect_true(is.numeric(y))
})
test_with_dir("progress bar does not break things", {
skip_on_cran()
plan <- drake_plan(
x = target(
1,
transform = map(y = !!seq_len(2))
)
)
make(plan, verbose = 2)
plan <- drake_plan(
x = target(
1,
transform = map(y = !!seq_len(2))
),
w = seq_len(2),
z = target(
1,
dynamic = map(y = w)
)
)
make(plan, verbose = 2)
clean()
skip_if_not_installed("future")
make(plan, verbose = 2, parallelism = "future")
skip_on_os("windows")
clean()
options(clustermq.scheduler = "multicore")
make(plan, verbose = 2, parallelism = "clustermq")
expect_equal(readd(w), seq_len(2))
if ("package:clustermq" %in% search()) {
detach("package:clustermq", unload = TRUE) # nolint
}
})
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.