Running ‘testthat.R’ [49s/59s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
  > # This file is part of the standard setup for testthat.
  > # It is recommended that you do not modify it.
  > #
  > # Where should you do additional test configuration?
  > # Learn more about the roles of various files in:
  > # * https://r-pkgs.org/tests.html
  > # * https://testthat.r-lib.org/reference/test_package.html#special-files
  > 
  > library(testthat)
  > library(squat)
  
  Attaching package: 'squat'
  
  The following objects are masked from 'package:stats':
  
      dist, hclust, kmeans, smooth
  
  The following objects are masked from 'package:base':
  
      append, scale
  
  > 
  > test_check("squat")
  
  Attaching package: 'purrr'
  
  The following object is masked from 'package:testthat':
  
      is_null
  
  i Computing initial centroids using kmeans++ strategy...
  Information about the data set:
   - Number of observations: 10
   - Number of dimensions: 3
   - Number of points: 101
  
  Information about cluster initialization:
   - Number of clusters: 2
   - Initial seeds for cluster centers:         10         7
  
  Information about the methods used within the algorithm:
   - Warping method: affine
   - Center method: mean
   - Dissimilarity method: l2
   - Optimization method: bobyqa
  
  Information about warping parameter bounds:
   - Warping options:    0.1500   0.1500
  
  Information about convergence criteria:
   - Maximum number of iterations: 100
   - Distance relative tolerance: 0.001
  
  Information about parallelization setup:
   - Number of threads: 1
   - Parallel method: 0
  
  Other information:
   - Use fence to robustify: 0
   - Check total dissimilarity: 1
   - Compute overall center: 0
  
  Running k-centroid algorithm:
   - Iteration #1
     * Size of cluster #0: 6
     * Size of cluster #1: 4
   - Iteration #2
     * Size of cluster #0: 6
     * Size of cluster #1: 4
  
  Active stopping criteria:
   - Memberships did not change.
  i Computing initial centroids using kmeans++ strategy...
  Information about the data set:
   - Number of observations: 10
   - Number of dimensions: 3
   - Number of points: 101
  
  Information about cluster initialization:
   - Number of clusters: 2
   - Initial seeds for cluster centers:         10         7
  
  Information about the methods used within the algorithm:
   - Warping method: affine
   - Center method: mean
   - Dissimilarity method: l2
   - Optimization method: bobyqa
  
  Information about warping parameter bounds:
   - Warping options:    0.1500   0.1500
  
  Information about convergence criteria:
   - Maximum number of iterations: 100
   - Distance relative tolerance: 0.001
  
  Information about parallelization setup:
   - Number of threads: 1
   - Parallel method: 0
  
  Other information:
   - Use fence to robustify: 0
   - Check total dissimilarity: 1
   - Compute overall center: 0
  
  Running k-centroid algorithm:
   - Iteration #1
     * Size of cluster #0: 6
     * Size of cluster #1: 4
   - Iteration #2
     * Size of cluster #0: 6
     * Size of cluster #1: 4
  
  Active stopping criteria:
   - Memberships did not change.
  i Computing initial centroids using kmeans++ strategy...
  Information about the data set:
   - Number of observations: 10
   - Number of dimensions: 3
   - Number of points: 101
  
  Information about cluster initialization:
   - Number of clusters: 2
   - Initial seeds for cluster centers:         10         7
  
  Information about the methods used within the algorithm:
   - Warping method: affine
   - Center method: mean
   - Dissimilarity method: l2
   - Optimization method: bobyqa
  
  Information about warping parameter bounds:
   - Warping options:    0.1500   0.1500
  
  Information about convergence criteria:
   - Maximum number of iterations: 100
   - Distance relative tolerance: 0.001
  
  Information about parallelization setup:
   - Number of threads: 1
   - Parallel method: 0
  
  Other information:
   - Use fence to robustify: 0
   - Check total dissimilarity: 1
   - Compute overall center: 0
  
  Running k-centroid algorithm:
   - Iteration #1
     * Size of cluster #0: 6
     * Size of cluster #1: 4
   - Iteration #2
     * Size of cluster #0: 6
     * Size of cluster #1: 4
  
  Active stopping criteria:
   - Memberships did not change.
  The `original_space` boolean argument is not specified. Defaulting to TRUE.
  The `plane` length-2 integer vector argument is not specified. Defaulting to 1:2.
  The `original_space` boolean argument is not specified. Defaulting to TRUE.
  
   *** caught segfault ***
  address 0x559300000001, cause 'memory not mapped'
  
  Traceback:
   1: `[.data.frame`(munched, rows >= 2, )
   2: munched[rows >= 2, ]
   3: draw_panel(..., self = self)
   4: self$draw_panel(data, panel_params, coord, na.rm = FALSE)
   5: inject(self$draw_panel(data, panel_params, coord, !!!params))
   6: FUN(X[[i]], ...)
   7: lapply(data_panels, function(data) {    if (empty(data))         return(zeroGrob())    panel_params <- layout$panel_params[[data$PANEL[1]]]    inject(self$draw_panel(data, panel_params, coord, !!!params))})
   8: draw_layer(..., self = self)
   9: self$geom$draw_layer(data, self$computed_geom_params, layout,     layout$coord)
  10: draw_geom(..., self = self)
  11: l$draw_geom(d, layout)
  12: f(l = layers[[i]], d = data[[i]])
  13: withCallingHandlers(expr, condition = function(cnd) {    {        .__handler_frame__. <- TRUE        .__setup_frame__. <- frame        if (inherits(cnd, "message")) {            except <- c("warning", "error")        }        else if (inherits(cnd, "warning")) {            except <- "error"        }        else {            except <- ""        }    }    while (!is_null(cnd)) {        if (inherits(cnd, "error")) {            out <- handlers[[1L]](cnd)            if (!inherits(out, "rlang_zap"))                 throw(out)        }        inherit <- .subset2(.subset2(cnd, "rlang"), "inherit")        if (is_false(inherit)) {            return()        }        cnd <- .subset2(cnd, "parent")    }})
  14: doTryCatch(return(expr), name, parentenv, handler)
  15: tryCatchOne(expr, names, parentenv, handlers[[1L]])
  16: tryCatchList(expr, classes, parentenv, handlers)
  17: tryCatch(withCallingHandlers(expr, condition = function(cnd) {    {        .__handler_frame__. <- TRUE        .__setup_frame__. <- frame        if (inherits(cnd, "message")) {            except <- c("warning", "error")        }        else if (inherits(cnd, "warning")) {            except <- "error"        }        else {            except <- ""        }    }    while (!is_null(cnd)) {        if (inherits(cnd, "error")) {            out <- handlers[[1L]](cnd)            if (!inherits(out, "rlang_zap"))                 throw(out)        }        inherit <- .subset2(.subset2(cnd, "rlang"), "inherit")        if (is_false(inherit)) {            return()        }        cnd <- .subset2(cnd, "parent")    }}), stackOverflowError = handlers[[1L]])
  18: try_fetch(for (i in seq_along(data)) {    out[[i]] <- f(l = layers[[i]], d = data[[i]])}, error = function(cnd) {    cli::cli_abort(c("Problem while {step}.", i = "Error occurred in the {ordinal(i)} layer."),         call = layers[[i]]$constructor, parent = cnd)})
  19: by_layer(function(l, d) l$draw_geom(d, layout), plot$layers,     data, "converting geom to grob")
  20: ggplot_gtable.ggplot_built(data)
  21: ggplot_gtable(data)
  22: print.ggplot(p)
  23: print(p)
  24: print_plot.ggplot(plot, title)
  25: print_plot(plot, title)
  26: writer(fig, testcase, title)
  27: vdiffr::expect_doppelganger(title = "QTS sample plot", fig = plot(vespa64$igp))
  28: eval(code, test_env)
  29: eval(code, test_env)
  30: 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)
  31: doTryCatch(return(expr), name, parentenv, handler)
  32: tryCatchOne(expr, names, parentenv, handlers[[1L]])
  33: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
  34: doTryCatch(return(expr), name, parentenv, handler)
  35: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]),     names[nh], parentenv, handlers[[nh]])
  36: tryCatchList(expr, classes, parentenv, handlers)
  37: 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) {    })
  38: test_code(desc, code, env = parent.frame(), default_reporter = local_interactive_reporter())
  39: test_that("Visualization functions for QTS work", {    skip_if_not_installed("vdiffr")    skip_on_covr()    skip_on_ci()    vdiffr::expect_doppelganger(title = "QTS sample plot", fig = plot(vespa64$igp))    vdiffr::expect_doppelganger(title = "QTS sample plot with memberships",         fig = plot(vespa64$igp, memberships = c(rep(1, 32), rep(2,             32))))    vdiffr::expect_doppelganger(title = "QTS sample plot with highlighted observations",         fig = plot(vespa64$igp, highlighted = c(TRUE, rep(FALSE,             63))))})
  40: eval(code, test_env)
  41: eval(code, test_env)
  42: 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)
  43: doTryCatch(return(expr), name, parentenv, handler)
  44: tryCatchOne(expr, names, parentenv, handlers[[1L]])
  45: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
  46: doTryCatch(return(expr), name, parentenv, handler)
  47: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]),     names[nh], parentenv, handlers[[nh]])
  48: tryCatchList(expr, classes, parentenv, handlers)
  49: 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) {    })
  50: test_code(test = NULL, code = exprs, env = env, default_reporter = StopReporter$new())
  51: source_file(path, env(env), wrap = wrap)
  52: FUN(X[[i]], ...)
  53: lapply(test_paths, test_one_file, env = env, wrap = wrap)
  54: doTryCatch(return(expr), name, parentenv, handler)
  55: tryCatchOne(expr, names, parentenv, handlers[[1L]])
  56: tryCatchList(expr, classes, parentenv, handlers)
  57: tryCatch(code, testthat_abort_reporter = function(cnd) {    cat(conditionMessage(cnd), "\n")    NULL})
  58: with_reporter(reporters$multi, lapply(test_paths, test_one_file,     env = env, wrap = wrap))
  59: 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,     wrap = wrap, load_package = load_package)
  60: 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,     wrap = wrap, load_package = load_package, parallel = parallel)
  61: test_dir("testthat", package = package, reporter = reporter,     ..., load_package = "installed")
  62: test_check("squat")
  An irrecoverable exception occurred. R is aborting now ...
  Segmentation fault