These functions are the tuned counterparts of qtest,
qassert and qexpect tailored for recursive
checks of list elements or data frame columns.
Arguments
- x
[
listordata.frame]
List or data frame to check for compliance with at least one ofrules. See details ofqtestfor rule explanation.- rules
[
character]
Set of rules. Seeqtest- .var.name
[
character(1)]
Name of the checked object to print in error messages. Defaults to the heuristic implemented invname.- depth
[
integer(1)]
Maximum recursion depth. Defaults to “1” to directly check list elements or data frame columns. Set to a higher value to check lists of lists of elements.- info
[
character(1)]
Extra information to be included in the message for the testthat reporter. Seeexpect_that.- label
[
character(1)]
Name of the checked object to print in messages. Defaults to the heuristic implemented invname.
Value
See qassert.
Examples
# All list elements are integers with length >= 1?
qtestr(as.list(1:10), "i+")
#> [1] TRUE
# All list elements (i.e. data frame columns) are numeric?
qtestr(iris, "n")
#> [1] FALSE
# All list elements are numeric, w/o NAs?
qtestr(list(a = 1:3, b = rnorm(1), c = letters), "N+")
#> [1] FALSE
# All list elements are numeric OR character
qtestr(list(a = 1:3, b = rnorm(1), c = letters), c("N+", "S+"))
#> [1] TRUE