/usr/share/doc/r-cran-testthat/tests/testthat/test-expect-warning.R is in r-cran-testthat 2.0.0-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 | context("expect_warning")
test_that("regexp = NULL checks for presence of warning", {
expect_success(expect_warning(warning("!")))
expect_failure(expect_warning(null()), "did not produce any warnings")
})
test_that("regexp = NA checks for absence of warning", {
expect_success(expect_warning(null(), NA))
expect_failure(expect_warning(warning("!"), NA))
})
test_that("regexp = string matches _any_ warning", {
f <- function() {
warning("a")
warning("b")
}
expect_success(expect_warning(f()))
expect_success(expect_warning(f(), "a"))
expect_success(expect_warning(f(), "b"))
expect_failure(expect_warning(f(), "c"))
expect_failure(expect_warning("", "c"), "did not produce any warnings")
})
test_that("... passed on to grepl", {
expect_success(expect_warning(warning("X"), "x", ignore.case = TRUE))
})
test_that("returns first argument", {
expect_equal(expect_warning(1, NA), 1)
})
test_that("generates informative failures", {
expect_known_failure("test-expect-warning.txt", {
foo <- function() {
warning("xxx")
warning("yyy")
}
expect_warning(null())
expect_warning(foo(), NA)
expect_warning(foo(), "zzz")
expect_warning(foo(), "xxx", all = TRUE)
})
})
|