Running ‘testthat.R’ [5s/17s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
  > library(testthat)
  > library(clustree)
  Loading required package: ggraph
  Loading required package: ggplot2
  > 
  > test_check("clustree")
  ── 1. Error: node_colour aesthetic works (@test-aesthetics.R#6)  ───────────────
  LOGICAL() can only be applied to a 'logical', not a 'NULL'
  1: expect_is(clustree(iris_clusts, prefix = "K", node_colour = "Sepal.Width", node_colour_aggr = "mean"), 
         c("gg", "ggplot")) at testthat/test-aesthetics.R:6
  2: quasi_label(enquo(object), label)
  3: eval_bare(get_expr(quo), get_env(quo))
  4: clustree(iris_clusts, prefix = "K", node_colour = "Sepal.Width", node_colour_aggr = "mean")
  5: clustree.data.frame(iris_clusts, prefix = "K", node_colour = "Sepal.Width", node_colour_aggr = "mean")
  6: clustree(clusterings, prefix, metadata = metadata, ...)
  7: clustree.matrix(clusterings, prefix, metadata = metadata, ...)
  8: assert_colour_node_aes("node_colour", prefix, metadata, node_colour, node_colour_aggr)
  9: assert_node_aes(node_aes_name, prefix, metadata, node_aes, node_aes_aggr)
  10: checkmate::assert_function(node_aes_aggr_fun, .var.name = paste0(node_aes_name, "_aggr"))
  11: checkFunction(x, args, ordered, nargs, null.ok)
  12: qassert(null.ok, "B1")
  
  
   *** caught segfault ***
  address 84a4a9a, cause 'memory not mapped'
  
  Traceback:
   1: qassert(null.ok, "B1")
   2: checkFunction(x, args, ordered, nargs, null.ok)
   3: checkmate::assert_function(node_aes_aggr_fun, .var.name = paste0(node_aes_name,     "_aggr"))
   4: assert_node_aes(node_aes_name, prefix, metadata, node_aes, node_aes_aggr)
   5: assert_numeric_node_aes("node_size", prefix, metadata, node_size,     node_size_aggr, 0, Inf)
   6: clustree.matrix(clusterings, prefix, metadata = metadata, ...)
   7: clustree(clusterings, prefix, metadata = metadata, ...)
   8: clustree.data.frame(iris_clusts, prefix = "K", node_size = "Sepal.Width",     node_size_aggr = "mean")
   9: clustree(iris_clusts, prefix = "K", node_size = "Sepal.Width",     node_size_aggr = "mean")
  10: eval_bare(get_expr(quo), get_env(quo))
  11: quasi_label(enquo(object), label)
  12: expect_is(clustree(iris_clusts, prefix = "K", node_size = "Sepal.Width",     node_size_aggr = "mean"), c("gg", "ggplot"))
  13: eval(code, test_env)
  14: eval(code, test_env)
  15: 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)
  16: doTryCatch(return(expr), name, parentenv, handler)
  17: tryCatchOne(expr, names, parentenv, handlers[[1L]])
  18: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
  19: doTryCatch(return(expr), name, parentenv, handler)
  20: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]),     names[nh], parentenv, handlers[[nh]])
  21: tryCatchList(expr, classes, parentenv, handlers)
  22: 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) {    })
  23: test_code(desc, code, env = parent.frame())
  24: test_that("node_size aesthetic works", {    expect_is(clustree(iris_clusts, prefix = "K", node_size = "Sepal.Width",         node_size_aggr = "mean"), c("gg", "ggplot"))    expect_error(clustree(iris_clusts, prefix = "K", node_size = "Sepal.Width"),         "Must be of type 'character'")    expect_error(clustree(iris_clusts, prefix = "K", node_size = "Sepal.Width",         node_size_aggr = "FAKEFUN"), "'function' was not found")})
  25: eval(code, test_env)
  26: eval(code, test_env)
  27: 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)
  28: doTryCatch(return(expr), name, parentenv, handler)
  29: tryCatchOne(expr, names, parentenv, handlers[[1L]])
  30: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
  31: doTryCatch(return(expr), name, parentenv, handler)
  32: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]),     names[nh], parentenv, handlers[[nh]])
  33: tryCatchList(expr, classes, parentenv, handlers)
  34: 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) {    })
  35: test_code(NULL, exprs, env)
  36: source_file(path, new.env(parent = env), chdir = TRUE, wrap = wrap)
  37: force(code)
  38: with_reporter(reporter = reporter, start_end_reporter = start_end_reporter,     {        lister$start_file(basename(path))        source_file(path, new.env(parent = env), chdir = TRUE,             wrap = wrap)        end_context()    })
  39: FUN(X[[i]], ...)
  40: lapply(paths, test_file, env = env, reporter = current_reporter,     start_end_reporter = FALSE, load_helpers = FALSE, wrap = wrap)
  41: force(code)
  42: with_reporter(reporter = current_reporter, results <- lapply(paths,     test_file, env = env, reporter = current_reporter, start_end_reporter = FALSE,     load_helpers = FALSE, wrap = wrap))
  43: test_files(paths, reporter = reporter, env = env, stop_on_failure = stop_on_failure,     stop_on_warning = stop_on_warning, wrap = wrap)
  44: test_dir(path = test_path, reporter = reporter, env = env, filter = filter,     ..., stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning,     wrap = wrap)
  45: test_package_dir(package = package, test_path = test_path, filter = filter,     reporter = reporter, ..., stop_on_failure = stop_on_failure,     stop_on_warning = stop_on_warning, wrap = wrap)
  46: test_check("clustree")
  An irrecoverable exception occurred. R is aborting now ...