test_that("invalid decade", {
expect_error(Decade$new(203))
expect_error(Decade$new(2021))
expect_error(Decade$new(197.5))
expect_error(Decade$new(c(197, 198)))
})
test_that("positive decade", {
interval_x <- interval(ymd("1770-01-01"), ymd("1779-12-31"))
expect_equal(Decade$new(1770)$interval, interval_x)
expect_equal(Decade$new(1770)$time_span, c(1770, 1779))
interval_x <- interval(ymd("1951-01-01"), ymd("1960-12-31"))
expect_equal(Decade$new(1950, official_def = TRUE)$interval, interval_x)
expect_equal(Decade$new(1950, official_def = TRUE)$time_span, c(1951, 1960))
})
test_that("positive decade with take", {
interval_x <- interval(ymd("1970-01-01"), ymd("1974-12-31"))
expect_equal(Decade$new(1970)$take(c(1, "half"))$interval, interval_x)
expect_equal(Decade$new(1970)$take(1, type = "half")$interval, interval_x)
interval_x <- interval(ymd("1970-01-01"), ymd("1971-12-31"))
expect_equal(Decade$new(1970)$take(type = "early")$interval, interval_x)
interval_x <- interval(ymd("1978-01-01"), ymd("1979-12-31"))
expect_equal(Decade$new(1970)$take(type = "late")$interval, interval_x)
interval_x <- interval(ymd("1974-01-01"), ymd("1975-12-31"))
expect_equal(Decade$new(1970)$take(type = "mid")$interval, interval_x)
interval_x <- interval(ymd("1972-01-01"), ymd("1972-12-31"))
expect_equal(Decade$new(1970)$take(3)$interval, interval_x)
})
test_that("negative decade", {
interval_x <- interval(ymd("0000-12-31") - years(1779), ymd("0000-01-01") - years(1770))
expect_equal(Decade$new(-1770)$interval, interval_x)
expect_equal(Decade$new(-1770)$time_span, c(-1779, -1770))
interval_x <- interval(ymd("0000-12-31") - years(1960), ymd("0000-01-01") - years(1951))
expect_equal(Decade$new(-1950, official_def = TRUE)$interval, interval_x)
expect_equal(Decade$new(-1950, official_def = TRUE)$time_span, c(-1960, -1951))
})
test_that("negative decade with take", {
interval_x <- interval(ymd("0000-12-31") - years(1974), ymd("0000-01-01") - years(1970))
expect_equal(Decade$new(-1970)$take(c(1, "half"))$interval, interval_x)
expect_equal(Decade$new(-1970)$take(1, type = "half")$interval, interval_x)
interval_x <- interval(ymd("0000-12-31") - years(1971), ymd("0000-01-01") - years(1970))
expect_equal(Decade$new(-1970)$take(type = "early")$interval, interval_x)
interval_x <- interval(ymd("0000-12-31") - years(1979), ymd("0000-01-01") - years(1978))
expect_equal(Decade$new(-1970)$take(type = "late")$interval, interval_x)
interval_x <- interval(ymd("0000-12-31") - years(1975), ymd("0000-01-01") - years(1974))
expect_equal(Decade$new(-1970)$take(type = "mid")$interval, interval_x)
interval_x <- interval(ymd("0000-01-01") - years(1972), ymd("0000-12-31") - years(1972))
expect_equal(Decade$new(-1970)$take(3)$interval, interval_x)
})
test_that("invalid take with errors", {
expect_error(Decade$new(1970)$take(99))
expect_error(Decade$new(1970)$take(type = "abc"))
expect_error(Decade$new(1970)$take(3, type = "half"))
expect_error(Decade$new(1970)$take(4, type = "third"))
expect_error(Decade$new(1970)$take(5, type = "quarter"))
})
test_that("invalid take without errors", {
interval_x <- interval(ymd("1970-01-01"), ymd("1979-12-31"))
expect_equal(Decade$new(1970)$take(99, ignore_errors = TRUE)$interval, interval_x)
expect_equal(Decade$new(1970)$take(3, "half", ignore_errors = TRUE)$interval, interval_x)
expect_equal(Decade$new(1970)$take(4, "third", ignore_errors = TRUE)$interval, interval_x)
expect_equal(Decade$new(1970)$take(5, "quarter", ignore_errors = TRUE)$interval, interval_x)
expect_equal(Decade$new(1970)$take(type = "abc", ignore_errors = TRUE)$interval, interval_x)
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.