Skip to content

Commit

Permalink
Standardize snapshot tests. and use cnd_class = TRUE if `expect_err…
Browse files Browse the repository at this point in the history
…or()` was used.

Put cnd_class on the first line to make it easy to remove it as needed.
  • Loading branch information
olivroy committed Oct 23, 2024
1 parent 6e6beab commit bd624cd
Show file tree
Hide file tree
Showing 21 changed files with 267 additions and 383 deletions.
5 changes: 2 additions & 3 deletions tests/testthat/_snaps/hoist.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,9 +35,8 @@
# can't hoist() from a data frame column

Code
(expect_error(hoist(df, a, xx = 1)))
Output
<error/rlang_error>
hoist(df, a, xx = 1)
Condition <rlang_error>
Error in `hoist()`:
! `.data[[.col]]` must be a list, not a <tbl_df/tbl/data.frame> object.

Expand Down
136 changes: 54 additions & 82 deletions tests/testthat/_snaps/pivot-long.md
Original file line number Diff line number Diff line change
@@ -1,29 +1,24 @@
# when `values_ptypes` is provided, the type error uses variable names (#1364)

Code
(expect_error(pivot_longer(df, x, values_ptypes = character())))
Output
<error/vctrs_error_cast>
pivot_longer(df, x, values_ptypes = character())
Condition <vctrs_error_cast>
Error in `pivot_longer()`:
! Can't convert `x` <double> to <character>.

# when `names_ptypes` is provided, the type error uses `names_to` names (#1364)

Code
(expect_error({
pivot_longer(df, cols = x, names_to = "name", names_ptypes = double())
}))
Output
<error/vctrs_error_cast>
pivot_longer(df, cols = x, names_to = "name", names_ptypes = double())
Condition <vctrs_error_cast>
Error in `pivot_longer()`:
! Can't convert `name` <character> to <double>.

# error when overwriting existing column

Code
(expect_error(pivot_longer(df, y, names_to = "x")))
Output
<error/vctrs_error_names_must_be_unique>
pivot_longer(df, y, names_to = "x")
Condition <vctrs_error_names_must_be_unique>
Error in `pivot_longer()`:
! Names must be unique.
x These names are duplicated:
Expand All @@ -42,34 +37,30 @@
# multiple names requires names_sep/names_pattern

Code
(expect_error(build_longer_spec(df, x_y, names_to = c("a", "b"))))
Output
<error/rlang_error>
build_longer_spec(df, x_y, names_to = c("a", "b"))
Condition <rlang_error>
Error in `build_longer_spec()`:
! If you supply multiple names in `names_to` you must also supply one of `names_sep` or `names_pattern`.
Code
(expect_error(build_longer_spec(df, x_y, names_to = c("a", "b"), names_sep = "x",
names_pattern = "x")))
Output
<error/rlang_error>
build_longer_spec(df, x_y, names_to = c("a", "b"), names_sep = "x",
names_pattern = "x")
Condition <rlang_error>
Error in `build_longer_spec()`:
! If you supply multiple names in `names_to` you must also supply one of `names_sep` or `names_pattern`.

# names_sep fails with single name

Code
(expect_error(build_longer_spec(df, x_y, names_to = "x", names_sep = "_")))
Output
<error/rlang_error>
build_longer_spec(df, x_y, names_to = "x", names_sep = "_")
Condition <rlang_error>
Error in `build_longer_spec()`:
! `names_sep` can't be used with a length 1 `names_to`.

# Error if the `col` can't be selected.

Code
(expect_error(pivot_longer(iris, matches("foo"))))
Output
<error/rlang_error>
pivot_longer(iris, matches("foo"))
Condition <rlang_error>
Error in `pivot_longer()`:
! `cols` must select at least one column.

Expand All @@ -84,116 +75,101 @@
# `names_to` is validated

Code
(expect_error(build_longer_spec(df, x, names_to = 1)))
Output
<error/rlang_error>
build_longer_spec(df, x, names_to = 1)
Condition <rlang_error>
Error in `build_longer_spec()`:
! `names_to` must be a character vector or `NULL`, not the number 1.
Code
(expect_error(build_longer_spec(df, x, names_to = c("x", "y"))))
Output
<error/rlang_error>
build_longer_spec(df, x, names_to = c("x", "y"))
Condition <rlang_error>
Error in `build_longer_spec()`:
! If you supply multiple names in `names_to` you must also supply one of `names_sep` or `names_pattern`.
Code
(expect_error(build_longer_spec(df, x, names_to = c("x", "y"), names_sep = "_",
names_pattern = "x")))
Output
<error/rlang_error>
build_longer_spec(df, x, names_to = c("x", "y"), names_sep = "_",
names_pattern = "x")
Condition <rlang_error>
Error in `build_longer_spec()`:
! If you supply multiple names in `names_to` you must also supply one of `names_sep` or `names_pattern`.

# `names_ptypes` is validated

Code
(expect_error(build_longer_spec(df, x, names_ptypes = 1)))
Output
<error/rlang_error>
build_longer_spec(df, x, names_ptypes = 1)
Condition <rlang_error>
Error in `build_longer_spec()`:
! `names_ptypes` must be `NULL`, an empty ptype, or a named list of ptypes.
Code
(expect_error(build_longer_spec(df, x, names_ptypes = list(integer()))))
Output
<error/rlang_error>
build_longer_spec(df, x, names_ptypes = list(integer()))
Condition <rlang_error>
Error in `build_longer_spec()`:
! All elements of `names_ptypes` must be named.

