context("Test utils: searchXpdfFolder")
test_that("searchXpdfFolder", {
xpdfdir <- paste0(Sys.getenv("xpdfdir"), "bin", getOption("mach.arch"))
expect_equal(dirname(searchXpdfFolder()), dirname(xpdfdir))
expect_equal(basename(searchXpdfFolder()), basename(xpdfdir))
})
context("Test utils: enum")
test_that("enum with default arguments", {
obj <- structure(c(msoChart=3), family="MsoShapeType")
objs <- structure(c(msoChart=3, msoTable=19), family=rep("MsoShapeType", 2))
expect_equal(enum(msoChart), obj)
expect_equal(enum("msoChart"), obj)
expect_equal(enum(msoChart, msoTable), objs)
expect_equal(enum("msoChart", "msoTable"), objs)
expect_equal(enum(c(msoChart, msoTable)), objs)
expect_equal(enum(list("msoChart", "msoTable")), objs)
})
test_that("enum with unlist=FALSE | bare=TRUE", {
objs <- list(msoChart=structure(3, family="MsoShapeType"),
msoTable=structure(19, family="MsoShapeType"))
expect_equal(enum(msoChart, msoTable, unlist=FALSE), objs)
expect_equal(enum(msoChart, msoTable, bare=TRUE), c(3, 19))
expect_equal(enum(msoChart, msoTable, unlist=FALSE, bare=TRUE), list(3, 19))
})
test_that("enum with family defined | out-of-range ...", {
ENUM_unlist <- unlist(unname(ENUM))
expect_equal(enum(msoChart, family="PpBorderType"), NA)
expect_equal(enum(msoChart, msoTable, family="wdColor"), NA)
# return all enum
expect_equal(names(enum(NULL)), names(ENUM_unlist))
expect_equivalent(enum(NULL), ENUM_unlist)
expect_equivalent(enum(NA), ENUM_unlist)
expect_equivalent(enum(NaN), ENUM_unlist)
# out of range
expect_equal(enum(InvalidKey), NA)
expect_equal(enum(""), NA)
expect_equal(enum(112233), NA)
})
context("Test utils: is._ helpers")
test_that("is.DateChar", {
expect_true(is.DateChar("2000-1-1"))
expect_false(is.DateChar("a"))
expect_warning(is.DateChar(c("2000-1-1", "a")), "Only the 1st element")
expect_equivalent(Vectorize(is.DateChar)(c("a", "2000-1-1")), c(FALSE, TRUE))
expect_equal(is.DateChar(NA), NA)
expect_false(is.DateChar(NULL))
})
test_that("is.TimeChar", {
expect_true(is.TimeChar("2000-1-1 13:00"))
expect_false(is.TimeChar("9AM"))
expect_warning(is.TimeChar(c("2000-1-1 15:00", "9AM")), "Only the 1st element")
expect_equivalent(Vectorize(is.TimeChar)(c("2000-1-1 15:00", "a")), c(TRUE, FALSE))
expect_equal(is.TimeChar(NA), NA)
expect_false(is.TimeChar(NULL))
})
test_that("isLatin", {
expect_equal(isLatin(c("english", "chinese")), rep(TRUE, 2))
expect_equal(isLatin(c(4, 6)), rep(TRUE, 2))
expect_equal(isLatin(c("\u{4e2d}", "\u{6587}")), rep(FALSE, 2))
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.