tests/testthat/test-validate-repeat.R

library(testthat)

test_that("validate_repeat_instance: no column", {
  ds <- validate_repeat_instance(mtcars)
  expect_equal(object = nrow(ds), expected = 0)
})

test_that("validate_repeat_instance: good", {
  d <-
    mtcars %>%
    dplyr::mutate(
       redcap_repeat_instance = sample(1:100, size = 32, replace = TRUE)
    )
  ds <- validate_repeat_instance(d)
  expect_equal(object = nrow(ds), expected = 0)
})

test_that("validate_repeat_instance -double", {
  d <-
    tibble::tibble(
      redcap_repeat_instance = as.double(1:5)
    )

  expect_error(
    validate_repeat_instance(d, stop_on_error = TRUE),
    "The `redcap_repeat_instance` column should be an integer\\.  Use `as\\.integer\\(\\)` to cast it\\."
  )

  ds <- validate_repeat_instance(d)
  expect_equal(object=nrow(ds), expected=1)
  expect_equal(object=ds$field_name, expected="redcap_repeat_instance")
  expect_equal(object=ds$field_index, expected="1")
})
OuhscBbmc/REDCapR documentation built on Jan. 31, 2024, 8:30 p.m.