expect_snapshot_trace <- function(trace,
dir = normalizePath(test_path("..")),
srcrefs = FALSE) {
expect_snapshot({
"Full"
print(trace, simplify = "none", dir = dir, srcrefs = srcrefs)
"Focused"
print_focused_trace(trace, dir = dir, srcrefs = srcrefs)
"Branch"
print(trace, simplify = "branch", dir = dir, srcrefs = srcrefs)
})
}
print_focused_trace <- function(trace, ...) {
with_options(
"rlang:::trace_deemph" = function(x) sprintf("<<%s>>", x),
print(trace, ..., simplify = "none", drop = TRUE)
)
}
print_highlighted_trace <- function(x, ...) {
local_options(
"rlang_trace_format_srcrefs" = FALSE,
"rlang:::trace_test_highlight" = TRUE
)
print(x, ..., simplify = "none", drop = TRUE)
}
expect_trace_length <- function(x, n) {
expect_equal(trace_length(x), n)
}
expect_equal_trace <- function(x, y) {
expect_identical(x$parents, y$parents)
expect_equal(x$calls, y$calls)
}
render_md <- function(file, env = global_env()) {
skip_if_not_installed("rmarkdown")
skip_if_not_installed("knitr")
out_file <- tempfile(file)
on.exit(file.remove(out_file))
rmarkdown::render(
test_path(file),
output_format = "md_document",
output_file = out_file,
quiet = TRUE,
envir = env
)
readLines(out_file)
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.