context("test-spongebob")
expect_eqNe <- function(...) expect_equal(..., check.environment = FALSE)
expect_equal_scales <- function(x, y, ...) {
x <- as.list(x)
y <- as.list(y)
x$call <- y$call <- NULL
expect_equal(x, y, ...)
}
test_that("theme_spongeBob works", {
thm <- theme_spongeBob()
expect_s3_class(thm, "theme")
## font
expect_equal(thm$text$family, "")
expect_null(thm$plot.title$family)
expect_null(thm$legend.title$family)
expect_null(thm$legend.text$family)
## size
expect_equal(thm$text$size, 12)
expect_equal(thm$plot.title$size, 18)
expect_equal(thm$plot.subtitle$size, 12)
expect_equal(thm$axis.text$size, 12)
expect_equal(thm$axis.title$size, 14)
expect_equal(thm$legend.text$size, 9)
expect_equal(thm$legend.title$size, 10)
## color
expect_equal(thm$text$colour, "#F9FEFF")
expect_equal(thm$plot.title$colour, "#F9FEFF")
expect_equal(thm$plot.subtitle$colour, "#F9FEFF")
expect_equal(thm$axis.text$colour, "#F9FEFF")
expect_equal(thm$axis.title$colour, "#F9FEFF")
expect_equal(thm$legend.text$colour, "#F9FEFF")
expect_equal(thm$legend.title$colour, "#F9FEFF")
expect_equal(thm$legend.position, "bottom")
## ticks == TRUE
thm <- theme_spongeBob(ticks = TRUE)
expect_s3_class(thm, "theme")
## font
expect_equal(thm$text$family, "")
expect_null(thm$plot.title$family)
expect_null(thm$legend.title$family)
expect_null(thm$legend.text$family)
## size
expect_equal(thm$text$size, 12)
expect_equal(thm$plot.title$size, 18)
expect_equal(thm$plot.subtitle$size, 12)
expect_equal(thm$axis.text$size, 12)
expect_equal(thm$axis.title$size, 14)
expect_equal(thm$legend.text$size, 9)
expect_equal(thm$legend.title$size, 10)
## ticks
expect_equal(thm$axis.ticks$linewidth, 0.15)
## color
expect_equal(thm$text$colour, "#F9FEFF")
expect_equal(thm$plot.title$colour, "#F9FEFF")
expect_equal(thm$plot.subtitle$colour, "#F9FEFF")
expect_equal(thm$axis.text$colour, "#F9FEFF")
expect_equal(thm$axis.title$colour, "#F9FEFF")
expect_equal(thm$legend.text$colour, "#F9FEFF")
expect_equal(thm$legend.title$colour, "#F9FEFF")
expect_equal(thm$legend.position, "bottom")
})
test_that("spongeBob_pal raises warning with large number, x > 9", {
expect_warning(spongeBob_pal()(10))
expect_warning(spongeBob_pal(reverse = TRUE)(10))
expect_error(spongeBob_pal(n = 10))
})
# test_that("scale_colour_spongeBob equals scale_color_spongeBob", {
# expect_equal_scales(scale_color_spongeBob(), scale_colour_spongeBob())
# })
#
# test_that("scale_colour_spongeBob works", {
# expect_is(scale_color_spongeBob(), "ScaleDiscrete")
# })
#
# test_that("scale_fill_spongeBob works", {
# expect_is(scale_fill_spongeBob(), "ScaleDiscrete")
# })
## Colors are correct ----
test_that("spongebob palette outputs correct colors", {
expect_equal(spongeBob_pal()(9),
c( "#C86925", ## brownpants
"#FDF56C", ## sponge yellow
"#FC9576", ## patrick pink
"#5D57AF", ## patrick purple
"#B2CE31", ## patrick green
"#FF2027", ## mr.krabs red
"#B1D6C5", ## squidward blue
"#AB8323", ## squidward shirt brown
"#000000" ## black
))
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.