# A CITATION file anywhere except in `inst/CITATION` is an R CMD check note # so 'site-citation' is build-ignored, and so the tests must be skipped # during R CMD check path <- test_path("assets/site-citation/encoding-UTF-8") skip_if_not(dir_exists(path)[[1]]) test_that("UTF-8 encoding and `citation(auto = meta) can be read` (#416, #493)", { cit <- read_citation(test_path("assets/site-citation/encoding-UTF-8")) expect_s3_class(cit, "citation") }) test_that("latin1 encoding and `citation(auto = meta) can be read` (#689)", { cit <- read_citation(test_path("assets/site-citation/encoding-latin1")) expect_s3_class(cit, "citation") }) test_that("create_meta can read DESCRIPTION with an Encoding", { meta <- create_citation_meta(test_path("assets/site-citation/encoding-UTF-8")) expect_type(meta, "list") expect_equal(meta$`Authors@R`, 'person(\"Florian\", \"Privé\")') }) test_that("source link is added to citation page", { pkg <- local_pkgdown_site(test_path("assets/site-citation/encoding-UTF-8")) expect_snapshot(build_home(pkg)) lines <- read_lines(path(pkg$dst_path, "authors.html")) expect_true(any(grepl("inst/CITATION", lines))) }) test_that("multiple citations all have HTML and BibTeX formats", { citations <- data_citations(test_path("assets/site-citation/multi")) expect_snapshot_output(citations) }) test_that("links in curly braces in authors comments are escaped", { pkg_dir <- withr::local_tempdir() desc <- desc::description$new(cmd = "!new") desc$add_author("Jane", "Doe", comment = "reviewed see ") desc$write(file.path(pkg_dir, "DESCRIPTION")) authors_data <- data_authors(pkg_dir) expect_equal( authors_data$all[[2]]$comment, "reviewed see <https://github.com/r-lib/pkgdown/pulls>" ) })