Travis CI 运行 示例尽管没有测试

Travis CI running examples despite donttest

很可能,我遗漏了一些直截了当的东西。但在对 Travis CI 的等效检查中,R check 正确忽略的 donttest 中的示例似乎是 运行。

例子

Here 是一些使用 roxygen2 的 R 函数文档:

#' @examples
#' \donttest{
#' library(dplyr)
#' 
#' # Write output to a temp file
#'   "https://www.datacamp.com/community/tutorials/R-nlp-machine-learning" %>%
#'     rawr(to_file = TRUE)
#'
#' }

日志第 3536 行 here

  • checking examples with --run-donttest ... ERROR

第 4193 行:

Error in rawr(., to_file = T) : T used instead of TRUE

注意:实际的 R 错误 - 使用 T 而不是 TRUE - 很容易解决 - 我只是好奇为什么这些示例根本 运行

注意:当 运行 在本地

时,R CMD check --as-cran 通过(0 条警告,0 条注意,0 条错误)

--run-donttest表示要检查用\donttest包裹的例子。

我认为您需要将其包裹在 \dontrun{} 而不是 \donttest{} 周围。 \donttest{} 是当示例可以是 运行 但它需要很多时间。另一方面,\dont运行{} 是示例可能 return 错误的时候。同样,我不是 100% 确定这个答案。

Kostas 的回答(将 \donttest 更改为 \dontrun)为我解决了。不过我也找到了另一种解决方法,就是在travis.yml

中加入如下内容
env:
  global:
    - _R_CHECK_DONTTEST_EXAMPLES_=FALSE

本例来自here, which was linked to from an issue here