1
如果我运行下面,行为是预期的。没有返回`test_that`里面的`expect_error`不起作用
expect_error(expect_true(FALSE))
当运行相同的代码,但包裹在里面test_that
test_that("expect_error should not fail",{
expect_error(expect_true(FALSE))
})
Error: Test failed: 'expect_error should not fail'
* Not expected: FALSE isn't true.
* Not expected: expect_true(FALSE) code did not generate an error.
输出是奇怪的,意味着当内test_that
折叠expect_true(FALSE)
不产生错误。
如何将expect_error
放入test_that
?
UPDATE
我用testthat
代码断言。有包assertthat
。
它没有任何意义。试试看:'expect_error(expect_true(FALSE))'没问题。 'expect_error(expect_true(TRUE))'给出'错误:expect_true(TRUE)代码没有产生错误'。这意味着'expect_true(FALSE)'产生错误并且是预期的。 –
@CronAcronis其实,从头开始。我正在改变我的答案,这是一个错误。 –
@CronAcronis看看这对你是否更有意义。 –