Nothing
test_that("large zip files", {
skip_on_cran()
dir.create(tmp <- tempfile("zip-test-large-"))
tmpzip <- tempfile("zip-test-large-", fileext = ".zip")
on.exit(unlink(c(tmp, tmpzip), recursive = TRUE), add = TRUE)
oc <- file(file.path(tmp, "file1"), open = "wb")
for (i in 1:6) {
data <- runif(1e7)
writeBin(data, oc)
}
close(oc)
writeLines("hi there", file.path(tmp, "file2"))
zip::zip(tmpzip, tmp, compression_level = 0, mode = "cherry-pick")
zip::zip_list(tmpzip)
unlink(tmp, recursive = TRUE)
zip::unzip(tmpzip, exdir = dirname(tmp))
expect_true(file.exists(tmp))
expect_true(file.exists(file.path(tmp, "file1")))
expect_true(file.exists(file.path(tmp, "file2")))
expect_true(file.size(file.path(tmp, "file1")) > 450000000)
expect_true(file.size(tmpzip) > 450000000)
})
test_that("can compress / uncompress large files", {
skip_on_cran()
if (! nzchar(Sys.getenv("ZIP_LONG_TESTS")) &&
! nzchar(Sys.getenv("CI"))) {
skip("takes long")
}
## Note: it will be also skipped if we cannot find a reasonable quick
## way to create a 5GB file.
on.exit(unlink(tmp, recursive = TRUE), add = TRUE)
dir.create(tmp <- tempfile())
file1 <- file.path(tmp, "file1")
make_big_file(file1, 5000)
size <- file.info(file1)$size
zipfile <- tempfile(fileext = ".zip")
on.exit(unlink(zipfile), add = TRUE)
zipr(zipfile, file1, compression_level = 1)
expect_true(file.exists(zipfile))
list <- zip_list(zipfile)
expect_equal(list$filename, "file1")
expect_equal(list$uncompressed_size, size)
on.exit(unlink(tmp2, recursive = TRUE), add = TRUE)
dir.create(tmp2 <- tempfile())
unlink(file1)
zip::unzip(zipfile, exdir = tmp2)
expect_equal(file.info(file.path(tmp2, "file1"))$size, size)
})
test_that("can compress / uncompress many files", {
skip_on_cran()
if (! nzchar(Sys.getenv("ZIP_LONG_TESTS")) &&
! nzchar(Sys.getenv("CI"))) {
skip("takes long")
}
tmp <- test_temp_dir()
for (i in 1:70000) cat("file", i, file = file.path(tmp, i))
zip <- test_temp_file(".zip")
zipr(zip, tmp)
l <- zip_list(zip)
expect_equal(nrow(l), 70001)
tmp2 <- test_temp_dir()
zip::unzip(zip, exdir = tmp2)
expect_equal(
length(dir(file.path(tmp2, basename(tmp)))),
70000)
})
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.