Skip to contents

Core

Create and inspect validators

restrict()
Create a Composable Validator
as_contract_text()
Convert a Validator to Plain Text
as_contract_block()
Convert a Validator to a Multi-Line Block
require_custom()
Create a Custom Validation Step
fail()
Format a Validation Error
steps()
List the Steps of a Validator

Checking

Run a validator without throwing

is_valid()
Test Whether a Value Satisfies a Validator
validation_errors()
Collect Validation Errors Without Throwing

Type Checks

Validate value types

require_df()
Require a Data Frame
require_numeric()
Require Numeric Type
require_integer()
Require Integer Values
require_character()
Require Character Type
require_logical()
Require Logical Type
require_class()
Require a Specific Class

Null & Missingness

Check for NULL, NA, and non-finite values

require_not_null()
Require Non-NULL Value
require_no_na()
Require No NA Values
require_finite()
Require Finite Values

Structure Checks

Validate length, dimensions, names, columns, and order

require_scalar()
Require Scalar Value
require_named()
Require Named Value
require_length()
Require Specific Length
require_length_min()
Require Minimum Length
require_length_max()
Require Maximum Length
require_length_matches()
Require Length Matching an Expression
require_nrow_min()
Require Minimum Number of Rows
require_nrow_matches()
Require Row Count Matching an Expression
require_ncol_min()
Require Minimum Number of Columns
require_ncol_matches()
Require Column Count Matching an Expression
require_dim()
Require Exact Dimensions
require_has_cols()
Require Specific Columns
require_names()
Require Names
require_unique_names()
Require Unique Names
require_sorted()
Require Sorted Values

Composition

Apply validators to columns and list elements, combine them, allow NULL

require_col()
Validate a Data Frame Column with a Validator
require_each()
Validate Every Element of a List
require_fields()
Validate Named Fields of a List
require_valid()
Include Another Validator's Steps
require_any()
Require at Least One of Several Validators
allow_null()
Allow NULL

Value Checks

Validate value ranges, set membership, and factor levels

require_positive()
Require Positive Values
require_negative()
Require Negative Values
require_between()
Require Value in Range
require_one_of()
Require Value from a Set
require_contains()
Require All of a Set of Values
require_set_equal()
Require the Same Set of Values
require_levels()
Require Factor Levels
require_disjoint()
Require Values Disjoint From Context
require_unique()
Require Unique Values

Character Checks

Validate strings by pattern, length, and blankness

require_pattern()
Require Strings Matching a Pattern
require_nchar()
Require String Length
require_nonempty()
Require Non-Blank Strings

File-System Checks

Validate input paths and output locations

require_file_exists()
Require Existing Files
require_dir_exists()
Require Existing Directories
require_readable()
Require Readable Paths
require_writable()
Require Writable Paths

Function Checks

Validate callback arguments

require_function()
Require a Function

Testing

testthat expectations that report validator messages

expect_valid()
Expect a Value to Pass a Validator
expect_invalid()
Expect a Value to Fail a Validator