| # test_that() | |||||
| describe("theme_xaringan()", { | |||||
| it("errors if no css file or style_xaringan theme called", { | |||||
| expect_error( | |||||
| with_clean_session(function() { | |||||
| xaringanthemer::theme_xaringan() | |||||
| }) | |||||
| ) | |||||
| }) | |||||
| it("returns a theme using the style_xaringan colors", { | |||||
| theme <- with_clean_session(function() { | |||||
| xaringanthemer::style_xaringan( | |||||
| text_color = "#000001", | |||||
| background_color = "#000002", | |||||
| header_color = "#000003", | |||||
| text_bold_color = "#000004", | |||||
| text_font_family = "Damogran", | |||||
| text_font_google = NULL, | |||||
| header_font_family = "Magrathea", | |||||
| header_font_google = NULL | |||||
| ) | |||||
| xaringanthemer::theme_xaringan( | |||||
| text_font_use_google = FALSE, | |||||
| title_font_use_google = FALSE | |||||
| ) | |||||
| }) | |||||
| expect_equal(theme$text$family, "Damogran") | |||||
| expect_equal(theme$title$family, "Magrathea") | |||||
| expect_equal(theme$title$colour, "#000003") | |||||
| expect_equal(theme$plot.background$colour, "#000002") | |||||
| expect_equal(theme$plot.background$fill, "#000002") | |||||
| }) | |||||
| it("returns correct theme reading from a css file", { | |||||
| css <- xaringanthemer::style_xaringan( | |||||
| text_color = "#000001", | |||||
| background_color = "#000002", | |||||
| header_color = "#000003", | |||||
| text_bold_color = "#000004", | |||||
| text_font_family = "Damogran", | |||||
| text_font_google = NULL, | |||||
| header_font_family = "Magrathea", | |||||
| header_font_google = NULL, | |||||
| outfile = NULL | |||||
| ) | |||||
| theme <- with_clean_session(function(css) { | |||||
| writeLines(css, "xaringan-themer.css") | |||||
| xaringanthemer::theme_xaringan( | |||||
| text_font_use_google = FALSE, | |||||
| title_font_use_google = FALSE | |||||
| ) | |||||
| }, list(css = css)) | |||||
| expect_equal(theme$text$family, "Damogran") | |||||
| expect_equal(theme$title$family, "Magrathea") | |||||
| expect_equal(theme$title$colour, "#000003") | |||||
| expect_equal(theme$plot.background$colour, "#000002") | |||||
| expect_equal(theme$plot.background$fill, "#000002") | |||||
| }) | |||||
| it("works with 3-digit hex colors", { | |||||
| theme <- with_clean_session(function() { | |||||
| xaringanthemer::style_xaringan( | |||||
| text_color = "#001", | |||||
| background_color = "#002", | |||||
| header_color = "#003", | |||||
| text_bold_color = "#004" | |||||
| ) | |||||
| xaringanthemer::theme_xaringan( | |||||
| text_font_use_google = FALSE, | |||||
| title_font_use_google = FALSE | |||||
| ) | |||||
| }) | |||||
| expect_equal(theme$title$colour, "#000033") | |||||
| expect_equal(theme$plot.background$colour, "#000022") | |||||
| expect_equal(theme$plot.background$fill, "#000022") | |||||
| }) | |||||
| }) | |||||
| describe("theme_xaringan_inverse()", { | |||||
| it("errors if no css file or style_xaringan theme called", { | |||||
| expect_error( | |||||
| with_clean_session(function() { | |||||
| xaringanthemer::theme_xaringan_inverse() | |||||
| }) | |||||
| ) | |||||
| }) | |||||
| it("returns a theme using the style_xaringan colors", { | |||||
| theme <- with_clean_session(function() { | |||||
| xaringanthemer::style_xaringan( | |||||
| text_color = "#000001", | |||||
| inverse_text_color = "#100000", | |||||
| background_color = "#000002", | |||||
| inverse_background_color = "#200000", | |||||
| header_color = "#000003", | |||||
| inverse_header_color = "#300000", | |||||
| text_bold_color = "#000004", | |||||
| text_font_family = "Damogran", | |||||
| text_font_google = NULL, | |||||
| header_font_family = "Magrathea", | |||||
| header_font_google = NULL | |||||
| ) | |||||
| xaringanthemer::theme_xaringan_inverse( | |||||
| text_font_use_google = FALSE, | |||||
| title_font_use_google = FALSE | |||||
| ) | |||||
| }) | |||||
| expect_equal(theme$text$family, "Damogran") | |||||
| expect_equal(theme$title$family, "Magrathea") | |||||
| expect_equal(theme$title$colour, "#300000") | |||||
| expect_equal(theme$plot.background$colour, "#200000") | |||||
| expect_equal(theme$plot.background$fill, "#200000") | |||||
| }) | |||||
| it("returns correct colors pulling from css file", { | |||||
| css <- xaringanthemer::style_xaringan( | |||||
| text_color = "#000001", | |||||
| inverse_text_color = "#100000", | |||||
| background_color = "#000002", | |||||
| inverse_background_color = "#200000", | |||||
| header_color = "#000003", | |||||
| inverse_header_color = "#300000", | |||||
| text_bold_color = "#000004", | |||||
| text_font_family = "Damogran", | |||||
| text_font_google = NULL, | |||||
| header_font_family = "Magrathea", | |||||
| header_font_google = NULL, | |||||
| outfile = NULL | |||||
| ) | |||||
| theme <- with_clean_session(function(css) { | |||||
| writeLines(css, "basic.css") | |||||
| xaringanthemer::theme_xaringan_inverse( | |||||
| text_font_use_google = FALSE, | |||||
| title_font_use_google = FALSE | |||||
| ) | |||||
| }, list(css = css)) | |||||
| expect_equal(theme$text$family, "Damogran") | |||||
| expect_equal(theme$title$family, "Magrathea") | |||||
| expect_equal(theme$title$colour, "#300000") | |||||
| expect_equal(theme$plot.background$colour, "#200000") | |||||
| expect_equal(theme$plot.background$fill, "#200000") | |||||
| }) | |||||
| it("works with 3-digit hex colors", { | |||||
| theme <- with_clean_session(function() { | |||||
| xaringanthemer::style_xaringan( | |||||
| text_color = "#001", | |||||
| background_color = "#002", | |||||
| header_color = "#003", | |||||
| inverse_text_color = "#100", | |||||
| inverse_background_color = "#200", | |||||
| inverse_header_color = "#300", | |||||
| text_bold_color = "#004" | |||||
| ) | |||||
| xaringanthemer::theme_xaringan_inverse( | |||||
| text_font_use_google = FALSE, | |||||
| title_font_use_google = FALSE | |||||
| ) | |||||
| }) | |||||
| expect_equal(theme$title$colour, "#330000") | |||||
| expect_equal(theme$plot.background$colour, "#220000") | |||||
| expect_equal(theme$plot.background$fill, "#220000") | |||||
| }) | |||||
| }) |