test_that("Check abort_if_not_cff", { obj <- cff() expect_silent(abort_if_not_cff(obj)) file <- system.file("examples/CITATION_skeleton.cff", package = "cffr" ) expect_silent(abort_if_not_cff(file)) # Error err <- "Some string" expect_snapshot(abort_if_not_cff(err), error = TRUE) # Other objects x <- data.frame(a = 1) expect_snapshot(abort_if_not_cff(x), error = TRUE) }) test_that("Check file_exist_abort", { nonexits <- "aaaaaaaa" expect_silent(file_exist_abort(nonexits)) expect_false(file_exist_abort(nonexits)) # Signal an error expect_snapshot(file_exist_abort(nonexits, abort = TRUE), error = TRUE) # With dir non_with_path <- "./R/no/existe" expect_snapshot(file_exist_abort(non_with_path, abort = TRUE), error = TRUE) tmp <- tempfile() writeLines("a", tmp) expect_true(file_exist_abort(tmp)) expect_true(file_exist_abort(tmp, abort = TRUE)) unlink(tmp) }) test_that("Check match_cff_arg", { x <- "aaaaaaaa" expect_snapshot(match_cff_arg("a", "b", "..."), error = TRUE) expect_snapshot(match_cff_arg("a", c("b", "c", "d"), "what"), error = TRUE) # Test call my_fun <- function(x = "a") { match_cff_arg("a", LETTERS[1:5], "aa", environment()) } expect_snapshot(my_fun(), error = TRUE) expect_silent(a <- match_cff_arg(c("a", "b"), letters, "...")) expect_identical(a, "a") })