expect_lint: Lint expectation

View source: R/expect_lint.R

expect_lintR Documentation

Lint expectation


This is an expectation function to test that the lints produced by lint satisfy a number of checks.


expect_lint(content, checks, ..., file = NULL, language = "en")



a character vector for the file content to be linted, each vector element representing a line of text.


checks to be performed:


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.


if not NULL, read content from the specified file rather than from content.


temporarily override Rs LANGUAGE envvar, controlling localisation of base R error messages. This makes testing them reproducible on all systems irrespective of their native R language setting.


NULL, invisibly.


# 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)
  list(list(message="superfluous", line_number=2), list(message="superfluous", line_number=3)),

lintr documentation built on Oct. 19, 2022, 5:17 p.m.