skip_on_cran()
test_that("plotting does not induce state changes in guides", {
guides <- guides(
x = guide_axis(title = "X-axis"),
colour = guide_colourbar(title = "Colourbar"),
shape = guide_legend(title = "Legend"),
size = guide_bins(title = "Bins")
)
p <- ggplot(mpg, aes(displ, hwy, colour = cty, shape = factor(cyl),
size = cyl)) +
geom_point() +
guides
snapshot <- serialize(as.list(p$guides), NULL)
grob <- ggplotGrob(p)
expect_identical(as.list(p$guides), unserialize(snapshot))
})
test_that("adding guides doesn't change plot state", {
p1 <- ggplot(mtcars, aes(disp, mpg))
expect_length(p1$guides$guides, 0)
p2 <- p1 + guides(y = guide_axis(angle = 45))
expect_length(p1$guides$guides, 0)
expect_length(p2$guides$guides, 1)
p3 <- p2 + guides(y = guide_axis(angle = 90))
expect_length(p3$guides$guides, 1)
expect_equal(p3$guides$guides[[1]]$params$angle, 90)
expect_equal(p2$guides$guides[[1]]$params$angle, 45)
})
test_that("dots are checked when making guides", {
expect_snapshot_warning(
new_guide(foo = "bar", super = GuideAxis)
)
expect_snapshot_warning(
guide_legend(foo = "bar")
)
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.