Nothing
## 'makefile' -----------------------------------------------------------------
test_that("'makefile' works with has dir_make, no name_make", {
dir_tmp <- tempfile(tmpdir = getwd())
if (file.exists(dir_tmp))
unlink(dir_tmp, recursive = TRUE)
dir.create(dir_tmp)
dir.create(fs::path(dir_tmp, "src"))
file_path <- fs::path(path = file.path(dir_tmp, "src/script.R"))
writeLines("cmd_assign(.data = 'data/mydata.csv', use_log = FALSE, .out = 'out/cleaned.rds')",
con = file_path)
suppressMessages(ans_obtained <- makefile(path_files = "src", dir_make = dir_tmp))
ans_expected <- paste0("\n",
".PHONY: all\n",
"all:\n",
"\n\n",
"out/cleaned.rds: ", "src/script.R", " \\\n",
" data/mydata.csv\n",
"\t", "Rscript $^ $@ --use_log=FALSE\n",
"\n\n",
".PHONY: clean\n",
"clean:\n",
"\trm -rf out\n",
"\tmkdir out\n\n")
expect_identical(ans_obtained, ans_expected)
expect_true(file.exists(fs::path(dir_tmp, "Makefile")))
unlink(dir_tmp, recursive = TRUE)
})
test_that("'makefile' works with no dir_make, has name_make", {
dir_curr <- getwd()
dir_tmp <- tempfile(tmpdir = getwd())
if (file.exists(dir_tmp))
unlink(dir_tmp, recursive = TRUE)
dir.create(dir_tmp)
setwd(dir_tmp)
dir.create("src")
writeLines("cmd_assign(.data = 'data/mydata.csv', use_log = FALSE, .out = 'out/cleaned.rds')",
con = "src/script.R")
suppressMessages(ans_obtained <- makefile(path_files = "src", name_make = "Make"))
ans_expected <- paste0("\n",
".PHONY: all\n",
"all:\n",
"\n\n",
"out/cleaned.rds: ", "src/script.R", " \\\n",
" data/mydata.csv\n",
"\t", "Rscript $^ $@ --use_log=FALSE\n",
"\n\n",
".PHONY: clean\n",
"clean:\n",
"\trm -rf out\n",
"\tmkdir out\n\n")
expect_identical(ans_obtained, ans_expected)
expect_true(file.exists("Make"))
unlink(dir_tmp, recursive = TRUE)
setwd(dir_curr)
})
test_that("'makefile' works with no dir_make, no path_files", {
dir_curr <- getwd()
dir_tmp <- tempfile(tmpdir = getwd())
if (file.exists(dir_tmp))
unlink(dir_tmp, recursive = TRUE)
dir.create(dir_tmp)
setwd(dir_tmp)
dir.create("src")
suppressMessages(ans_obtained <- makefile())
ans_expected <- paste0("\n",
".PHONY: all\n",
"all:\n\n\n",
".PHONY: clean\n",
"clean:\n",
"\trm -rf out\n",
"\tmkdir out\n\n")
expect_identical(ans_obtained, ans_expected)
expect_true(file.exists(fs::path(dir_tmp, "Makefile")))
unlink(dir_tmp, recursive = TRUE)
setwd(dir_curr)
})
test_that("'makefile' throws appropriate error when file already exists", {
dir_tmp <- tempfile(tmpdir = getwd())
if (file.exists(dir_tmp))
unlink(dir_tmp, recursive = TRUE)
dir.create(dir_tmp)
dir.create(fs::path(dir_tmp, "src"))
file_path <- fs::path(dir_tmp, "src/script.R")
writeLines("cmd_assign(.data = 'data/mydata.csv', use_log = FALSE, .out = 'out/cleaned.rds')",
con = file_path)
writeLines("bla",
con = fs::path(dir_tmp, "Makefile"))
expect_error(suppressMessages(makefile(path_files = "src", dir_make = dir_tmp)),
"already contains a file called")
suppressMessages(makefile(path_files = "src", dir_make = dir_tmp, overwrite = TRUE))
ans <- readLines(fs::path(dir_tmp, "Makefile"))
expect_identical(ans[[2]], ".PHONY: all")
unlink(dir_tmp, recursive = TRUE)
})
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.