source("library.R")
#-----------------------------------------------------------------------------#
# get_date_variables
context("Test the get_date_variable function")
no_dt_var <- mtcars
one_day_var <- data.frame(x = ymd(20160201, 20160301), y = c(1, 2))
one_dt_var <- data.frame(x = ymd_h("20160201 02", "20160301 03"), y = c(1, 2))
two_dt_var <- data.frame(x = ymd_h("20160201 02", "20160301 03"), y = c(1, 2),
x2 = ymd(20160201, 20160301))
test_that("get_date_variable only works on the right data types", {
expect_error(get_date_variables(one_day_var %>% as.matrix))
expect_error(get_date_variables(one_day_var$x))
})
test_that("get_date_variable gives the correct output", {
expect_equal(length(get_date_variables(no_dt_var)), 0)
expect_equal(get_date_variables(one_day_var), "x")
expect_equal(get_date_variables(one_dt_var), "x")
expect_equal(get_date_variables(two_dt_var), c("x", "x2"))
})
#-----------------------------------------------------------------------------#
# enforce_time_zone
context("Test the enforce_time_zone")
test_that("enforce_timee zone works as expected", {
a_ct <- ymd_h(c("20151201 03", "20160201 03"))
b_ct <- ymd_hms(c("2015-01-01 00:00:00", "2016-01-01 00:00:00"))
c_ct <- ymd_hms(c("2015-01-01 00:00:00", "2016-01-01 00:00:00"), tz = "CET")
equal <- enforce_time_zone(a_ct, b_ct)
expect_warning({
different <- enforce_time_zone(a_ct, c_ct)
})
expect_warning( enforce_time_zone(a_ct, c_ct))
expect_equal( attr(equal, "tz"), "UTC")
expect_equal( as.character(equal),
c("2015-12-01 03:00:00", "2016-02-01 03:00:00"))
expect_equal( attr(different, "tz"), "CET")
expect_equal( as.character(different),
c("2015-12-01 03:00:00", "2016-02-01 03:00:00"))
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.