This function is the low-level workhorse that powers test_local()
and
test_package()
. Generally, you should not call this function directly.
In particular, you are responsible for ensuring that the functions to test
are available in the test env
(e.g. via load_package
).
See vignette("special-files")
to learn more about the conventions for test,
helper, and setup files that testthat uses, and what you might use each for.
Usage
test_dir(
path,
filter = NULL,
reporter = NULL,
env = NULL,
...,
load_helpers = TRUE,
stop_on_failure = TRUE,
stop_on_warning = FALSE,
wrap = lifecycle::deprecated(),
package = NULL,
load_package = c("none", "installed", "source")
)
Arguments
- path
Path to directory containing tests.
- filter
If not
NULL
, only tests with file names matching this regular expression will be executed. Matching is performed on the file name after it's stripped of"test-"
and".R"
.- reporter
Reporter to use to summarise output. Can be supplied as a string (e.g. "summary") or as an R6 object (e.g.
SummaryReporter$new()
).See Reporter for more details and a list of built-in reporters.
- env
Environment in which to execute the tests. Expert use only.
- ...
Additional arguments passed to
grepl()
to control filtering.- load_helpers
Source helper files before running the tests?
- stop_on_failure
If
TRUE
, throw an error if any tests fail.- stop_on_warning
If
TRUE
, throw an error if any tests generate warnings.- wrap
DEPRECATED
- package
If these tests belong to a package, the name of the package.
- load_package
Strategy to use for load package code:
"none", the default, doesn't load the package.
"installed", uses
library()
to load an installed package."source", uses
pkgload::load_all()
to a source package. To configure the arguments passed toload_all()
, add this field in your DESCRIPTION file: