# Set number of data.table threads to 2 data.table::setDTthreads(threads = 1L) # Set number of collapse threads to 1 collapse::set_collapse(nthreads = 1L) test_that("Expect zero length vector", { empty_values <- list( lubridate::Date(0), lubridate::POSIXct(0) ) expect_identical( lapply(empty_values, function(x) age_years(x)), list(integer(0), integer(0)) ) }) test_that("Expect NA", { expect_identical( age_years(lubridate::NA_Date_), NA_integer_ ) expect_identical( age_years(lubridate::NA_POSIXct_), NA_integer_ ) # expect_identical(age_years(as.POSIXlt(NA)), # NA_integer_) }) test_that("Leap year", { leap1 <- lubridate::dmy("29-02-2020") leap2 <- lubridate::dmy("28-02-2021") leap3 <- lubridate::dmy("01-03-2021") expect_identical(age_years(leap1, leap2), 0L) expect_identical(age_years(leap1, leap3), 1L) })