test_that("updateRBuildIgnore adds the packrat directory to ignore", {
path <- file.path(tempdir(), ".Rbuildignore")
unlink(path)
updateRBuildIgnore(project = tempdir())
content <- readLines(path)
expect_identical(content, c("^packrat/", "^\\.Rprofile$"))
unlink(path)
})
test_that("updateRBuildIgnore preserves content in ignore file", {
path <- file.path(tempdir(), ".Rbuildignore")
unlink(path)
cat(c("foo", "bar", "baz"), file = path, sep = "\n")
updateRBuildIgnore(project = tempdir())
content <- readLines(path)
expect_identical(content, c("foo", "bar", "baz", "^packrat/", "^\\.Rprofile$"))
unlink(path)
})
test_that("updateGitIgnore works", {
options <- list(
vcs.ignore.lib = TRUE,
vcs.ignore.src = FALSE
)
dir <- file.path(tempdir(), "packrat-test")
.gitignore <- file.path(dir, ".gitignore")
dir.create(dir)
updateGitIgnore(project = dir, options = options)
content <- readLines(.gitignore)
expect_identical(content, "packrat/lib*/")
## idempotency
updateGitIgnore(project = dir, options = options)
content <- readLines(.gitignore)
expect_identical(content, "packrat/lib*/")
## preserve content of a .gitignore
unlink(.gitignore)
cat(c("foo", "bar", "baz"), file = .gitignore, sep = "\n")
updateGitIgnore(project = dir, options = options)
content <- readLines(.gitignore)
expect_true(all(c("foo", "bar", "baz", "packrat/lib*/") %in% content))
## change options
options$vcs.ignore.src <- TRUE
updateGitIgnore(project = dir, options = options)
content <- readLines(.gitignore)
expect_true(all(c("foo", "bar", "baz", "packrat/lib*/", "packrat/src/") %in% content))
## remove all options
options[] <- FALSE
updateGitIgnore(project = dir, options = options)
content <- readLines(.gitignore)
expect_true(all(c("foo", "bar", "baz") %in% content))
expect_false("packrat/lib*/" %in% content)
expect_false("packrat/src/" %in% content)
## when all options FALSE and .gitignore does not already
## exist, .gitignore is not created.
unlink(.gitignore)
updateGitIgnore(project = dir, options = options)
expect_false(file.exists(.gitignore))
unlink(dir, recursive = TRUE)
})
test_that("updateIgnoreFile preserves old structure of file", {
contents <- c(
"# This is a comment.",
"ignore/path",
"",
"# This is a comment.",
"ignore/path"
)
file <- tempfile()
on.exit(unlink(file))
cat(contents, file = file, sep = "\n")
updateIgnoreFile(project = tempdir(), file = basename(file), add = c("packrat/lib*/"))
updated <- readLines(file)
expect_identical(updated, c(contents, "packrat/lib*/"))
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.