tests/testthat/test-utilities.R

test_that("test get_haven_read_function_by_extension returns the good method", {
  file <- system.file("examples","iris.dta", package = "haven")
  fun <- get_haven_read_function_for_file(file)
  expect_s3_class(fun(file), "tbl")

  file <- system.file("examples","iris.sas7bdat", package = "haven")
  fun <- get_haven_read_function_for_file(file)
  expect_s3_class(fun(file), "tbl")

  file <- system.file("examples","iris.sav", package = "haven")
  fun <- get_haven_read_function_for_file(file)
  expect_s3_class(fun(file), "tbl")
})


test_that("tests get_haven_read_function_by_extension fails when needed", {
  expect_error(
    get_haven_read_function_for_file("/some/bad/file/without_extension"),
    class = "parquetize_bad_argument"
  )

  expect_error(
    get_haven_read_function_for_file("/some/bad/file/with_bad_extension.xlsx"),
    class = "parquetize_bad_argument"
  )
})

test_that("test get_lines_for_memory return the good number of lines", {
  file <- system.file("examples","iris.dta", package = "haven")
  read_method <- get_haven_read_function_for_file(file)
  data <- read_method(file, n_max = Inf)

  expect_equal(
    get_lines_for_memory(data, max_memory = 1 / 1024),
    16
  )
})

test_that("test is_remote works", {
  expect_true(is_remote("https://my_url/"))
  expect_true(is_remote("http://my_url/"))
  expect_true(is_remote("ftp://my_url/"))
  expect_true(is_remote("ftps://my_url/"))

  expect_false(is_remote("c://my_url/"))
  expect_false(is_remote("/my_url/"))
})

Try the parquetize package in your browser

Any scripts or data that you put into this service are public.

parquetize documentation built on May 29, 2024, 8 a.m.