## small shim to implement testthat expect_* functions
## without the need for all the insane crud of testthat
library(iotools)
expect_equal <- function(expr, result) stopifnot(all.equal(expr, result))
expect_error <- function(expr, error) stopifnot(tryCatch({ x <- expr; FALSE }, error=function(e) length(grep(error, as.character(e))) > 0L))
expect_warning <- function(expr, warn) stopifnot(tryCatch({ x <- expr; FALSE }, warning=function(e) length(grep(warn, as.character(e))) > 0L))
.on.exit <- list()
on_exit <- function(fn) .on.exit <<- c(.on.exit, list(fn))
for (fn in Sys.glob("tests/*.R")) {
cat("\n\n=== Testing", fn, "===\n")
source(fn, echo=TRUE)
}
## Long-running tests that we don't want to run on CRAN
if (nchar(Sys.getenv("NOT_CRAN"))) for (fn in Sys.glob("non-cran/*.R")) {
cat("\n\n=== Testing", fn, "===\n")
source(fn, echo=TRUE)
}
for (.FUN in .on.exit) .FUN()
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.