# `names_transform` is validated

Code
(expect_error(build_longer_spec(df, x, names_transform = 1)))
Output
<error/rlang_error>
build_longer_spec(df, x, names_transform = 1)
Condition <rlang_error>
Error in `build_longer_spec()`:
! `names_transform` must be `NULL`, a function, or a named list of functions.
Code
(expect_error(build_longer_spec(df, x, names_transform = list(~.x))))
Output
<error/rlang_error>
build_longer_spec(df, x, names_transform = list(~.x))
Condition <rlang_error>
Error in `build_longer_spec()`:
! All elements of `names_transform` must be named.

# `values_ptypes` is validated

Code
(expect_error(pivot_longer(df, x, values_ptypes = 1)))
Output
<error/rlang_error>
pivot_longer(df, x, values_ptypes = 1)
Condition <rlang_error>
Error in `pivot_longer()`:
! `values_ptypes` must be `NULL`, an empty ptype, or a named list of ptypes.
Code
(expect_error(pivot_longer(df, x, values_ptypes = list(integer()))))
Output
<error/rlang_error>
pivot_longer(df, x, values_ptypes = list(integer()))
Condition <rlang_error>
Error in `pivot_longer()`:
! All elements of `values_ptypes` must be named.

# `values_transform` is validated

Code
(expect_error(pivot_longer(df, x, values_transform = 1)))
Output
<error/rlang_error>
pivot_longer(df, x, values_transform = 1)
Condition <rlang_error>
Error in `pivot_longer()`:
! `values_transform` must be `NULL`, a function, or a named list of functions.
Code
(expect_error(pivot_longer(df, x, values_transform = list(~.x))))
Output
<error/rlang_error>
pivot_longer(df, x, values_transform = list(~.x))
Condition <rlang_error>
Error in `pivot_longer()`:
! All elements of `values_transform` must be named.

# `cols_vary` is validated

Code
(expect_error(pivot_longer(df, x, cols_vary = "fast")))
Output
<error/rlang_error>
pivot_longer(df, x, cols_vary = "fast")
Condition <rlang_error>
Error in `pivot_longer()`:
! `cols_vary` must be one of "fastest" or "slowest", not "fast".
i Did you mean "fastest"?
Code
(expect_error(pivot_longer(df, x, cols_vary = 1)))
Output
<error/rlang_error>
pivot_longer(df, x, cols_vary = 1)
Condition <rlang_error>
Error in `pivot_longer()`:
! `cols_vary` must be a string or character vector.

# `pivot_longer()` catches unused input passed through the dots

Code
(expect_error(pivot_longer(df, c(x, y), 1)))
Output
<error/rlib_error_dots_unused>
pivot_longer(df, c(x, y), 1)
Condition <rlib_error_dots_unused>
Error in `pivot_longer()`:
! Arguments in `...` must be used.
x Problematic argument:
* ..1 = 1
i Did you misspell an argument name?
Code
(expect_error(pivot_longer(df, c(x, y), col_vary = "slowest")))
Output
<error/rlib_error_dots_unused>
pivot_longer(df, c(x, y), col_vary = "slowest")
Condition <rlib_error_dots_unused>
Error in `pivot_longer()`:
! Arguments in `...` must be used.
x Problematic argument:
Expand All @@ -203,18 +179,16 @@
# `build_longer_spec()` requires empty dots

Code
(expect_error(build_longer_spec(df, c(x, y), 1)))
Output
<error/rlib_error_dots_nonempty>
build_longer_spec(df, c(x, y), 1)
Condition <rlib_error_dots_nonempty>
Error in `build_longer_spec()`:
! `...` must be empty.
x Problematic argument:
* ..1 = 1
i Did you forget to name an argument?
Code
(expect_error(build_longer_spec(df, c(x, y), name_to = "name")))
Output
<error/rlib_error_dots_nonempty>
build_longer_spec(df, c(x, y), name_to = "name")
Condition <rlib_error_dots_nonempty>
Error in `build_longer_spec()`:
! `...` must be empty.
x Problematic argument:
Expand All @@ -223,18 +197,16 @@
# `pivot_longer_spec()` requires empty dots

Code
(expect_error(pivot_longer_spec(df, spec, 1)))
Output
<error/rlib_error_dots_nonempty>
pivot_longer_spec(df, spec, 1)
Condition <rlib_error_dots_nonempty>
Error in `pivot_longer_spec()`:
! `...` must be empty.
x Problematic argument:
* ..1 = 1
i Did you forget to name an argument?
Code
(expect_error(pivot_longer_spec(df, spec, col_vary = "slowest")))
Output
<error/rlib_error_dots_nonempty>
pivot_longer_spec(df, spec, col_vary = "slowest")
Condition <rlib_error_dots_nonempty>
Error in `pivot_longer_spec()`:
! `...` must be empty.
x Problematic argument:
Expand Down
Loading

0 comments on commit bd624cd

Please sign in to comment.