source(file.path("..", "r-minor-helpers.R")) test_that("pure-r (NeedsCompilation != yes) is not sensitive", { expect_identical(classify_from_metadata("no", NA, c("Rcpp")), "not-sensitive") expect_identical( classify_from_metadata("", "Rcpp", c("Rcpp")), "not-sensitive" ) }) test_that("LinkingTo a risky dep is sensitive (version constraints stripped)", { expect_identical( classify_from_metadata("yes", "Rcpp (>= 1.0)", c("Rcpp")), "sensitive" ) expect_identical( classify_from_metadata("yes", "R6,\n cpp11", c("Rcpp", "cpp11")), "sensitive" ) }) test_that("compiled but no risky LinkingTo is ambiguous (needs source)", { expect_identical( classify_from_metadata("yes", "R6", c("Rcpp", "cpp11")), "ambiguous" ) expect_identical(classify_from_metadata("yes", NA, c("Rcpp")), "ambiguous") }) test_that("codename_platform names the single_builds platform", { expect_identical(codename_platform("alpine325"), "alpine-325") expect_identical(codename_platform("rhel9"), "redhat-9") expect_identical(codename_platform("noble"), "ubuntu-2404") expect_identical(codename_platform("resolute"), "ubuntu-2604") expect_identical(codename_platform("bogus"), NA_character_) }) test_that("build_deadline reads BUILD_DEADLINE and defaults to none", { expect_identical(build_deadline(""), Inf) expect_identical(build_deadline("not a number"), Inf) expect_identical(build_deadline("1700000000"), 1700000000) expect_false(deadline_reached(Inf)) expect_true(deadline_reached(100, now = 100)) expect_false(deadline_reached(100, now = 99)) })