Nothing
context("Data management")
dir <- tempdir()
setwd(dir)
if (dir.exists("project-test")) unlink("project-test", recursive = TRUE)
dir.create("project-test")
setwd("project-test")
prInit()
test_that("One can save and load objects", {
x <- rnorm(100)
y <- x
prSave("x")
expect_true(file.exists("data/x.rda"))
rm(x)
expect_output(prLoad("x"), "Numeric vector 'x' has been loaded")
expect_true(exists("x"))
expect_equivalent(x, y)
})
test_that("One can save and load objects in subdirectories", {
x2 <- rnorm(100)
y <- x2
prSave("dir2/x2")
expect_true(file.exists("data/dir2/x2.rda"))
rm(x2)
expect_output(prLoad("dir2/x2"), "Numeric vector 'x2' has been loaded")
expect_true(exists("x2"))
expect_equivalent(x2, y)
x3 <- rnorm(100)
y <- x3
prSave("x3", subdir = "dir3")
expect_true(file.exists("data/dir3/x3.rda"))
rm(x3)
expect_output(prLoad("x3", subdir = "dir3"), "Numeric vector 'x3' has been loaded")
expect_true(exists("x3"))
expect_equivalent(x3, y)
})
test_that("One can move data files", {
x4 <- rnorm(100)
prSave("x4")
prMoveData("x4", "dir4")
expect_false(file.exists("data/x4.rda"))
expect_true(file.exists("data/dir4/x4.rda"))
})
test_that("One can delete data files", {
x5 <- rnorm(100)
prSave("x5")
prDeleteData("x5")
expect_false(file.exists("data/x5.rda"))
})
test_that("One cannot overwrite a data file", {
x6 <- rnorm(100)
prSave("x6")
prSave("dir6/x6")
expect_error(prSave("x6"))
expect_error(prMoveData("x6", "dir6"))
})
test_that("prSave and prLoad work in other directories", {
setwd("..")
x7 <- rnorm(100)
y <- x7
prSave("x7")
expect_true(file.exists("project-test/data/x7.rda"))
rm(x7)
expect_output(prLoad("x7"), "Numeric vector 'x7' has been loaded")
expect_true(exists("x7"))
expect_equivalent(x7, y)
})
test_that("Quotes are optional in prSave and prLoad", {
x8 <- rnorm(100)
y <- x8
prSave(x8)
expect_true(file.exists("project-test/data/x8.rda"))
rm(x8)
expect_output(prLoad(x8), "Numeric vector 'x8' has been loaded")
expect_true(exists("x8"))
expect_equivalent(x8, y)
})
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.