test_that("we can hash packages containing multiple packages in LinkingTo", {
skip_on_cran()
path <- system.file("DESCRIPTION", package = "Rclusterpp")
if (file.exists(path)) {
hash(path)
}
})
test_that("hash function is available and has expected arguments", {
skip_on_cran()
# This test is a canary that you may be breaking compatibility with Connect,
# which expects this non-exported function to be present. That's not to say
# the function signature can't be changed, only that the relevant call in
# Connect's packrat_restore.R should be studied to avoid any breakage.
expect_identical(
formals(hash),
pairlist(
path = quote(expr =), # nolint: infix_spaces_linter. r-lib/lintr#1889
descLookup = as.name("installedDescLookup")
)
)
})
test_that("hash treats some RemoteType values as CRAN", {
# DESCRIPTION as created by install.packages
simpleDescription <- tempfile()
on.exit(unlink(simpleDescription), add = TRUE)
writeLines(c(
"Package: dummy",
"Version: 1.0.0"
), simpleDescription)
simpleHash <- hash(simpleDescription)
cranDescription <- tempfile()
on.exit(unlink(cranDescription), add = TRUE)
writeLines(c(
"Package: dummy",
"Version: 1.0.0",
"RemoteType: cran"
), cranDescription)
cranHash <- hash(cranDescription)
expect_equal(cranHash, simpleHash)
standardDescription <- tempfile()
on.exit(unlink(standardDescription), add = TRUE)
writeLines(c(
"Package: dummy",
"Version: 1.0.0",
"RemoteType: standard"
), standardDescription)
standardHash <- hash(standardDescription)
expect_equal(standardHash, simpleHash)
urlDescription <- tempfile()
on.exit(unlink(urlDescription), add = TRUE)
writeLines(c(
"Package: dummy",
"Version: 1.0.0",
"RemoteType: url",
"RemoteUrl: https://cran.rstudio.com//src/contrib/Archive/dummy/dummy_1.1.0.tar.gz"
), urlDescription)
urlHash <- hash(urlDescription)
expect_equal(urlHash, simpleHash)
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.