Running 'testthat.R' [14s/12s]
Running the tests in 'tests/testthat.R' failed.
Complete output:
  > library(testthat)
  > test_check("nc")
  Loading required package: nc
  -- 1. Error: RE2 capture_all_str returns data.frame with 0 rows, 1 chr col (@tes
  RE2 engine not available; try install.packages('re2r')
  Backtrace:
   1. nc::capture_all_str(subject, baz = "sars")
   2. nc:::stop_for_engine(engine)
  
  -- 2. Error: RE2 capture_all_str returns data.frame with 0 rows, 1 int col (@tes
  RE2 engine not available; try install.packages('re2r')
  Backtrace:
   1. nc::capture_all_str(subject, baz = "sars", as.integer)
   2. nc:::stop_for_engine(engine)
  
  -- 3. Error: RE2 capture_all_str returns data.table (@test-CRAN-all.R#32)  -----
  RE2 engine not available; try install.packages('re2r')
  Backtrace:
   1. nc::capture_all_str(...)
   2. nc:::stop_for_engine(engine)
  
  -- 4. Failure: RE2 capture_all_str errors for one argument (@test-CRAN-all.R#52)
  `{ ... }` threw an error with unexpected message.
  Expected match: "must have at least one named argument"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_all_str("foo")
   7. nc:::stop_for_engine(engine)
  
  -- 5. Failure: RE2 capture_all_str errors for multi-dim patterns (@test-CRAN-all
  `{ ... }` threw an error with unexpected message.
  Expected match: "patterns must be character vectors of length 1"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_all_str("foo", sars = c("bar", "baz"))
   7. nc:::stop_for_engine(engine)
  
  -- 6. Failure: RE2 capture_all_str errors for 0-length patterns (@test-CRAN-all.
  `{ ... }` threw an error with unexpected message.
  Expected match: "patterns must be character vectors of length 1"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_all_str("foo", bar = character())
   7. nc:::stop_for_engine(engine)
  
  -- 7. Failure: RE2 capture_all_str errors for non char/fun args (@test-CRAN-all.
  `{ ... }` threw an error with unexpected message.
  Expected match: "arguments must be"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_all_str("foo", "bar", 1)
   7. nc:::stop_for_engine(engine)
  
  -- 8. Failure: RE2 capture_all_str errors for two funs in a row (@test-CRAN-all.
  `{ ... }` threw an error with unexpected message.
  Expected match: "too many functions; up to one function may follow each named pattern"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_all_str("foo", g = "bar", as.integer, as.numeric)
   7. nc:::stop_for_engine(engine)
  
  -- 9. Failure: RE2 capture_all_str errors for fun at start (@test-CRAN-all.R#83)
  `{ ... }` threw an error with unexpected message.
  Expected match: "too many functions; up to one function may follow each named pattern"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_all_str("foo", as.numeric)
   7. nc:::stop_for_engine(engine)
  
  -- 10. Failure: RE2 capture_all_str errors for NA pattern (@test-CRAN-all.R#90) 
  `{ ... }` threw an error with unexpected message.
  Expected match: "patterns must not be missing/NA"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_all_str("foo", g = "bar", NA_character_, "baz")
   7. nc:::stop_for_engine(engine)
  
  -- 11. Error: RE2 nested capture groups works (@test-CRAN-all.R#106)  ----------
  RE2 engine not available; try install.packages('re2r')
  Backtrace:
   1. nc::capture_all_str(...)
   2. nc:::stop_for_engine(engine)
  
  -- 12. Error: RE2 capture_first_df returns data.table (@test-CRAN-df.R#33)  ----
  problem for subject column JobID: RE2 engine not available; try install.packages('re2r')
  Backtrace:
   1. nc::capture_first_df(...)
   2. base::tryCatch(...)
   3. base:::tryCatchList(expr, classes, parentenv, handlers)
   4. base:::tryCatchOne(expr, names, parentenv, handlers[[1L]])
   5. value[[3L]](cond)
  
  -- 13. Error: RE2 capture_first_df square brackets pattern (@test-CRAN-df.R#100)
  problem for subject column JobID: RE2 engine not available; try install.packages('re2r')
  Backtrace:
   1. nc::capture_first_df(subject.df, JobID = full.square)
   2. base::tryCatch(...)
   3. base:::tryCatchList(expr, classes, parentenv, handlers)
   4. base:::tryCatchOne(expr, names, parentenv, handlers[[1L]])
   5. value[[3L]](cond)
  
  -- 14. Error: RE2 capture_first_df returns data.frame with default rownames (@te
  problem for subject column JobID: RE2 engine not available; try install.packages('re2r')
  Backtrace:
   1. nc::capture_first_df(...)
   2. base::tryCatch(...)
   3. base:::tryCatchList(expr, classes, parentenv, handlers)
   4. base:::tryCatchOne(expr, names, parentenv, handlers[[1L]])
   5. value[[3L]](cond)
  
  -- 15. Failure: RE2 two name groups not OK with named subject (@test-CRAN-df.R#1
  `{ ... }` threw an error with unexpected message.
  Expected match: "must not conflict with existing column names"
  Actual message: "problem for subject column JobID: Error in stop_for_engine(engine): RE2 engine not available; try install.packages('re2r')\n"
  Backtrace:
    1. testthat::expect_error(...)
    6. nc::capture_first_df(...)
    7. base::tryCatch(...)
    8. base:::tryCatchList(expr, classes, parentenv, handlers)
    9. base:::tryCatchOne(expr, names, parentenv, handlers[[1L]])
   10. value[[3L]](cond)
  
  -- 16. Error: RE2 df only one group = name (@test-CRAN-df.R#270)  --------------
  problem for subject column bar: RE2 engine not available; try install.packages('re2r')
  Backtrace:
   1. nc::capture_first_df(in.df, bar = list(name = "foo"))
   2. base::tryCatch(...)
   3. base:::tryCatchList(expr, classes, parentenv, handlers)
   4. base:::tryCatchOne(expr, names, parentenv, handlers[[1L]])
   5. value[[3L]](cond)
  
  -- 17. Error: RE2 df subject no error if nomatch.error=TRUE and all matches (@te
  problem for subject column subject.col: RE2 engine not available; try install.packages('re2r')
  Backtrace:
   1. nc::capture_first_df(...)
   2. base::tryCatch(...)
   3. base:::tryCatchList(expr, classes, parentenv, handlers)
   4. base:::tryCatchOne(expr, names, parentenv, handlers[[1L]])
   5. value[[3L]](cond)
  
  -- 18. Failure: RE2 df subject stop if nomatch.error=TRUE and no match (@test-CR
  `{ ... }` threw an error with unexpected message.
  Expected match: "subjects 3,4 did not match regex below"
  Actual message: "problem for subject column chr.pos.nomatch.vec: Error in stop_for_engine(engine): RE2 engine not available; try install.packages('re2r')\n"
  Backtrace:
    1. testthat::expect_error(...)
    6. nc::capture_first_df(...)
    7. base::tryCatch(...)
    8. base:::tryCatchList(expr, classes, parentenv, handlers)
    9. base:::tryCatchOne(expr, names, parentenv, handlers[[1L]])
   10. value[[3L]](cond)
  
  -- 19. Error: RE2 capture_first_df returns data.table (@test-CRAN-dt.R#35)  ----
  problem for subject column JobID: RE2 engine not available; try install.packages('re2r')
  Backtrace:
   1. nc::capture_first_df(...)
   2. base::tryCatch(...)
   3. base:::tryCatchList(expr, classes, parentenv, handlers)
   4. base:::tryCatchOne(expr, names, parentenv, handlers[[1L]])
   5. value[[3L]](cond)
  
  -- 20. Failure: RE2 no capture groups is an error (@test-CRAN-errors.R#13)  ----
  `{ ... }` threw an error with unexpected message.
  Expected match: "must have at least one named argument"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_first_vec(foo.bar, "o")
   7. nc:::stop_for_engine(engine)
  
  -- 21. Error: RE2 named character vector is an error with group name (@test-CRAN
  RE2 engine not available; try install.packages('re2r')
  Backtrace:
   1. nc:::expect_error_with_code(...)
   2. nc::capture_first_vec(msg, "did you mean ", code = ".*")
   3. nc:::stop_for_engine(engine)
  
  -- 22. Error: RE2 named character vector is an error without group name (@test-C
  RE2 engine not available; try install.packages('re2r')
  Backtrace:
   1. nc:::expect_error_with_code(...)
   2. nc::capture_first_vec(msg, "did you mean ", code = ".*")
   3. nc:::stop_for_engine(engine)
  
  -- 23. Error: RE2 named pattern list in named arg makes two groups (@test-CRAN-e
  RE2 engine not available; try install.packages('re2r')
  Backtrace:
   1. nc::capture_first_vec(foo.bar, gname = named.pat.list)
   2. nc:::stop_for_engine(engine)
  
  -- 24. Error: RE2 named pattern list in un-named arg makes one group (@test-CRAN
  RE2 engine not available; try install.packages('re2r')
  Backtrace:
   1. nc::capture_first_vec(foo.bar, named.pat.list)
   2. nc:::stop_for_engine(engine)
  
  -- 25. Failure: RE2 any capture group without a name is an error (@test-CRAN-err
  `{ ... }` threw an error with unexpected message.
  Expected match: "must have at least one named argument"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_first_vec(foo.bar, "(o)(?P<name>o)")
   7. nc:::stop_for_engine(engine)
  
  -- 26. Failure: RE2 NA pattern is an error (@test-CRAN-errors.R#65)  -----------
  `{ ... }` threw an error with unexpected message.
  Expected match: "patterns must not be missing/NA"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_first_vec(foo.bar, NA_character_)
   7. nc:::stop_for_engine(engine)
  
  -- 27. Failure: RE2 factor pattern is an error (@test-CRAN-errors.R#71)  -------
  `{ ... }` threw an error with unexpected message.
  Expected match: "arguments must be character"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_first_vec(foo.bar, factor("(?P<regex>foo)"))
   7. nc:::stop_for_engine(engine)
  
  -- 28. Failure: RE2 multiple patterns is an error (@test-CRAN-errors.R#77)  ----
  `{ ... }` threw an error with unexpected message.
  Expected match: "patterns must be character vectors of length 1"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_first_vec(foo.bar, c("(?P<name>.)", "(?P<name>.)"))
   7. nc:::stop_for_engine(engine)
  
  -- 29. Error: RE2 capture all works with only one 'name' group (@test-CRAN-error
  RE2 engine not available; try install.packages('re2r')
  Backtrace:
   1. nc::capture_all_str(subject, name = "foo")
   2. nc:::stop_for_engine(engine)
  
  -- 30. Failure: RE2 informative error when converter fun has zero args (@test-CR
  `{ ... }` threw an error with unexpected message.
  Expected match: "atomic vector"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_first_vec("chr2:300-400", chrom = "chr", function() y)
   7. nc:::stop_for_engine(engine)
  
  -- 31. Failure: RE2 informative error when converter returns wrong length (@test
  `{ ... }` threw an error with unexpected message.
  Expected match: "type conversion function for group chrom returned vector of length 1 but expected length 2"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_first_vec(...)
   7. nc:::stop_for_engine(engine)
  
  -- 32. Failure: RE2 informative error when converter returns non-atomic (@test-C
  `{ ... }` threw an error with unexpected message.
  Expected match: "type conversion function for group chrom must return atomic vector"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_first_vec(...)
   7. nc:::stop_for_engine(engine)
  
  -- 33. Failure: RE2 error for name group, missing subject, nomatch.error=TRUE (@
  `{ ... }` threw an error with unexpected message.
  Expected match: "subject 2 did not match regex below"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_first_vec(...)
   7. nc:::stop_for_engine(engine)
  
  -- 34. Failure: RE2 error for name group, no match, nomatch.error=TRUE (@test-CR
  `{ ... }` threw an error with unexpected message.
  Expected match: "subject 2 did not match regex below"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_first_vec(...)
   7. nc:::stop_for_engine(engine)
  
  -- 35. Failure: RE2 error for regex that matches no column names (@test-CRAN-mel
  `{ ... }` threw an error with unexpected message.
  Expected match: "no column names match regex"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_melt_single(iris.dt, part = "foo")
   7. nc:::capture_df_names(subject.df, ...)
   8. nc::capture_first_vec(names(subject.df), ..., nomatch.error = FALSE)
   9. nc:::stop_for_engine(engine)
  
  -- 36. Failure: RE2 possessive (.*+) error(RE2) or OK(others) (@test-CRAN-melt.R
  `{ ... }` threw an error with unexpected message.
  Expected match: "bad repetition operator"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
    1. testthat::expect_error(...)
    6. nc:::posmatch()
    7. nc::capture_melt_single(...)
    8. nc:::capture_df_names(subject.df, ...)
    9. nc::capture_first_vec(names(subject.df), ..., nomatch.error = FALSE)
   10. nc:::stop_for_engine(engine)
  
  -- 37. Error: RE2 .variable input column ok (@test-CRAN-melt.R#63)  ------------
  RE2 engine not available; try install.packages('re2r')
  Backtrace:
   1. nc::capture_melt_single(DV, "p", penalty = ".*", as.numeric)
   2. nc:::capture_df_names(subject.df, ...)
   3. nc::capture_first_vec(names(subject.df), ..., nomatch.error = FALSE)
   4. nc:::stop_for_engine(engine)
  
  -- 38. Error: RE2 capture group with funny name is ok (@test-CRAN-melt.R#69)  --
  RE2 engine not available; try install.packages('re2r')
  Backtrace:
   1. nc::capture_melt_single(...)
   2. nc:::capture_df_names(subject.df, ...)
   3. nc::capture_first_vec(names(subject.df), ..., nomatch.error = FALSE)
   4. nc:::stop_for_engine(engine)
  
  -- 39. Failure: RE2 groups with the same name is an error (@test-CRAN-melt.R#85)
  `{ ... }` threw an error with unexpected message.
  Expected match: "capture group names must be unique, problem: foo"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_melt_single(DV, foo = "p", foo = "1")
   7. nc:::capture_df_names(subject.df, ...)
   8. nc::capture_first_vec(names(subject.df), ..., nomatch.error = FALSE)
   9. nc:::stop_for_engine(engine)
  
  -- 40. Failure: RE2 err change capture group if same as input col (@test-CRAN-me
  `{ ... }` threw an error with unexpected message.
  Expected match: "some capture group names (.variable) are the same as input column names that did not match the pattern; please change either the pattern or the capture group names so that all output column names will be unique"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_melt_single(DV, .variable = "p")
   7. nc:::capture_df_names(subject.df, ...)
   8. nc::capture_first_vec(names(subject.df), ..., nomatch.error = FALSE)
   9. nc:::stop_for_engine(engine)
  
  -- 41. Failure: RE2 err change value.name if same as input col (@test-CRAN-melt.
  `{ ... }` threw an error with unexpected message.
  Expected match: "value.name (.variable) is the same as an input column name that did not match the pattern; please change one so that all output column names will be unique"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_melt_single(DV, "p", num = ".*", value.name = ".variable")
   7. nc:::capture_df_names(subject.df, ...)
   8. nc::capture_first_vec(names(subject.df), ..., nomatch.error = FALSE)
   9. nc:::stop_for_engine(engine)
  
  -- 42. Failure: RE2 err change value.name or group names (@test-CRAN-melt.R#109)
  `{ ... }` threw an error with unexpected message.
  Expected match: "value.name (num) is the same as a capture group name; please change one so that all output column names will be unique"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_melt_single(DV, "p", num = ".*", value.name = "num")
   7. nc:::capture_df_names(subject.df, ...)
   8. nc::capture_first_vec(names(subject.df), ..., nomatch.error = FALSE)
   9. nc:::stop_for_engine(engine)
  
  -- 43. Error: RE2 melting lots of columns is OK (@test-CRAN-melt.R#119)  -------
  RE2 engine not available; try install.packages('re2r')
  Backtrace:
   1. nc::capture_melt_single(one.row, "X", col = "[0-9]+", as.integer)
   2. nc:::capture_df_names(subject.df, ...)
   3. nc::capture_first_vec(names(subject.df), ..., nomatch.error = FALSE)
   4. nc:::stop_for_engine(engine)
  
  -- 44. Error: (unknown) (@test-CRAN-multiple.R#13)  ----------------------------
  RE2 engine not available; try install.packages('re2r')
  Backtrace:
   1. nc::capture_melt_multiple(iris.dt, part = ".*?", "[.]", column = ".*")
   2. nc:::capture_df_names(subject.df, ...)
   3. nc::capture_first_vec(names(subject.df), ..., nomatch.error = FALSE)
   4. nc:::stop_for_engine(engine)
  
  -- 45. Error: RE2 user-defined optional is ok (@test-CRAN-quantifier.R#67)  ----
  RE2 engine not available; try install.packages('re2r')
  Backtrace:
   1. nc::capture_first_vec(...)
   2. nc:::stop_for_engine(engine)
  
  -- 46. Error: RE2 quantifier works for non-greedy lines (@test-CRAN-quantifier.R
  RE2 engine not available; try install.packages('re2r')
  Backtrace:
   1. nc::capture_all_str(...)
   2. nc:::stop_for_engine(engine)
  
  -- 47. Error: RE2 match nothing in required group is empty string (@test-CRAN-ve
  RE2 engine not available; try install.packages('re2r')
  Backtrace:
   1. nc::capture_first_vec(inames, "[^.]*", rest = ".*")
   2. nc:::stop_for_engine(engine)
  
  -- 48. Error: RE2 no match for optional group is empty string (@test-CRAN-vec.R#
  RE2 engine not available; try install.packages('re2r')
  Backtrace:
   1. nc::capture_first_vec(inames, "[^.]*", rest = "[.].*", "?")
   2. nc:::stop_for_engine(engine)
  
  -- 49. Error: RE2 no match for required group is NA (@test-CRAN-vec.R#37)  -----
  RE2 engine not available; try install.packages('re2r')
  Backtrace:
   1. nc::capture_first_vec(inames, "[^.]*", rest = "[.].*", nomatch.error = FALSE)
   2. nc:::stop_for_engine(engine)
  
  -- 50. Failure: RE2 error for regex with literal groups (@test-CRAN-vec.R#46)  -
  `{ ... }` threw an error with unexpected message.
  Expected match: "regex contains more groups than names; please remove literal groups (parentheses) from the regex pattern, and use named arguments in R code instead"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_first_vec(...)
   7. nc:::stop_for_engine(engine)
  
  -- 51. Error: RE2 capture_first_vec returns data.table with chr columns (@test-C
  RE2 engine not available; try install.packages('re2r')
  Backtrace:
   1. nc::capture_first_vec(...)
   2. nc:::stop_for_engine(engine)
  
  -- 52. Error: RE2 capture_first_vec returns data.table with int columns (@test-C
  RE2 engine not available; try install.packages('re2r')
  Backtrace:
   1. nc::capture_first_vec(...)
   2. nc:::stop_for_engine(engine)
  
  -- 53. Failure: RE2 named function is an error (@test-CRAN-vec.R#95)  ----------
  `{ ... }` threw an error with unexpected message.
  Expected match: "functions must not be named, problem: fun"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_first_vec(...)
   7. nc:::stop_for_engine(engine)
  
  -- 54. Failure: RE2 capture_first_vec errors for one argument (@test-CRAN-vec.R#
  `{ ... }` threw an error with unexpected message.
  Expected match: "must have at least one named argument"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_first_vec("foo")
   7. nc:::stop_for_engine(engine)
  
  -- 55. Failure: RE2 capture_first_vec errors for multi-dim patterns (@test-CRAN-
  `{ ... }` threw an error with unexpected message.
  Expected match: "patterns must be character vectors of length 1"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_first_vec("foo", bar = c("bar", "baz"))
   7. nc:::stop_for_engine(engine)
  
  -- 56. Failure: RE2 capture_first_vec errors for 0-length patterns (@test-CRAN-v
  `{ ... }` threw an error with unexpected message.
  Expected match: "patterns must be character vectors of length 1"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_first_vec("foo", bar = character())
   7. nc:::stop_for_engine(engine)
  
  -- 57. Failure: RE2 capture_first_vec errors for non char/fun args (@test-CRAN-v
  `{ ... }` threw an error with unexpected message.
  Expected match: "arguments must be"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_first_vec("foo", baz = "bar", 1)
   7. nc:::stop_for_engine(engine)
  
  -- 58. Failure: RE2 capture_first_vec errors for two funs in a row (@test-CRAN-v
  `{ ... }` threw an error with unexpected message.
  Expected match: "too many functions; up to one function may follow each named pattern"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_first_vec("foo", g = "bar", as.integer, as.numeric)
   7. nc:::stop_for_engine(engine)
  
  -- 59. Failure: RE2 capture_first_vec errors for fun at start (@test-CRAN-vec.R#
  `{ ... }` threw an error with unexpected message.
  Expected match: "too many functions; up to one function may follow each named pattern"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_first_vec("foo", as.numeric, bar = "baz")
   7. nc:::stop_for_engine(engine)
  
  -- 60. Failure: RE2 capture_first_vec errors for NA pattern (@test-CRAN-vec.R#14
  `{ ... }` threw an error with unexpected message.
  Expected match: "patterns must not be missing/NA"
  Actual message: "RE2 engine not available; try install.packages('re2r')"
  Backtrace:
   1. testthat::expect_error(...)
   6. nc::capture_first_vec("foo", g = "bar", NA_character_, "baz")
   7. nc:::stop_for_engine(engine)
  
  -- 61. Error: RE2 nested lists are OK (@test-CRAN-vec.R#178)  ------------------
  RE2 engine not available; try install.packages('re2r')
  Backtrace:
   1. base::do.call(capture_first_vec, all.args)
   3. nc:::stop_for_engine(engine)
  
  -- 62. Error: RE2 vec square brackets pattern (@test-CRAN-vec.R#218)  ----------
  RE2 engine not available; try install.packages('re2r')
  Backtrace:
   1. nc::capture_first_vec(task.vec, full.square)
   2. nc:::stop_for_engine(engine)
  
  -- 63. Error: (unknown) (@test-CRAN-vec.R#241)  --------------------------------
  RE2 engine not available; try install.packages('re2r')
  Backtrace:
   1. nc::capture_first_vec(...)
   2. nc:::stop_for_engine(engine)
  
  == testthat results  ===========================================================
  [ OK: 298 | SKIPPED: 0 | WARNINGS: 1 | FAILED: 63 ]
  1. Error: RE2 capture_all_str returns data.frame with 0 rows, 1 chr col (@test-CRAN-all.R#14) 
  2. Error: RE2 capture_all_str returns data.frame with 0 rows, 1 int col (@test-CRAN-all.R#20) 
  3. Error: RE2 capture_all_str returns data.table (@test-CRAN-all.R#32) 
  4. Failure: RE2 capture_all_str errors for one argument (@test-CRAN-all.R#52) 
  5. Failure: RE2 capture_all_str errors for multi-dim patterns (@test-CRAN-all.R#58) 
  6. Failure: RE2 capture_all_str errors for 0-length patterns (@test-CRAN-all.R#64) 
  7. Failure: RE2 capture_all_str errors for non char/fun args (@test-CRAN-all.R#70) 
  8. Failure: RE2 capture_all_str errors for two funs in a row (@test-CRAN-all.R#76) 
  9. Failure: RE2 capture_all_str errors for fun at start (@test-CRAN-all.R#83) 
  1. ...
  
  Error: testthat unit tests failed
  Execution halted