This is an expectation function to test that the lints produced by lint
satisfy a number of checks.
Arguments
- content
a character vector for the file content to be linted, each vector element representing a line of text.
- checks
checks to be performed:
- NULL
check that no lints are returned.
- single string or regex object
check that the single lint returned has a matching message.
- named list
check that the single lint returned has fields that match. Accepted fields are the same as those taken by
Lint()
.- list of named lists
for each of the multiple lints returned, check that it matches the checks in the corresponding named list (as described in the point above).
Named vectors are also accepted instead of named lists, but this is a compatibility feature that is not recommended for new code.
- ...
arguments passed to
lint()
, e.g. the linters or cache to use.- file
if not
NULL
, read content from the specified file rather than fromcontent
.- language
temporarily override Rs
LANGUAGE
envvar, controlling localization of base R error messages. This makes testing them reproducible on all systems irrespective of their native R language setting.
Examples
# no expected lint
expect_lint("a", NULL, trailing_blank_lines_linter())
# one expected lint
expect_lint("a\n", "superfluous", trailing_blank_lines_linter())
expect_lint("a\n", list(message = "superfluous", line_number = 2), trailing_blank_lines_linter())
# several expected lints
expect_lint("a\n\n", list("superfluous", "superfluous"), trailing_blank_lines_linter())
expect_lint(
"a\n\n",
list(
list(message = "superfluous", line_number = 2),
list(message = "superfluous", line_number = 3)
),
trailing_blank_lines_linter()
)