Nothing
test_that("reading from connection is consistent with reading directly from a file", {
skip_if(is_windows() && on_github_actions())
expected <- vroom(vroom_example("mtcars.csv"), col_types = list())
# This needs to be small enough to have a few blocks in the file, but big
# enough to fit on the first line (until #47 is fixed)
withr::with_envvar(c("VROOM_CONNECTION_SIZE" = 100), {
actual <- vroom(file(vroom_example("mtcars.csv"), ""), delim = ",", col_types = list())
})
expect_equal(actual, expected)
})
test_that("reading from connection is consistent with reading directly from a file with quoted fields", {
ir <- iris
ir$Species <- as.character(ir$Species)
# add some commas
locs <- vapply(nchar(ir$Species), sample.int, integer(1), 1)
substr(ir$Species, locs, locs) <- ","
out <- tempfile()
vroom_write(ir, out, delim = ",")
expected <- vroom(out, col_types = list())
# This needs to be small enough to have a few blocks in the file, but big
# enough to fit on the first line (until #47 is fixed)
withr::with_envvar(c("VROOM_CONNECTION_SIZE" = 100), {
actual <- vroom(file(out), col_types = list())
})
expect_equal(actual, expected)
})
test_that("vroom errors when the connection buffer is too small", {
withr::with_envvar(c("VROOM_CONNECTION_SIZE" = 32), {
expect_error(vroom(file(vroom_example("mtcars.csv")), col_types = list()), "not large enough")
})
})
test_that("vroom can read files with only a single line and no newlines", {
f <- tempfile()
on.exit(unlink(f))
writeChar("a,b,c", eos = NULL, f)
# with a header
expect_named(vroom(f, delim = ",", col_types = list()), c("a", "b", "c"))
expect_named(vroom(f, col_types = list()), c("a", "b", "c"))
# without a header
expect_equal(vroom(f, col_names = FALSE, delim = ",", col_types = list()), tibble::tibble(X1 = "a", X2 = "b", X3 = "c"))
expect_equal(vroom(f, col_names = FALSE, col_types = list()), tibble::tibble(X1 = "a", X2 = "b", X3 = "c"))
})
test_that("vroom works with file connections and quoted fields", {
f <- tempfile()
on.exit(unlink(f))
writeLines('a,b,c\n"1","2","3"\n"4","5","6"', f)
withr::with_envvar(c("VROOM_CONNECTION_SIZE" = 8), {
x <- vroom(file(f), delim = ",", col_types = list())
})
expect_equal(x, tibble::tibble(a = c(1, 4), b = c(2, 5), c = c(3, 6)))
})
test_that("vroom works with windows newlines and a connection size that lies directly on the newline", {
tf <- tempfile()
on.exit(unlink(tf))
writeChar("1,2\r\na,bbb\r\ne,f\r\n", tf, eos = NULL)
withr::with_envvar(c("VROOM_CONNECTION_SIZE" = 12), {
x <- vroom(file(tf), col_types = "cc")
})
expect_equal(x[[1]], c("a", "e"))
})
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.