Skip to contents

Checks all elements in x equal using

length(x) < 2L || all(vapply(x, vld_equal, TRUE, y = x[[1]], tolerance = tolerance))

Usage

chk_all_equal(x, tolerance = sqrt(.Machine$double.eps), x_name = NULL)

vld_all_equal(x, tolerance = sqrt(.Machine$double.eps))

Arguments

x

The object to check.

tolerance

A non-negative numeric scalar.

x_name

A string of the name of object x or NULL.

Value

The chk_ function throws an informative error if the test fails or returns the original object if successful so it can used in pipes.

The vld_ function returns a flag indicating whether the test was met.

Functions

  • vld_all_equal(): Validate All Equal

See also

Examples

# chk_all_equal
chk_all_equal(c(1, 1.00000001))
try(chk_all_equal(c(1, 1.0000001)))
#> Error in eval(expr, envir) : `c(1, 1.0000001)` must have equal elements.
chk_all_equal(list(c(x = 1), c(x = 1)))
try(chk_all_equal(list(c(x = 1), c(y = 1))))
#> Error in eval(expr, envir) : 
#>   `list(c(x = 1), c(y = 1))` must have equal elements.
# vld_all_equal
vld_all_equal(c(1, 1L))
#> [1] TRUE