Nothing
testthat::test_that("spread and move accept deep subelement paths", {
library(grid)
library(checkmate)
make_stub_box <- function(label, x = 0.5, y = 0.5) {
b <- list(label = label)
class(b) <- "box"
vp <- list(x = unit(x, "npc"), y = unit(y, "npc"), just = c("center", "center"))
coords <- list(
left = unit(x, "npc"), right = unit(x, "npc"),
top = unit(y, "npc"), bottom = unit(y, "npc"),
x = unit(x, "npc"), y = unit(y, "npc"),
width = unit(0, "npc"), height = unit(0, "npc"),
half_width = unit(0, "npc"), half_height = unit(0, "npc")
)
attr(b, "viewport_data") <- vp
attr(b, "coords") <- structure(coords, class = c("box_coords", "list"))
b
}
# create a nested structure of simple placeholders (we don't need real boxGrob properties)
nested <- list(
grp = list(
sub = list(
make_stub_box("A", x = 0.1, y = 0.9),
make_stub_box("B", x = 0.1, y = 0.7)
)
),
other = list(make_stub_box("C", x = 0.8, y = 0.5))
)
# If a path does not exist we get informative error
expect_error(moveBox(nested, x = 0.5, subelement = c("no", "such")), "The subelement 'no/such' was not found", fixed = TRUE)
# Multiple paths: if the first path is missing we get an informative error
expect_error(moveBox(nested, x = 0.5, subelement = list(c("missing", "x"), c("grp", "sub", 1))), "The subelement 'missing/x' was not found", fixed = TRUE)
# Spread: attempting to target missing path raises same informative error
expect_error(spreadVertical(nested, subelement = c("no", "pe")), "The subelement 'no -> pe' was not found", fixed = TRUE)
})
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.