skip_without_latex_deps <- function () {
skip_on_cran() # CRAN doesn't play nicely with tinytex, it uses full texlive
skip_if_not(
requireNamespace("tinytex", quietly = TRUE) ||
check_latex_dependencies(quiet = TRUE)
)
}
test_that("Quick output functions create files", {
skip_if_not_installed("openxlsx")
skip_if_not_installed("flextable")
ht <- hux(a = 1:2, b = 1:2)
m <- matrix(1:4, 2, 2)
dfr <- data.frame(a = 1:5, b = 1:5)
tf <- tempfile(fileext = ".htm")
expect_silent(quick_html(m, dfr, ht, file = tf, open = FALSE))
expect_true(file.exists(tf))
tf <- tempfile(fileext = ".docx")
expect_silent(quick_docx(m, dfr, ht, file = tf, open = FALSE))
expect_true(file.exists(tf))
tf <- tempfile(fileext = ".xlsx")
expect_silent(quick_xlsx(m, dfr, ht, file = tf, open = FALSE))
expect_true(file.exists(tf))
tf <- tempfile(fileext = ".pptx")
expect_silent(quick_pptx(m, dfr, ht, file = tf, open = FALSE))
expect_true(file.exists(tf))
tf <- tempfile(fileext = ".rtf")
expect_silent(quick_rtf(m, dfr, ht, file = tf, open = FALSE))
expect_true(file.exists(tf))
tf <- tempfile(fileext = ".tex")
expect_silent(quick_latex(m, dfr, ht, file = tf, open = FALSE))
expect_true(file.exists(tf))
})
test_that("quick_latex can be compiled", {
skip_on_appveyor() # no pdflatex
skip_on_ci() # trouble on github
skip_without_latex_deps()
ht <- hux(a = 1:2, b = 1:2)
m <- matrix(1:4, 2, 2)
dfr <- data.frame(a = 1:5, b = 1:5)
tf <- tempfile(fileext = ".tex")
expect_silent(quick_latex(m, dfr, ht, file = tf, open = FALSE))
try(tools::texi2pdf(tf, clean = TRUE))
output_file <- sub("\\.tex$", ".pdf", basename(tf))
expect_true(file.exists(output_file))
try(file.remove(output_file), silent = TRUE)
})
test_that("quick_pdf works", {
skip_on_appveyor()
skip_without_latex_deps()
ht <- hux(a = 1:2, b = 1:2)
m <- matrix(1:4, 2, 2)
dfr <- data.frame(a = 1:5, b = 1:5)
tf <- tempfile(fileext = ".pdf")
expect_silent(quick_pdf(m, dfr, ht, file = tf))
expect_true(file.exists(tf))
})
test_that("quick_pdf works with height and width options", {
skip_on_appveyor()
skip_without_latex_deps()
ht <- hux(a = 1:2, b = 1:2)
m <- matrix(1:4, 2, 2)
dfr <- data.frame(a = 1:5, b = 1:5)
tf <- tempfile(fileext = ".pdf")
expect_silent(quick_pdf(m, dfr, ht, file = tf, height = "4in"))
expect_true(file.exists(tf))
tf <- tempfile(fileext = ".pdf")
expect_silent(quick_pdf(m, dfr, ht, file = tf, width = "4in"))
expect_true(file.exists(tf))
tf <- tempfile(fileext = ".pdf")
expect_silent(quick_pdf(m, dfr, ht, file = tf, height = "4in", width = "4in"))
expect_true(file.exists(tf))
})
test_that("Quick output functions stop if called non-interactively with no `file` argument", {
skip_if(interactive())
ht <- hux(a = 1:2, b = 1:2)
expect_error(quick_html(ht))
expect_false(file.exists("huxtable-output.html"))
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.