Nothing
test_that("gsUtilities checks validate inputs and ranges", {
expect_silent(checkLengths(1:2, 3:4, 5:6))
expect_error(checkLengths(1, 2, 3, 4:5), "lengths of inputs are not all equal")
expect_silent(checkLengths(1, 2, 3, 4:5, allowSingle = TRUE))
expect_silent(checkRange(c(0.2, 0.8), interval = c(0, 1)))
expect_error(checkRange(c(-0.1, 0.5), interval = c(0, 1)), "not on interval")
expect_error(checkRange(c(0.2, 0.3), interval = c(0, 1, 2)), "Interval input must contain two elements")
expect_error(checkRange(0, interval = c(0, 1), inclusion = c(FALSE, TRUE)), "not on interval")
expect_silent(checkScalar(3L, "integer"))
expect_error(checkScalar(3.2, "integer"), "must be scalar of class")
expect_error(checkScalar(c(1, 2), "numeric"), "must be scalar of class")
expect_silent(checkScalar(0.5, "numeric", interval = c(0, 1)))
expect_silent(checkVector(1:3, "numeric", length = 3))
expect_error(checkVector(matrix(1:4, 2, 2), "numeric"), "must be vector")
expect_error(checkVector(1:3, "numeric", length = 2), "varstr")
expect_silent(checkMatrix(matrix(1:4, 2, 2), "numeric", nrows = 2, ncols = 2))
expect_error(checkMatrix(list(1, 2), "numeric"), "must be matrix")
})
test_that("gsUtilities helper predicates behave as expected", {
expect_true(isInteger(1))
expect_true(isInteger(1:3))
expect_false(isInteger(1.2))
expect_false(isInteger("a"))
tmp <- tempfile("gsdesign-md5-")
dir.create(tmp)
expect_true(is.na(checkMD5(dir = tmp)))
})
test_that("checkMD5 compares files against MD5 entries", {
tmp <- tempfile("gsdesign-md5-")
dir.create(tmp)
file_path <- file.path(tmp, "foo.txt")
writeLines("abc", file_path)
hash <- as.character(tools::md5sum(file_path))
writeLines(paste(hash, file_path), file.path(tmp, "MD5"))
expect_false(checkMD5(dir = tmp))
writeLines(paste(hash, file.path(tmp, "missing.txt")), file.path(tmp, "MD5"))
expect_false(checkMD5(dir = tmp))
writeLines(paste("00000000000000000000000000000000", file_path), file.path(tmp, "MD5"))
expect_false(checkMD5(dir = tmp))
})
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.