tests/testthat/test_fars_funcs.R

# testing depends on 3 files in the test directory

# tests that files are available
test_that(".csv data files are available", {
  testthat::expect_equal(list.files(system.file("extdata", package = "FARS")),
                         c("accident_2013.csv.bz2",
                           "accident_2014.csv.bz2",
                           "accident_2015.csv.bz2"))
})

# test fars_read
test_that('test fars_read', {
  # error when file does not exist
  expect_error(fars_read('accident_2012.csv.bz2'),
               "file 'accident_2012.csv.bz2' does not exist")
  
  # run when exist; check class and dimensions
  dat <- fars_read('accident_2015.csv.bz2')
  expect_identical(class(dat), c("tbl_df", "tbl", "data.frame"))
  expect_equal(dim(dat), c(32166, 52))
})

# test make_filename
expect_identical(make_filename(2015),
                 'accident_2015.csv.bz2')

# test fars_read_years
test_that('test fars_read_years', {
  # warning when a year does not exist
  yrs <- 2012:2015
  expect_warning(fars_read_years(yrs),
                 "invalid year: 2012")

  # run; check class and length
  yrs <- 2013:2015
  dat <- fars_read_years(yrs)
  expect_identical(class(dat), 'list')
  expect_identical(length(dat), length(yrs))
})

# fars_summarize_years
test_that('test fars_summarize_years', {
  #run; test class and dimensions
  yrs <- 2013:2015
  dat <- fars_summarize_years(yrs)
  expect_identical(class(dat), c("tbl_df", "tbl", "data.frame"))
  expect_equal(dim(dat), c(12, 4))
})

# fars_map_state
test_that('test fars_map_state', {
  # error when invalid state number
  expect_error(fars_map_state(0, 2014),
               'invalid STATE number: 0')
})
LOT801106/FARS documentation built on May 10, 2019, 2:41 p.m.