On 21 June 2015 at 10:47, Dirk Eddelbuettel wrote: | Environment variables are perfect for this. Eg in RcppRedis I can in fact | assume Redis to be present on Travis (as Travis has a webby-ish focus where | Redis is common) but am fairly certain win-builder and other machines do not. | | So in tests/runUnitTests.R I have (with two typos I fixed here) | | | | ## if we know a redis server is set up, we can signal this -- cf .travis.yml | if (Sys.getenv("RunRcppRedisTests") == "yes") runTests <- TRUE | | ## here is a shortcut: if the user is 'edd' we also run tests | ## ought to be wrong on CRAN, win-builder, ... | if (Sys.getenv("USER") == "edd") runTests <- TRUE |
And I forgot to show that in .travis.yml we do of course set this, and also request a Redis server: env: global: - _R_CHECK_FORCE_SUGGESTS_=FALSE - RunRcppRedisTests=yes services: - redis-server Dirk | which shortly later is used in | | | ## Tests for test run | if (runTests) { | ## Run tests | tests <- runTestSuite(testSuite) | | .... | | | | | This is generic, and you can surely adapt it from testthat. | | | | In Rcpp we do something pretty similar within the set of test files in order | to remain within the one-minute limit. | | So in tests/doRUnit.R we do set an environment variable to turn tests on, | else they are off by default: | | | ## force tests to be executed if in dev release which we define as | ## having a sub-release, eg 0.9.15.5 is one whereas 0.9.16 is not | if (length(strsplit(packageDescription("Rcpp")$Version, "\\.")[[1]]) > 3) { | if (Sys.getenv("RunAllRcppTests") != "no") { | message("Setting \"RunAllRcppTests\"=\"yes\" for development release\n") | Sys.setenv("RunAllRcppTests"="yes") | } | } | | | Hope this helps, Dirk | | | -- | http://dirk.eddelbuettel.com | @eddelbuettel | e...@debian.org | | ______________________________________________ | R-package-devel@r-project.org mailing list | https://stat.ethz.ch/mailman/listinfo/r-package-devel -- http://dirk.eddelbuettel.com | @eddelbuettel | e...@debian.org ______________________________________________ R-package-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-package-devel