inst/test/test.R

library(devtools)
library(testthat)
library(dplyr)
library(tidyr)
load_all()

path_data <- normalizePath("C:/Users/jpch_/Desktop/fars/inst/exdata/")

# fars_read test
path_data_2014 <- normalizePath(paste0(path_data,
                                       "/",
                                       "accident_2014.csv.bz2"))

data_2014 <- read.csv(path_data_2014)
data_2014$TWAY_ID <- as.character(data_2014$TWAY_ID)
data_2014$TWAY_ID2 <- as.character(data_2014$TWAY_ID2)
data_2014$RAIL <- as.character(data_2014$RAIL)

data_2014_fars <- fars_read(path_data_2014)

test_that("fars_read output", {
  expect_is(data_2014_fars, c("tbl_df", "tbl", "data.frame"))
  expect_equal(colnames(data_2014_fars), colnames(data_2014))
  expect_equal(data_2014_fars[1:50], data_2014[1:50])
  expect_error(fars_read("accident_2017.csv.bz2"))
})

# make_filename test
years <- c(2013, 2014, 2015)

names <- c("accident_2013.csv.bz2",
           "accident_2014.csv.bz2",
           "accident_2015.csv.bz2")

names_fars <- make_filename(years)

test_that("make_filename output", {
  expect_is(names_fars, "character")
  expect_identical(names_fars, names)
})

# fars_read_years test
current_directory <- getwd()
setwd(normalizePath("C:/Users/jpch_/Desktop/fars/inst/exdata/"))

years <- c(2013, 2014, 2015)
data_years <- fars_read_years(years)

test_that("fars_read_years output", {
  expect_is(data_years, "list")
  expect_is(data_years[[1]], c("tbl_df", "tbl", "data.frame"))
  expect_is(data_years[[2]], c("tbl_df", "tbl", "data.frame"))
  expect_is(data_years[[3]], c("tbl_df", "tbl", "data.frame"))
  expect_warning(fars_read_years(c(2000, 2023)))
})

setwd(normalizePath(normalizePath(current_directory)))


# fars_summarize_years test
current_directory <- getwd()
setwd(normalizePath("C:/Users/jpch_/Desktop/fars/inst/exdata/"))

years <- c(2013, 2014, 2015)
summary_fars <- fars_summarize_years(years)
summary_2013 <- bind_rows(read.csv("accident_2013.csv.bz2")) %>%
  mutate(year = 2013) %>%
  select(MONTH, year) %>%
  group_by(year, MONTH) %>%
  summarize(n = n()) %>%
  spread(year, n)

test_that("fars_summarize_years output", {
  expect_is(summary_fars, c("tbl_df", "tbl", "data.frame"))
  expect_equal(names(summary_fars), c("MONTH", "2013", "2014", "2015"))
  expect_equal(summary_fars$MONTH, summary_2013$MONTH)
  expect_equal(summary_fars$`2013`, summary_2013$`2013`)
})

setwd(normalizePath(normalizePath(current_directory)))

# fars_map_state test
current_directory <- getwd()
setwd(normalizePath("C:/Users/jpch_/Desktop/fars/inst/exdata/"))

test_that("fars_map_state output", {
  expect_error(fars_map_state(0, 2013))
  expect_is(fars_map_state(4, 2014), "NULL")
})

setwd(normalizePath(normalizePath(current_directory)))
Juanin2691/fars documentation built on May 9, 2019, 3:26 a.m.