testthat:处理警告和值

时间:2014-01-02 15:10:19

标签: r testthat

处理生成警告但又返回值的调用的最佳方法是什么?

e.g。

> require(testthat)
> expect_warning(log(-1))
> expect_equal(log(-1), NaN)
Warning message:
In log(-1) : NaNs produced

我想编写测试,以便对log(-1)的调用应该(a)生成警告并且(b)返回值NaN。上面的方法有效,但在底部看到“警告信息:”可能会让人感到困惑。我应暂时禁止警告吗?

1 个答案:

答案 0 :(得分:11)

require(testthat)
expect_warning(val <- log(-1))
expect_true(is.nan(val))