I have a bunch of tests that I don't want them running during CRAN checks or Travis CI builds. They are either long-running, or they could cause transaction/concurrency conflicts writing to a networked database. What approach of separating them (from the R CMD check tests) works best with testthat?
Should I put those tests in a separate folder? Should I tag their filename and use a regex? (eg Using filter argument in test_package to skip tests by @Jeroen)
http://cran.r-project.org/web/packages/policies.html:
Long-running tests and vignette code can be made optional for checking, but do ensure that the checks that are left do exercise all the features of the package.
If you put them in another directory within
tests
, then you can still test them manually withtest_dir()
, but they won't be running withtest()
orR CMD check
.E.g. R6 has some manual tests: https://github.com/wch/R6/tree/master/tests
FYI:
testthat
0.9 now comes with askip()
function.However, I can't seem to figure out how/where exactly to use it. Putting inside my
test_that()
function, the test runs anyway. If you put it beforetestthat()
, thenskip()
throws an error.