Running ‘testthat.R’ [71s/95s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
  > library(testthat)
  > library(healthcareai)
  > 
  > test_check("healthcareai")
  ── 1. Error: rf deploy classification pushes values to SQLite (@test-deploy-push
  The tuning parameter grid should have columns mtry, splitrule, min.node.size
  1: capture.output(dRF$run()) at testthat/test-deploy-pushes-to-sqlite.R:154
  2: evalVis(expr)
  3: withVisible(eval(expr, pf))
  4: eval(expr, pf)
  5: eval(expr, pf)
  6: dRF$run()
  7: self$buildModel()
  8: train(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  9: train.default(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  10: stop(paste("The tuning parameter grid should have columns", paste(tuneNames, collapse = ", ", 
         sep = "")), call. = FALSE)
  
  ── 2. Error: rf deploy regression pushes values to SQLite (@test-deploy-pushes-t
  The tuning parameter grid should have columns mtry, splitrule, min.node.size
  1: capture.output(dRF$run()) at testthat/test-deploy-pushes-to-sqlite.R:180
  2: evalVis(expr)
  3: withVisible(eval(expr, pf))
  4: eval(expr, pf)
  5: eval(expr, pf)
  6: dRF$run()
  7: self$buildModel()
  8: train(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  9: train.default(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  10: stop(paste("The tuning parameter grid should have columns", paste(tuneNames, collapse = ", ", 
         sep = "")), call. = FALSE)
  
  ── 3. Error: rf classification predicted val (w/out mtry tuning) is the same eac
  The tuning parameter grid should have columns mtry, splitrule, min.node.size
  1: capture.output(RandomForest$run()) at testthat/test-deploy-specific-values.R:94
  2: evalVis(expr)
  3: withVisible(eval(expr, pf))
  4: eval(expr, pf)
  5: eval(expr, pf)
  6: RandomForest$run()
  7: self$buildModel()
  8: train(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  9: train.default(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  10: stop(paste("The tuning parameter grid should have columns", paste(tuneNames, collapse = ", ", 
         sep = "")), call. = FALSE)
  
  ── 4. Error: rf classification predicted val (w/ mtry tuning) is the same each 
  
  The tuning parameter grid should have columns mtry, splitrule, min.node.size
  1: capture.output(RandomForest$run()) at testthat/test-deploy-specific-values.R:130
  2: evalVis(expr)
  3: withVisible(eval(expr, pf))
  4: eval(expr, pf)
  5: eval(expr, pf)
  6: RandomForest$run()
  7: self$buildModel()
  8: train(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  9: train.default(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  10: stop(paste("The tuning parameter grid should have columns", paste(tuneNames, collapse = ", ", 
         sep = "")), call. = FALSE)
  
  ── 5. Error: rf regression predicted val (w/out mtry tuning) is same each time (
  The tuning parameter grid should have columns mtry, splitrule, min.node.size
  1: capture.output(RandomForest$run()) at testthat/test-deploy-specific-values.R:165
  2: evalVis(expr)
  3: withVisible(eval(expr, pf))
  4: eval(expr, pf)
  5: eval(expr, pf)
  6: RandomForest$run()
  7: self$buildModel()
  8: train(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  9: train.default(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  10: stop(paste("The tuning parameter grid should have columns", paste(tuneNames, collapse = ", ", 
         sep = "")), call. = FALSE)
  
  ── 6. Error: rf regression predicted val (w/mtry tuning) is same each time (@tes
  The tuning parameter grid should have columns mtry, splitrule, min.node.size
  1: capture.output(RandomForest$run()) at testthat/test-deploy-specific-values.R:202
  2: evalVis(expr)
  3: withVisible(eval(expr, pf))
  4: eval(expr, pf)
  5: eval(expr, pf)
  6: RandomForest$run()
  7: self$buildModel()
  8: train(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  9: train.default(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  10: stop(paste("The tuning parameter grid should have columns", paste(tuneNames, collapse = ", ", 
         sep = "")), call. = FALSE)
  
  ── 7. Error: rf predicted df doesn't have NAs (@test-deploy-to-df-has-no-nulls.R
  The tuning parameter grid should have columns mtry, splitrule, min.node.size
  1: capture.output(RandomForest$run()) at testthat/test-deploy-to-df-has-no-nulls.R:87
  2: evalVis(expr)
  3: withVisible(eval(expr, pf))
  4: eval(expr, pf)
  5: eval(expr, pf)
  6: RandomForest$run()
  7: self$buildModel()
  8: train(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  9: train.default(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  10: stop(paste("The tuning parameter grid should have columns", paste(tuneNames, collapse = ", ", 
         sep = "")), call. = FALSE)
  
  ── 8. Error: AUC_rf is the same each time the test is run (@test-develop-supervi
  The tuning parameter grid should have columns mtry, splitrule, min.node.size
  1: capture.output(rf$run()) at testthat/test-develop-supervised-model.R:142
  2: evalVis(expr)
  3: withVisible(eval(expr, pf))
  4: eval(expr, pf)
  5: eval(expr, pf)
  6: rf$run()
  7: self$buildModel()
  8: train(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  9: train.default(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  10: stop(paste("The tuning parameter grid should have columns", paste(tuneNames, collapse = ", ", 
         sep = "")), call. = FALSE)
  
  ── 9. Error: rmse_rf is the same each time the test is run non-factor column (@t
  The tuning parameter grid should have columns mtry, splitrule, min.node.size
  1: capture.output(rf$run()) at testthat/test-develop-supervised-model.R:155
  2: evalVis(expr)
  3: withVisible(eval(expr, pf))
  4: eval(expr, pf)
  5: eval(expr, pf)
  6: rf$run()
  7: self$buildModel()
  8: train(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  9: train.default(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  10: stop(paste("The tuning parameter grid should have columns", paste(tuneNames, collapse = ", ", 
         sep = "")), call. = FALSE)
  
  ── 10. Error: mae_rf is the same each time the test is run non-factor column (@t
  The tuning parameter grid should have columns mtry, splitrule, min.node.size
  1: capture.output(rf$run()) at testthat/test-develop-supervised-model.R:168
  2: evalVis(expr)
  3: withVisible(eval(expr, pf))
  4: eval(expr, pf)
  5: eval(expr, pf)
  6: rf$run()
  7: self$buildModel()
  8: train(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  9: train.default(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  10: stop(paste("The tuning parameter grid should have columns", paste(tuneNames, collapse = ", ", 
         sep = "")), call. = FALSE)
  
  ── 11. Error: (unknown) (@test-factor-level-coercion.R#131)  ───────────────────
  The tuning parameter grid should have columns mtry, splitrule, min.node.size
  1: capture.output(RandomForestC$run()) at testthat/test-factor-level-coercion.R:131
  2: evalVis(expr)
  3: withVisible(eval(expr, pf))
  4: eval(expr, pf)
  5: eval(expr, pf)
  6: RandomForestC$run()
  7: self$buildModel()
  8: train(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  9: train.default(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  10: stop(paste("The tuning parameter grid should have columns", paste(tuneNames, collapse = ", ", 
         sep = "")), call. = FALSE)
  
  ── 12. Error: (unknown) (@test-get-process-variables-df.R#26)  ─────────────────
  The tuning parameter grid should have columns mtry, splitrule, min.node.size
  1: ignoreSpecWarn(capture.output(rf$run()), wRegexps = "ROC curve with AUC == 1") at testthat/test-get-process-variables-df.R:26
  2: withCallingHandlers(code, warning = h)
  3: capture.output(rf$run())
  4: evalVis(expr)
  5: withVisible(eval(expr, pf))
  6: eval(expr, pf)
  7: eval(expr, pf)
  8: rf$run()
  9: self$buildModel()
  10: train(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  11: train.default(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  12: stop(paste("The tuning parameter grid should have columns", paste(tuneNames, collapse = ", ", 
         sep = "")), call. = FALSE)
  
  ── 13. Error: Numeric Column with no variance is dropped in RF deploy (@test-rem
  The tuning parameter grid should have columns mtry, splitrule, min.node.size
  1: capture.output(rf$run()) at testthat/test-remove-cols-with-all-same-value.r:128
  2: evalVis(expr)
  3: withVisible(eval(expr, pf))
  4: eval(expr, pf)
  5: eval(expr, pf)
  6: rf$run()
  7: self$buildModel()
  8: train(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  9: train.default(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  10: stop(paste("The tuning parameter grid should have columns", paste(tuneNames, collapse = ", ", 
         sep = "")), call. = FALSE)
  
  ── 14. Error: Factor column with no variance is dropped in RF deploy (@test-remo
  The tuning parameter grid should have columns mtry, splitrule, min.node.size
  1: capture.output(rf$run()) at testthat/test-remove-cols-with-all-same-value.r:151
  2: evalVis(expr)
  3: withVisible(eval(expr, pf))
  4: eval(expr, pf)
  5: eval(expr, pf)
  6: rf$run()
  7: self$buildModel()
  8: train(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  9: train.default(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  10: stop(paste("The tuning parameter grid should have columns", paste(tuneNames, collapse = ", ", 
         sep = "")), call. = FALSE)
  
  ── 15. Error: Error is raised when columns are missing (@test-remove-cols-with-a
  The tuning parameter grid should have columns mtry, splitrule, min.node.size
  1: capture.output(rf$run()) at testthat/test-remove-cols-with-all-same-value.r:198
  2: evalVis(expr)
  3: withVisible(eval(expr, pf))
  4: eval(expr, pf)
  5: eval(expr, pf)
  6: rf$run()
  7: self$buildModel()
  8: train(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  9: train.default(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  10: stop(paste("The tuning parameter grid should have columns", paste(tuneNames, collapse = ", ", 
         sep = "")), call. = FALSE)
  
  ── 16. Error: Extra columns in deploy are dropped (@test-remove-cols-with-all-sa
  The tuning parameter grid should have columns mtry, splitrule, min.node.size
  1: capture.output(rf$run()) at testthat/test-remove-cols-with-all-same-value.r:227
  2: evalVis(expr)
  3: withVisible(eval(expr, pf))
  4: eval(expr, pf)
  5: eval(expr, pf)
  6: rf$run()
  7: self$buildModel()
  8: train(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  9: train.default(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  10: stop(paste("The tuning parameter grid should have columns", paste(tuneNames, collapse = ", ", 
         sep = "")), call. = FALSE)
  
  ── 17. Error: (unknown) (@test-risk-adjusted-comparisons.R#22)  ────────────────
  The tuning parameter grid should have columns mtry, splitrule, min.node.size
  1: capture.output(riskAdjComp$run()) at testthat/test-risk-adjusted-comparisons.R:22
  2: evalVis(expr)
  3: withVisible(eval(expr, pf))
  4: eval(expr, pf)
  5: eval(expr, pf)
  6: riskAdjComp$run()
  7: self$buildModel(groupbyList, j)
  8: train(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = factor(private$dfTrain[[self$params$predictedCol]]), method = "ranger", importance = "impurity", 
         metric = "ROC", num.trees = self$params$trees, tuneGrid = private$grid, trControl = trainCtrl)
  9: train.default(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = factor(private$dfTrain[[self$params$predictedCol]]), method = "ranger", importance = "impurity", 
         metric = "ROC", num.trees = self$params$trees, tuneGrid = private$grid, trControl = trainCtrl)
  10: stop(paste("The tuning parameter grid should have columns", paste(tuneNames, collapse = ", ", 
         sep = "")), call. = FALSE)
  
  ── 18. Error: Classification models can only be used for classification (@test-s
  The tuning parameter grid should have columns mtry, splitrule, min.node.size
  1: capture.output(rf$run()) at testthat/test-saved-model-parameter-comparisons-in-deploy.R:26
  2: evalVis(expr)
  3: withVisible(eval(expr, pf))
  4: eval(expr, pf)
  5: eval(expr, pf)
  6: rf$run()
  7: self$buildModel()
  8: train(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  9: train.default(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  10: stop(paste("The tuning parameter grid should have columns", paste(tuneNames, collapse = ", ", 
         sep = "")), call. = FALSE)
  
  ── 19. Error: Regression models can only be used for regression (@test-saved-mod
  The tuning parameter grid should have columns mtry, splitrule, min.node.size
  1: capture.output(rf$run()) at testthat/test-saved-model-parameter-comparisons-in-deploy.R:66
  2: evalVis(expr)
  3: withVisible(eval(expr, pf))
  4: eval(expr, pf)
  5: eval(expr, pf)
  6: rf$run()
  7: self$buildModel()
  8: train(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  9: train.default(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  10: stop(paste("The tuning parameter grid should have columns", paste(tuneNames, collapse = ", ", 
         sep = "")), call. = FALSE)
  
  ── 20. Error: Warning is thrown if predicted columns do not match (@test-saved-m
  The tuning parameter grid should have columns mtry, splitrule, min.node.size
  1: capture.output(rf$run()) at testthat/test-saved-model-parameter-comparisons-in-deploy.R:105
  2: evalVis(expr)
  3: withVisible(eval(expr, pf))
  4: eval(expr, pf)
  5: eval(expr, pf)
  6: rf$run()
  7: self$buildModel()
  8: train(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  9: train.default(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  10: stop(paste("The tuning parameter grid should have columns", paste(tuneNames, collapse = ", ", 
         sep = "")), call. = FALSE)
  
  ── 21. Error: (unknown) (@test-saving-model.R#62)  ─────────────────────────────
  The tuning parameter grid should have columns mtry, splitrule, min.node.size
  1: capture.output(RandomForest$run()) at testthat/test-saving-model.R:62
  2: evalVis(expr)
  3: withVisible(eval(expr, pf))
  4: eval(expr, pf)
  5: eval(expr, pf)
  6: RandomForest$run()
  7: self$buildModel()
  8: train(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  9: train.default(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  10: stop(paste("The tuning parameter grid should have columns", paste(tuneNames, collapse = ", ", 
         sep = "")), call. = FALSE)
  
  ── 22. Error: (unknown) (@test-top-factors-getter.R#32)  ───────────────────────
  The tuning parameter grid should have columns mtry, splitrule, min.node.size
  1: capture.output(rf$run()) at testthat/test-top-factors-getter.R:32
  2: evalVis(expr)
  3: withVisible(eval(expr, pf))
  4: eval(expr, pf)
  5: eval(expr, pf)
  6: rf$run()
  7: self$buildModel()
  8: train(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  9: train.default(x = private$dfTrain[, !(colnames(private$dfTrain) == self$params$predictedCol)], 
         y = adjustedY, method = "ranger", importance = "impurity", metric = rfTrainParams.metric, 
         num.trees = self$params$trees, tuneGrid = private$grid, trControl = train.control)
  10: stop(paste("The tuning parameter grid should have columns", paste(tuneNames, collapse = ", ", 
         sep = "")), call. = FALSE)
  
  Preparing data... 
  Building model... 
  Generating predictions... 
  Generating confusion matrix... 
  Confusion Matrix and Statistics
  
           True
  Predicted one two five six three four
      one    22   0    0   0     0    0
      two     0  12    0   0     0    1
      five    0   0   10   0     1    0
      six     0   0    0   4     0    0
      three   0   0    0   0    13    0
      four    0   0    0   0     0    8
  
  Overall Statistics
                                            
                 Accuracy : 0.9718          
                   95% CI : (0.9019, 0.9966)
      No Information Rate : 0.3099          
      P-Value [Acc > NIR] : < 2.2e-16       
                                            
                    Kappa : 0.9647          
   Mcnemar's Test P-Value : NA              
  
  Statistics by Class:
  
                       Class: one Class: two Class: five Class: six Class: three
  Sensitivity              1.0000     1.0000      1.0000    1.00000       0.9286
  Specificity              1.0000     0.9831      0.9836    1.00000       1.0000
  Pos Pred Value           1.0000     0.9231      0.9091    1.00000       1.0000
  Neg Pred Value           1.0000     1.0000      1.0000    1.00000       0.9828
  Prevalence               0.3099     0.1690      0.1408    0.05634       0.1972
  Detection Rate           0.3099     0.1690      0.1408    0.05634       0.1831
  Detection Prevalence     0.3099     0.1831      0.1549    0.05634       0.1831
  Balanced Accuracy        1.0000     0.9915      0.9918    1.00000       0.9643
                       Class: four
  Sensitivity               0.8889
  Specificity               1.0000
  Pos Pred Value            1.0000
  Neg Pred Value            0.9841
  Prevalence                0.1268
  Detection Rate            0.1127
  Detection Prevalence      0.1127
  Balanced Accuracy         0.9444
  Generating confusion matrix... 
  Confusion Matrix and Statistics
  
           True
  Predicted one two five six three four
      one    22   0    0   0     0    0
      two     0  12    0   0     0    1
      five    0   0   10   0     1    0
      six     0   0    0   4     0    0
      three   0   0    0   0    13    0
      four    0   0    0   0     0    8
  
  Overall Statistics
                                            
                 Accuracy : 0.9718          
                   95% CI : (0.9019, 0.9966)
      No Information Rate : 0.3099          
      P-Value [Acc > NIR] : < 2.2e-16       
                                            
                    Kappa : 0.9647          
   Mcnemar's Test P-Value : NA              
  
  Statistics by Class:
  
                       Class: one Class: two Class: five Class: six Class: three
  Sensitivity              1.0000     1.0000      1.0000    1.00000       0.9286
  Specificity              1.0000     0.9831      0.9836    1.00000       1.0000
  Pos Pred Value           1.0000     0.9231      0.9091    1.00000       1.0000
  Neg Pred Value           1.0000     1.0000      1.0000    1.00000       0.9828
  Prevalence               0.3099     0.1690      0.1408    0.05634       0.1972
  Detection Rate           0.3099     0.1690      0.1408    0.05634       0.1831
  Detection Prevalence     0.3099     0.1831      0.1549    0.05634       0.1831
  Balanced Accuracy        1.0000     0.9915      0.9918    1.00000       0.9643
                       Class: four
  Sensitivity               0.8889
  Specificity               1.0000
  Pos Pred Value            1.0000
  Neg Pred Value            0.9841
  Prevalence                0.1268
  Detection Rate            0.1127
  Detection Prevalence      0.1127
  Balanced Accuracy         0.9444
  ══ testthat results  ═══════════════════════════════════════════════════════════
  OK: 363 SKIPPED: 15 FAILED: 22
  1. Error: rf deploy classification pushes values to SQLite (@test-deploy-pushes-to-sqlite.R#154) 
  2. Error: rf deploy regression pushes values to SQLite (@test-deploy-pushes-to-sqlite.R#180) 
  3. Error: rf classification predicted val (w/out mtry tuning) is the same each 
            time (@test-deploy-specific-values.R#94) 
  4. Error: rf classification predicted val (w/ mtry tuning) is the same each 
            time (@test-deploy-specific-values.R#130) 
  5. Error: rf regression predicted val (w/out mtry tuning) is same each time (@test-deploy-specific-values.R#165) 
  6. Error: rf regression predicted val (w/mtry tuning) is same each time (@test-deploy-specific-values.R#202) 
  7. Error: rf predicted df doesn't have NAs (@test-deploy-to-df-has-no-nulls.R#87) 
  8. Error: AUC_rf is the same each time the test is run (@test-develop-supervised-model.R#142) 
  9. Error: rmse_rf is the same each time the test is run non-factor column (@test-develop-supervised-model.R#155) 
  1. ...
  
  Error: testthat unit tests failed
  In addition: Warning message:
  call dbDisconnect() when finished working with a connection 
  Execution halted