test_that("package_vignettes() doesn't trip over directories", { dir <- withr::local_tempdir() dir_create(path(dir, "vignettes", "test.Rmd")) file_create(path(dir, "vignettes", "test2.Rmd")) expect_equal(as.character(package_vignettes(dir)$file_in), "vignettes/test2.Rmd") }) test_that("check_bootstrap_version() allows 3, 4 (with warning), and 5", { expect_equal(check_bootstrap_version(3), 3) expect_warning(expect_equal(check_bootstrap_version(4), 5)) expect_equal(check_bootstrap_version(5), 5) }) test_that("check_bootstrap_version() gives informative error otherwise", { local_edition(3) pkg <- local_pkgdown_site(test_path("assets/articles")) file_touch(file.path(pkg$src_path, "_pkgdown.yml")) expect_snapshot(check_bootstrap_version(1, pkg), error = TRUE) }) test_that("package_vignettes() moves vignettes/articles up one level", { dir <- withr::local_tempdir() dir_create(path(dir, "vignettes", "articles")) file_create(path(dir, "vignettes", "articles", "test.Rmd")) pkg_vig <- package_vignettes(dir) expect_equal(as.character(pkg_vig$file_out), "articles/test.html") expect_equal(pkg_vig$depth, 1L) }) test_that("package_vignettes() detects conflicts in final article paths", { dir <- withr::local_tempdir() dir_create(path(dir, "vignettes", "articles")) file_create(path(dir, "vignettes", "test.Rmd")) file_create(path(dir, "vignettes", "articles", "test.Rmd")) expect_error(package_vignettes(dir)) }) test_that("package_vignettes() sorts articles alphabetically by file name", { pkg <- local_pkgdown_site(test_path("assets/articles")) expect_equal( order(basename(pkg$vignettes$file_out)), seq_len(nrow(pkg$vignettes)) ) }) test_that("override works correctly for as_pkgdown", { pkgdown <- as_pkgdown("assets/man-figures") expected_list <- list(figures = list(dev = "jpeg", fig.ext = "jpg", fig.width = 3, fig.asp = 1)) expect_equal(pkgdown$meta, expected_list) modified_pkgdown <- as_pkgdown(pkgdown, override = list(figures = list(dev = "png"))) modified_list <- list(figures = list(dev = "png", fig.ext = "jpg", fig.width = 3, fig.asp = 1)) modified_pkgdown$meta expect_equal(modified_pkgdown$meta, modified_list) }) # titles ------------------------------------------------------------------ test_that("multiline titles are collapsed", { rd <- rd_text("\\title{ x }", fragment = FALSE) expect_equal(extract_title(rd), "x") }) test_that("titles can contain other markup", { rd <- rd_text("\\title{\\strong{x}}", fragment = FALSE) expect_equal(extract_title(rd), "x") }) test_that("titles don't get autolinked code", { rd <- rd_text("\\title{\\code{foo()}}", fragment = FALSE) expect_equal(extract_title(rd), "foo()") })