Running ‘testthat.R’ [13s/13s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
  > library(testthat)
  > library(waldo)
  
  Attaching package: 'waldo'
  
  The following object is masked from 'package:testthat':
  
      compare
  
  > 
  > test_check("waldo")
  
   *** caught segfault ***
  address (nil), cause 'unknown'
  
  Traceback:
   1: vapply(x, is.null, logical(1))
   2: compact(list(...))
   3: merge_lists(opts, attr(x, "waldo_opts"), attr(y, "waldo_opts"),     opts[opts$user_specified])
   4: compare_structure(x, y, paths = c(x_arg, y_arg), opts = opts)
   5: compare(char1, char2)
   6: eval(expr, envir, enclos)
   7: eval(expr, envir, enclos)
   8: eval_with_user_handlers(expr, envir, enclos, user_handlers)
   9: withVisible(eval_with_user_handlers(expr, envir, enclos, user_handlers))
  10: withCallingHandlers(withVisible(eval_with_user_handlers(expr,     envir, enclos, user_handlers)), warning = wHandler, error = eHandler,     message = mHandler)
  11: doTryCatch(return(expr), name, parentenv, handler)
  12: tryCatchOne(expr, names, parentenv, handlers[[1L]])
  13: tryCatchList(expr, classes, parentenv, handlers)
  14: tryCatch(expr, error = function(e) {    call <- conditionCall(e)    if (!is.null(call)) {        if (identical(call[[1L]], quote(doTryCatch)))             call <- sys.call(-4L)        dcall <- deparse(call, nlines = 1L)        prefix <- paste("Error in", dcall, ": ")        LONG <- 75L        sm <- strsplit(conditionMessage(e), "\n")[[1L]]        w <- 14L + nchar(dcall, type = "w") + nchar(sm[1L], type = "w")        if (is.na(w))             w <- 14L + nchar(dcall, type = "b") + nchar(sm[1L],                 type = "b")        if (w > LONG)             prefix <- paste0(prefix, "\n  ")    }    else prefix <- "Error : "    msg <- paste0(prefix, conditionMessage(e), "\n")    .Internal(seterrmessage(msg[1L]))    if (!silent && isTRUE(getOption("show.error.messages"))) {        cat(msg, file = outFile)        .Internal(printDeferredWarnings())    }    invisible(structure(msg, class = "try-error", condition = e))})
  15: try(f, silent = TRUE)
  16: handle(ev <- withCallingHandlers(withVisible(eval_with_user_handlers(expr,     envir, enclos, user_handlers)), warning = wHandler, error = eHandler,     message = mHandler))
  17: timing_fn(handle(ev <- withCallingHandlers(withVisible(eval_with_user_handlers(expr,     envir, enclos, user_handlers)), warning = wHandler, error = eHandler,     message = mHandler)))
  18: evaluate_call(expr, parsed$src[[i]], envir = envir, enclos = enclos,     debug = debug, last = i == length(out), use_try = stop_on_error !=         2L, keep_warning = keep_warning, keep_message = keep_message,     log_echo = log_echo, log_warning = log_warning, output_handler = output_handler,     include_timing = include_timing)
  19: evaluate::evaluate(source, envir = env, new_device = FALSE, output_handler = handler)
  20: verify_exec(quo_get_expr(x), quo_get_env(x), replay)
  21: with_is_snapshotting(out <- verify_exec(quo_get_expr(x), quo_get_env(x),     replay))
  22: expect_snapshot({    compare(char1, char2)    compare(char1, "foo")})
  23: eval(code, test_env)
  24: eval(code, test_env)
  25: withCallingHandlers({    eval(code, test_env)    if (!handled && !is.null(test)) {        skip_empty()    }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning,     message = handle_message, error = handle_error)
  26: doTryCatch(return(expr), name, parentenv, handler)
  27: tryCatchOne(expr, names, parentenv, handlers[[1L]])
  28: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
  29: doTryCatch(return(expr), name, parentenv, handler)
  30: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]),     names[nh], parentenv, handlers[[nh]])
  31: tryCatchList(expr, classes, parentenv, handlers)
  32: tryCatch(withCallingHandlers({    eval(code, test_env)    if (!handled && !is.null(test)) {        skip_empty()    }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning,     message = handle_message, error = handle_error), error = handle_fatal,     skip = function(e) {    })
  33: test_code(desc, code, env = parent.frame(), default_reporter = local_interactive_reporter())
  34: test_that("can compare CHARSXP", {    skip_if(interactive())    char1 <- readRDS(test_path("charsxp-1.rds"))    char2 <- readRDS(test_path("charsxp-2.rds"))    expect_snapshot({        compare(char1, char2)        compare(char1, "foo")    })})
  35: eval(code, test_env)
  36: eval(code, test_env)
  37: withCallingHandlers({    eval(code, test_env)    if (!handled && !is.null(test)) {        skip_empty()    }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning,     message = handle_message, error = handle_error)
  38: doTryCatch(return(expr), name, parentenv, handler)
  39: tryCatchOne(expr, names, parentenv, handlers[[1L]])
  40: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
  41: doTryCatch(return(expr), name, parentenv, handler)
  42: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]),     names[nh], parentenv, handlers[[nh]])
  43: tryCatchList(expr, classes, parentenv, handlers)
  44: tryCatch(withCallingHandlers({    eval(code, test_env)    if (!handled && !is.null(test)) {        skip_empty()    }}, expectation = handle_expectation, skip = handle_skip, warning = handle_warning,     message = handle_message, error = handle_error), error = handle_fatal,     skip = function(e) {    })
  45: test_code(test = NULL, code = exprs, env = env, default_reporter = StopReporter$new())
  46: source_file(path, env = env(env), desc = desc, error_call = error_call)
  47: FUN(X[[i]], ...)
  48: lapply(test_paths, test_one_file, env = env, desc = desc, error_call = error_call)
  49: doTryCatch(return(expr), name, parentenv, handler)
  50: tryCatchOne(expr, names, parentenv, handlers[[1L]])
  51: tryCatchList(expr, classes, parentenv, handlers)
  52: tryCatch(code, testthat_abort_reporter = function(cnd) {    cat(conditionMessage(cnd), "\n")    NULL})
  53: with_reporter(reporters$multi, lapply(test_paths, test_one_file,     env = env, desc = desc, error_call = error_call))
  54: test_files_serial(test_dir = test_dir, test_package = test_package,     test_paths = test_paths, load_helpers = load_helpers, reporter = reporter,     env = env, stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning,     desc = desc, load_package = load_package, error_call = error_call)
  55: test_files(test_dir = path, test_paths = test_paths, test_package = package,     reporter = reporter, load_helpers = load_helpers, env = env,     stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning,     load_package = load_package, parallel = parallel)
  56: test_dir("testthat", package = package, reporter = reporter,     ..., load_package = "installed")
  57: test_check("waldo")
  An irrecoverable exception occurred. R is aborting now ...
  Segmentation fault