expect_known_display: Test helpers

Description Usage Arguments Examples

View source: R/testthat.R

Description

Expectation for packages that implement a data type with pillar support. Allows storing the desired result in a file, and comparing the output with the file contents. Note that this expectation sets options that affect the formatting of the pillar, see examples for usage.

Usage

1
expect_known_display(object, file, ..., width = 80L, crayon = TRUE)

Arguments

object

object to test

file

File path where known value/output will be stored.

...

Unused.

width

The width of the output.

crayon

Color the output?

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
file <- tempfile("pillar", fileext = ".txt")

# The pillar is constructed after options have been set
# (need two runs because reference file doesn't exist during the first run)
suppressWarnings(tryCatch(
  expect_known_display(pillar(1:3), file, crayon = FALSE),
  expectation_failure = function(e) {}
))
expect_known_display(pillar(1:3), file, crayon = FALSE)

# Good: Use tidyeval to defer construction
pillar_quo <- rlang::quo(pillar(1:3))
expect_known_display(!!pillar_quo, file, crayon = FALSE)

## Not run: 
# Bad: Options set in the active session may affect the display
integer_pillar <- pillar(1:3)
expect_known_display(integer_pillar, file, crayon = FALSE)

## End(Not run)

hadley/pillar documentation built on Aug. 14, 2018, 11:02 a.m.