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 | [email protected]
|
| ______________________________________________
| [email protected] mailing list
| https://stat.ethz.ch/mailman/listinfo/r-package-devel
--
http://dirk.eddelbuettel.com | @eddelbuettel | [email protected]
______________________________________________
[email protected] mailing list
https://stat.ethz.ch/mailman/listinfo/r-package-devel