Running ‘testthat.R’ [46s/68s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
  > library(testthat)
  > library(caretEnsemble)
  > 
  > test_check("caretEnsemble")
   ----------- FAILURE REPORT -------------- 
   --- failure: the condition has length > 1 ---
   --- srcref --- 
  : 
   --- package (from environment) --- 
  caretEnsemble
   --- call from context --- 
  predict.caretList(models)
   --- call from argument --- 
  if (class(preds) != "matrix" & class(preds) != "data.frame") {
      if (class(preds) == "character" | class(preds) == "factor") {
          preds <- as.character(preds)
      }
      preds <- as.matrix(t(preds))
  }
   --- R stacktrace ---
  where 1: predict.caretList(models)
  where 2: predict(models)
  where 3: eval_bare(quo_get_expr(.quo), quo_get_env(.quo))
  where 4: withCallingHandlers(code, warning = function(condition) {
      out$push(condition)
      maybe_restart("muffleWarning")
  })
  where 5: .capture(act$val <- eval_bare(quo_get_expr(.quo), quo_get_env(.quo)), 
      ...)
  where 6: quasi_capture(enquo(object), label, capture_warnings)
  where 7 at testthat/test-caretList.R#109: expect_warning(p1 <- predict(models))
  where 8: eval(code, test_env)
  where 9: eval(code, test_env)
  where 10: 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)
  where 11: doTryCatch(return(expr), name, parentenv, handler)
  where 12: tryCatchOne(expr, names, parentenv, handlers[[1L]])
  where 13: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
  where 14: doTryCatch(return(expr), name, parentenv, handler)
  where 15: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]), 
      names[nh], parentenv, handlers[[nh]])
  where 16: tryCatchList(expr, classes, parentenv, handlers)
  where 17: 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) {
      })
  where 18: test_code(desc, code, env = parent.frame())
  where 19 at testthat/test-caretList.R#94: test_that("caretList predictions", {
      skip_if_not_installed("randomForest")
      skip_if_not_installed("nnet")
      skip_if_not_installed("plyr")
      expect_warning({
          models <- caretList(iris[, 1:2], iris[, 5], tuneLength = 1, 
              verbose = FALSE, methodList = "rf", tuneList = list(nnet = caretModelSpec(method = "nnet", 
                  trace = FALSE)), trControl = trainControl(method = "cv", 
                  number = 2, savePredictions = "final", classProbs = FALSE))
      })
      expect_warning(p1 <- predict(models))
      p2 <- predict(models, newdata = iris[100, c(1:2)])
      p3 <- predict(models, newdata = iris[110, c(1:2)])
      expect_is(p1, "matrix")
      expect_is(p1[, 1], "character")
      expect_is(p1[, 2], "character")
      expect_equal(names(models), colnames(p1))
      expect_is(p2, "matrix")
      expect_is(p2[, 1], "character")
      expect_is(p2[, 2], "character")
      expect_equal(names(models), colnames(p2))
      expect_is(p3, "matrix")
      expect_is(p3[, 1], "character")
      expect_is(p3[, 2], "character")
      expect_equal(names(models), colnames(p3))
      expect_warning({
          models <- caretList(iris[, 1:2], iris[, 5], tuneLength = 1, 
              verbose = FALSE, methodList = "rf", tuneList = list(nnet = caretModelSpec(method = "nnet", 
                  trace = FALSE)), trControl = trainControl(method = "cv", 
                  number = 2, savePredictions = "final", classProbs = TRUE))
      })
      expect_warning(p2 <- predict(models))
      p3 <- predict(models, newdata = iris[100, c(1:2)])
      expect_is(p2, "matrix")
      expect_is(p2[, 1], "numeric")
      expect_is(p2[, 2], "numeric")
      expect_is(p3, "matrix")
      expect_is(p3[, 1], "numeric")
      expect_is(p3[, 2], "numeric")
      expect_equal(names(models), colnames(p3))
      models[[1]]$modelType <- "Bogus"
      expect_error(expect_warning(predict(models)))
  })
  where 20: eval(code, test_env)
  where 21: eval(code, test_env)
  where 22: 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)
  where 23: doTryCatch(return(expr), name, parentenv, handler)
  where 24: tryCatchOne(expr, names, parentenv, handlers[[1L]])
  where 25: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
  where 26: doTryCatch(return(expr), name, parentenv, handler)
  where 27: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]), 
      names[nh], parentenv, handlers[[nh]])
  where 28: tryCatchList(expr, classes, parentenv, handlers)
  where 29: 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) {
      })
  where 30: test_code(NULL, exprs, env)
  where 31: source_file(path, new.env(parent = env), chdir = TRUE, wrap = wrap)
  where 32: force(code)
  where 33: doWithOneRestart(return(expr), restart)
  where 34: withOneRestart(expr, restarts[[1L]])
  where 35: withRestarts(testthat_abort_reporter = function() NULL, force(code))
  where 36: with_reporter(reporter = reporter, start_end_reporter = start_end_reporter, 
      {
          reporter$start_file(basename(path))
          lister$start_file(basename(path))
          source_file(path, new.env(parent = env), chdir = TRUE, 
              wrap = wrap)
          reporter$.end_context()
          reporter$end_file()
      })
  where 37: FUN(X[[i]], ...)
  where 38: lapply(paths, test_file, env = env, reporter = current_reporter, 
      start_end_reporter = FALSE, load_helpers = FALSE, wrap = wrap)
  where 39: force(code)
  where 40: doWithOneRestart(return(expr), restart)
  where 41: withOneRestart(expr, restarts[[1L]])
  where 42: withRestarts(testthat_abort_reporter = function() NULL, force(code))
  where 43: with_reporter(reporter = current_reporter, results <- lapply(paths, 
      test_file, env = env, reporter = current_reporter, start_end_reporter = FALSE, 
      load_helpers = FALSE, wrap = wrap))
  where 44: test_files(paths, reporter = reporter, env = env, stop_on_failure = stop_on_failure, 
      stop_on_warning = stop_on_warning, wrap = wrap)
  where 45: 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)
  where 46: 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)
  where 47: test_check("caretEnsemble")
  
   --- value of length: 2 type: logical ---
  [1] FALSE  TRUE
   --- function from context --- 
  function (object, newdata = NULL, ..., verbose = FALSE) 
  {
      if (is.null(newdata)) {
          warning("Predicting without new data is not well supported.  Attempting to predict on the training data.")
          newdata <- object[[1]]$trainingData
          if (is.null(newdata)) {
              stop("Could not find training data in the first model in the ensemble.")
          }
      }
      if (verbose == TRUE) {
          pboptions(type = "txt", char = "*")
      }
      else if (verbose == FALSE) {
          pboptions(type = "none")
      }
      preds <- pbsapply(object, function(x) {
          type <- x$modelType
          if (type == "Classification") {
              if (x$control$classProbs) {
                  caret::predict.train(x, type = "prob", newdata = newdata, 
                    ...)[, 2]
              }
              else {
                  caret::predict.train(x, type = "raw", newdata = newdata, 
                    ...)
              }
          }
          else if (type == "Regression") {
              caret::predict.train(x, type = "raw", newdata = newdata, 
                  ...)
          }
          else {
              stop(paste("Unknown model type:", type))
          }
      })
      if (class(preds) != "matrix" & class(preds) != "data.frame") {
          if (class(preds) == "character" | class(preds) == "factor") {
              preds <- as.character(preds)
          }
          preds <- as.matrix(t(preds))
      }
      colnames(preds) <- make.names(sapply(object, function(x) x$method), 
          unique = TRUE)
      return(preds)
  }
  <bytecode: 0x56523303f608>
  <environment: namespace:caretEnsemble>
   --- function search by body ---
  Function predict.caretList in namespace caretEnsemble has this body.
   ----------- END OF FAILURE REPORT -------------- 
  Fatal error: the condition has length > 1