Check if an object is an element of a given set
checkChoice(x, choices, null.ok = FALSE, fmatch = FALSE)check_choice(x, choices, null.ok = FALSE, fmatch = FALSE)
assertChoice(
x,
choices,
null.ok = FALSE,
fmatch = FALSE,
.var.name = vname(x),
add = NULL
)
assert_choice(
x,
choices,
null.ok = FALSE,
fmatch = FALSE,
.var.name = vname(x),
add = NULL
)
testChoice(x, choices, null.ok = FALSE, fmatch = FALSE)
test_choice(x, choices, null.ok = FALSE, fmatch = FALSE)
expect_choice(
x,
choices,
null.ok = FALSE,
fmatch = FALSE,
info = NULL,
label = vname(x)
)
Depending on the function prefix: If the check is successful, the functions
assertChoice
/assert_choice
return
x
invisibly, whereas
checkChoice
/check_choice
and
testChoice
/test_choice
return
TRUE
.
If the check is not successful,
assertChoice
/assert_choice
throws an error message,
testChoice
/test_choice
returns FALSE
,
and checkChoice
/check_choice
return a string with the error message.
The function expect_choice
always returns an
[any]
Object to check.
[atomic
]
Set of possible values.
[logical(1)
]
If set to TRUE
, x
may also be NULL
.
In this case only a type check of x
is performed, all additional checks are disabled.
[logical(1)
]
Use the set operations implemented in fmatch
in package fastmatch.
If fastmatch is not installed, this silently falls back to match
.
fmatch
modifies y
by reference:
A hash table is added as attribute which is used in subsequent calls.
[character(1)
]
Name of the checked object to print in assertions. Defaults to
the heuristic implemented in vname
.
[AssertCollection
]
Collection to store assertion messages. See AssertCollection
.
[character(1)
]
Extra information to be included in the message for the testthat reporter.
See expect_that
.
[character(1)
]
Name of the checked object to print in messages. Defaults to
the heuristic implemented in vname
.
Other set:
checkDisjunct()
,
checkPermutation()
,
checkSetEqual()
,
checkSubset()
testChoice("x", letters)
# x is not converted before the comparison (except for numerics)
testChoice(factor("a"), "a")
testChoice(1, "1")
testChoice(1, as.integer(1))
Run the code above in your browser using DataLab