Running ‘testthat.R’ [12s/40s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
  > library(testthat)
  > library(metaSEM)
  Loading required package: OpenMx
  To take full advantage of multiple cores, use:
    mxOption(key='Number of Threads', value=parallel::detectCores()) #now
    Sys.setenv(OMP_NUM_THREADS=parallel::detectCores()) #before library(OpenMx)
  "SLSQP" is set as the default optimizer in OpenMx.
  mxOption(NULL, "Gradient algorithm") is set at "central".
  mxOption(NULL, "Optimality tolerance") is set at "6.3e-14".
  mxOption(NULL, "Gradient iterations") is set at "2".
  > 
  > test_check("metaSEM")
  Error: C stack usage  279745684 is too close to the limit
  <simpleError: The job for model 'Asymptotic covariance matrix of correlation matrix' exited abnormally with the error message: User interrupt>
  ── ERROR (test_utilities.R:336:5): Cor2DataFrame() works correctly ─────────────
  Error: The job for model 'Asymptotic covariance matrix of correlation matrix' exited abnormally with the error message: User interrupt
  Backtrace:
      █
   1. └─metaSEM::Cor2DataFrame(Nohe15A1$data, Nohe15A1$n) test_utilities.R:336:4
   2.   └─metaSEM::asyCov(...)
   3.     └─base::mapply(...)
   4.       └─(function (x, n, cor.analysis = TRUE, dropNA = FALSE, as.matrix = TRUE, ...
  
  Error in running mxModel:
  <simpleError: The job for model 'No predictor' exited abnormally with the error message: Non-conformable matrices in horizontal concatenation (cbind). First argument has 3 rows, and argument #2 has 0 rows.>
  
   *** caught segfault ***
  address 0, cause 'memory not mapped'
  
  Traceback:
   1: runHelper(model, frontendStart, intervals, silent, suppressWarnings,     unsafe, checkpoint, useSocket, onlyFrontend, useOptimizer,     beginMessage)
   2: (function (model, ..., intervals = NULL, silent = FALSE, suppressWarnings = FALSE,     unsafe = FALSE, checkpoint = FALSE, useSocket = FALSE, onlyFrontend = FALSE,     useOptimizer = TRUE, beginMessage = !silent) {    warnModelCreatedByOldVersion(model)    if (is.null(intervals)) {    }    else if (length(intervals) != 1 || typeof(intervals) != "logical" ||         is.na(intervals)) {        stop(paste("'intervals' argument", "must be TRUE or FALSE in",             deparse(width.cutoff = 400L, sys.call())), call. = FALSE)    }    frontendStart <- Sys.time()    prohibitDotdotdot(list(...))    runHelper(model, frontendStart, intervals, silent, suppressWarnings,         unsafe, checkpoint, useSocket, onlyFrontend, useOptimizer,         beginMessage)})(new("MxModel", name = "mxModel", matrices = list(Amatrix = new("FullMatrix",     name = "Amatrix", values = c(0, 0, 0, 0, 0, 0, 0, 0, 1, 0,     0, 0, 0, 1, 0, 0), labels = c(NA, NA, NA, NA, NA, NA, NA,     NA, NA, NA, NA, NA, NA, NA, "Slope1_1", NA), free = c(FALSE,     FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE,     FALSE, FALSE, FALSE, FALSE, TRUE, FALSE), lbound = c(NA_real_,     NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_,     NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_,     NA_real_, NA_real_, NA_real_), ubound = c(NA_real_, NA_real_,     NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_,     NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_,     NA_real_, NA_real_), .squareBrackets = numeric(0), .persist = TRUE,     .condenseSlots = FALSE, display = character(0), dependencies = integer(0),     joinModel = NA_character_, joinKey = NA_character_), Smatrix = new("FullMatrix",     name = "Smatrix", values = c(0, 0, 0, 0, 0, 0, 0, 0, 0, 0,     0, 0, 0, 0, 0, 0), labels = c("data.r_v", NA, NA, NA, NA,     NA, NA, NA, NA, NA, "Tau2_1_1", NA, NA, NA, NA, "CovX1_X1"    ), free = c(FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE,     FALSE, FALSE, FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, TRUE    ), lbound = c(NA_real_, NA_real_, NA_real_, NA_real_, NA_real_,     NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_,     NA_real_, NA_real_, NA_real_, NA_real_, NA_real_), ubound = c(NA_real_,     NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_,     NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_,     NA_real_, NA_real_, NA_real_), .squareBrackets = numeric(0),     .persist = TRUE, .condenseSlots = FALSE, display = character(0),     dependencies = integer(0), joinModel = NA_character_, joinKey = NA_character_),     Fmatrix = new("FullMatrix", name = "Fmatrix", values = c(1,     0, 0, 1, 0, 0, 0, 0), labels = c(NA_character_, NA_character_,     NA_character_, NA_character_, NA_character_, NA_character_,     NA_character_, NA_character_), free = c(FALSE, FALSE, FALSE,     FALSE, FALSE, FALSE, FALSE, FALSE), lbound = c(NA_real_,     NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_,     NA_real_), ubound = c(NA_real_, NA_real_, NA_real_, NA_real_,     NA_real_, NA_real_, NA_real_, NA_real_), .squareBrackets = numeric(0),         .persist = TRUE, .condenseSlots = FALSE, display = character(0),         dependencies = integer(0), joinModel = NA_character_,         joinKey = NA_character_), Mmatrix = new("FullMatrix",         name = "Mmatrix", values = c(0, 0, 0, 0), labels = c(NA,         NA, "Intercept1", "MeanX1"), free = c(FALSE, FALSE, TRUE,         TRUE), lbound = c(NA_real_, NA_real_, NA_real_, NA_real_        ), ubound = c(NA_real_, NA_real_, NA_real_, NA_real_),         .squareBrackets = numeric(0), .persist = TRUE, .condenseSlots = FALSE,         display = character(0), dependencies = integer(0), joinModel = NA_character_,         joinKey = NA_character_)), algebras = list(Sfull = new("MxAlgebra",     formula = Smatrix, name = "Sfull", fixed = FALSE, .dimnames = NULL,     result = numeric(0), joinModel = NA_character_, joinKey = NA_character_,     verbose = 0L, initial = NA_real_)), constraints = list(),     intervals = list(Amatrix = new("MxInterval", reference = "Amatrix",         lowerdelta = 3.84145882069412, upperdelta = 3.84145882069412,         boundAdj = TRUE), Smatrix = new("MxInterval", reference = "Smatrix",         lowerdelta = 3.84145882069412, upperdelta = 3.84145882069412,         boundAdj = TRUE), Mmatrix = new("MxInterval", reference = "Mmatrix",         lowerdelta = 3.84145882069412, upperdelta = 3.84145882069412,         boundAdj = TRUE)), latentVars = character(0), manifestVars = character(0),     data = new("MxDataStatic", observed = list(Author = c("Aryee et al. (2002)",     "Balfour and Wechsler (1991)", "Bashaw and Grant (1994)",     "Benkhoff (1997)", "Brett et al. (1995)", "Brett et al. (1995)",     "Chen et al. (2002)", "Chow et al. (2002)", "Dubinsky et al. (1997)",     "Dubinsky et al. (1997)", "Dubinsky and Skinner (1984)",     "Dubinsky et al. (1992)", "Dubinsky et al. (1992)", "Dubinsky et al. (1992)",     "Evans et al. (1995)", "Ferris (1981)", "Ferris (1981)",     "Fletcher and Williams (1996)", "Ganster and Dwyer (1995)",     "Ganster and Dwyer (1995)", "Goffin and Gellatly (2001)",     "Grant and Cr_vens (2001)", "Griffin (1991)", "Hampton et al. (1986)",     "Ingram et al. (1989)", "Ingram and Lee (1990)", "Ivancevich and McMahon (1982)",     "Joshi and Randall (2001)", "Keller (1997)", "Lee and Mowday (1987)",     "Leong et al. (1994)", "Levy and Williams (1998)", "Levy and Williams (1998)",     "Low (2001)", "Mathieu and Farr (1991)", "MacKenzie et al. (1998)",     "McNeily and Russ (1992)", "Meyer and Smith (2000)", "Meyer et al. (1989)",     "Morrison (1997)", "Nouri and Parker (1998)", "Orpen (1997)",     "Parasuraman (1984)", "Pierce et al. (1989)", "Pierce et al. (1989)",     "Pierce et al. (1989)", "Russ and McNeily (1995)", "Russ and McNeily (1995)",     "Ruyter et al. (2001)", "Sager and Johnston (1989)", "Siders et al. (2001)",     "Singh (1998)", "Singh et al. (1994)", "Somers and Birnbaum (1998)",     "Steers (1977)", "Stumpf and Hartman (1984)", "Suliman and Iles (2000)",     "Tang and Sarsfield-Baldwin (1996)", "Vigoda (2002)", "Wiener and Vardi (1980)",     "Yousef (2000)"), Sample_size = c(179L, 232L, 560L, 181L,     156L, 180L, 253L, 790L, 218L, 220L, 116L, 218L, 220L, 156L,     81L, 123L, 46L, 860L, 512L, 172L, 79L, 148L, 526L, 116L,     231L, 120L, 209L, 151L, 532L, 445L, 308L, 62L, 46L, 80L,     311L, 672L, 58L, 277L, 65L, 307L, 135L, 39L, 217L, 116L,     188L, 96L, 77L, 76L, 154L, 132L, 328L, 518L, 377L, 109L,     382L, 85L, 45L, 90L, 303L, 56L, 430L), Sales = c("mixed",     "nonsales", "sales", "sales", "sales", "sales", "nonsales",     "nonsales", "sales", "sales", "sales", "sales", "sales",     "sales", "sales", "nonsales", "nonsales", "mixed", "nonsales",     "nonsales", "nonsales", "sales", "nonsales", "sales", "sales",     "sales", "nonsales", "sales", "nonsales", "nonsales", "sales",     "mixed", "mixed", "sales", "nonsales", "sales", "sales",     "nonsales", "nonsales", "sales", "nonsales", "mixed", "nonsales",     "sales", "nonsales", "nonsales", "sales", "sales", "nonsales",     "sales", "sales", "sales", "nonsales", "nonsales", "nonsales",     "nonsales", "nonsales", "nonsales", "nonsales", "sales",     "mixed"), Country = c("India", "USA", "USA", "Germany", "USA",     "USA", "China", "Taiwan", "USA", "Japan", "USA", "USA", "Japan",     "South Korea", "USA", "USA", "USA", "UK", "USA", "USA", "Canada",     "Australia", "USA", "USA", "USA", "USA", "USA", "USA", "USA",     "USA", "Singapore", "USA", "USA", "Australia", "USA", "USA",     "USA", "Canada", "Canada", "USA", "USA", "UK", "USA", "USA",     "USA", "USA", "USA", "USA", "USA", "USA", "USA", "USA", "USA",     "USA", "USA", "USA", "Jordan", "USA", "Israel", "USA", "UAE"    ), IDV = c(48L, 91L, 91L, 67L, 91L, 91L, 53L, 53L, 91L, 46L,     91L, 91L, 46L, 18L, 91L, 91L, 91L, 89L, 91L, 91L, 80L, 90L,     91L, 91L, 91L, 91L, 91L, 91L, 91L, 91L, 20L, 91L, 91L, 90L,     91L, 91L, 91L, 80L, 80L, 91L, 91L, 89L, 91L, 91L, 91L, 91L,     91L, 91L, 91L, 91L, 91L, 91L, 91L, 91L, 91L, 91L, 38L, 91L,     54L, 91L, 38L), OC_scale = c("Porter or Mowday", "other",     "Porter or Mowday", "Porter or Mowday", "Porter or Mowday",     "Porter or Mowday", "Porter or Mowday", "Meyer", "Porter or Mowday",     "Porter or Mowday", "other", "Porter or Mowday", "Porter or Mowday",     "Porter or Mowday", "other", "other", "other", "other", "Porter or Mowday",     "Porter or Mowday", "Meyer", "Porter or Mowday", "Porter or Mowday",     "other", "Porter or Mowday", "Porter or Mowday", "Porter or Mowday",     "Porter or Mowday", "Porter or Mowday", "Porter or Mowday",     "Porter or Mowday", "Meyer", "Meyer", "Porter or Mowday",     "Porter or Mowday", "Porter or Mowday", "Porter or Mowday",     "Meyer", "Meyer", "Porter or Mowday", "Porter or Mowday",     "Meyer", "other", "Porter or Mowday", "Porter or Mowday",     "Porter or Mowday", "Porter or Mowday", "Porter or Mowday",     "Porter or Mowday", "Porter or Mowday", "other", "Porter or Mowday",     "Porter or Mowday", "Meyer", "Porter or Mowday", "Porter or Mowday",     "Meyer", "Porter or Mowday", "Porter or Mowday", "other",     "Porter or Mowday"), OC_alpha = c(0.87, 0.82, 0.83, NA, 0.83,     0.83, 0.87, 0.81, 0.92, 0.86, 0.8, 0.89, 0.84, 0.87, 0.86,     NA, NA, NA, 0.87, 0.88, NA, 0.9, 0.87, 0.8, 0.91, 0.87, 0.87,     0.92, 0.76, NA, 0.75, 0.88, 0.88, 0.9, 0.87, 0.87, 0.87,     0.78, 0.72, 0.85, 0.89, NA, 0.88, 0.89, 0.89, 0.89, 0.92,     0.92, 0.93, 0.87, 0.77, 0.83, 0.79, 0.76, 0.88, 0.85, 0.66,     0.92, 0.88, 0.72, 0.81), JP_alpha = c(0.89, NA, 0.76, 1,     NA, NA, 0.8, 0.91, 0.81, 0.9, NA, 0.81, 0.9, 0.93, 0.85,     NA, NA, NA, NA, NA, NA, 0.84, 0.92, NA, 0.78, 0.98, 0.81,     0.91, 0.91, NA, 0.75, NA, NA, 0.84, 0.87, 0.89, 0.89, 0.93,     0.87, NA, NA, NA, 0.85, NA, 0.82, NA, 0.91, 0.91, 0.93, 0.95,     NA, 0.74, 0.84, NA, NA, 0.93, 0.84, NA, NA, NA, 0.8), r = c(0.02,     0.12, 0.09, 0.2, 0.08, 0.04, 0.15, 0.45, 0.24, 0.23, 0.2,     0.23, 0.3, 0.32, 0.42, 0.04, 0.01, 0.15, 0.06, 0.14, -0.01,     0.35, 0.03, -0.05, 0.17, 0.26, 0.04, 0.25, 0.06, 0.09, 0.13,     0.3, -0.16, 0.35, 0.13, 0.14, 0.19, 0.34, -0.03, 0.3, 0.35,     0.2, 0.05, 0.17, -0.06, 0.11, 0.52, 0.52, 0.34, 0.23, 0.2,     0.26, 0.08, 0.06, 0.05, 0.62, 0.49, 0.19, 0.09, 0.05, 0.28    ), r_v = c(0.00558212379888268, 0.00418710068965517, 0.001756902875,     0.00509171270718232, 0.00632846769230769, 0.005537792, 0.00377670454545455,     0.000805071202531646, 0.00407393467889908, 0.0040772655,     0.0079448275862069, 0.00411467160550459, 0.00376409090909091,     0.00516465230769231, 0.00837428345679012, 0.00810408585365853,     0.021734782826087, 0.00111105377906977, 0.0019390878125,     0.00558828, 0.0126556963291139, 0.00520274493243243, 0.00189772017110266,     0.0085776400862069, 0.00408240350649351, 0.007244748, 0.00476939023923445,     0.00582057119205298, 0.00186618977443609, 0.00221093395505618,     0.00313794029220779, 0.0133564516129032, 0.0206403339130435,     0.009625078125, 0.00310767077170418, 0.00143033357142857,     0.016019020862069, 0.00282369444043321, 0.0153569355384615,     0.00269739413680782, 0.00570375, 0.0236307692307692, 0.00458528225806452,     0.00812961387931034, 0.00528092, 0.0101661084375, 0.00691319688311688,     0.00700416, 0.00507898285714286, 0.0067954425, 0.00280975609756098,     0.00167832, 0.00261867628647215, 0.00910837577981651, 0.00260472840314136,     0.00445839247058823, 0.012832178, 0.010323369, 0.00324708122112211,     0.01776796875, 0.00197522455813953)), means = NA_real_, type = "raw",         numObs = 61, observedStats = list(), .isSorted = FALSE,         .needSort = TRUE, .parallel = TRUE, .noExoOptimize = TRUE,         primaryKey = NA_character_, weight = NA_character_, frequency = NA_character_,         minVariance = 1.49011611938477e-08, algebra = character(0),         warnNPDacov = TRUE, exoFree = NULL, naAction = "pass",         verbose = 0L, name = "data"), submodels = list(), expectation = new("MxExpectationRAM",         A = "Amatrix", S = "Sfull", F = "Fmatrix", M = "Mmatrix",         thresholds = NA_character_, dims = c("r", "JP_alpha",         "fy", "fx"), usePPML = FALSE, ppmlData = NULL, UnfilteredExpCov = NA,         numStats = numeric(0), between = NULL, isProductNode = NULL,         verbose = 0L, .rampartCycleLimit = NA_integer_, .rampartUnitLimit = NA_integer_,         .useSufficientSets = TRUE, .forceSingleGroup = FALSE,         .analyzeDefVars = TRUE, .maxDebugGroups = 0L, .optimizeMean = 2L,         .useSparse = NA, expectedCovariance = NULL, expectedMean = NULL,         threshnames = c("r", "JP_alpha", "fy", "fx"), discrete = NA_character_,         discreteSpec = NULL, .discreteCheckCount = TRUE, data = NA_integer_,         dataColumns = integer(0), dataColumnNames = NULL, .runDims = character(0),         output = list(), debug = list(), name = "expectation"),     fitfunction = new("MxFitFunctionML", fellner = NA, verbose = 0L,         profileOut = character(0), rowwiseParallel = NA, jointConditionOn = "auto",         components = character(0), info = list(), dependencies = integer(0),         expectation = integer(0), vector = FALSE, rowDiagnostics = FALSE,         result = numeric(0), name = "fitfunction"), compute = NULL,     independent = FALSE, options = list(), output = list(), runstate = list(),     .newobjects = FALSE, .resetdata = FALSE, .wasRun = FALSE,     .modifiedSinceRun = TRUE, .version = "2.18.1"), intervals = FALSE,     suppressWarnings = TRUE, silent = TRUE)
   3: do.call(mxRun, c(list(mx.model, intervals = intervals, suppressWarnings = suppressWarnings,     silent = silent), mxRun.Args))
   4: create.mxModel(RAM = RAM1, data = Jaramillo05)
   5: eval(code, test_env)
   6: eval(code, test_env)
   7: 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)
   8: doTryCatch(return(expr), name, parentenv, handler)
   9: tryCatchOne(expr, names, parentenv, handlers[[1L]])
  10: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
  11: doTryCatch(return(expr), name, parentenv, handler)
  12: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]),     names[nh], parentenv, handlers[[nh]])
  13: tryCatchList(expr, classes, parentenv, handlers)
  14: 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) {    })
  15: test_code(desc, code, env = parent.frame(), reporter = reporter)
  16: test_that("metaFIML() works correctly", {    fit1a <- metaFIML(y = r, v = r_v, x = JP_alpha, data = Jaramillo05)    m1 <- "fy =~ 1*r\n           r ~~ data.r_v*r\n           fx =~ 1*JP_alpha\n           JP_alpha ~~ 0*JP_alpha\n           fy ~ Slope1_1*fx\n           fy ~~ Tau2_1_1*fy\n           fx ~~ CovX1_X1*fx\n           fx ~ MeanX1*1\n           fy ~ Intercept1*1"    RAM1 <- lavaan2RAM(m1, obs.variables = c("r", "JP_alpha"),         std.lv = FALSE)    fit1b <- create.mxModel(RAM = RAM1, data = Jaramillo05)    coef1a <- coef(fit1a)    names1 <- names(coef1a)    coef1b <- coef(fit1b)[names1]    tolerance <- 0.001    expect_equal(coef1a, coef1b, tolerance = tolerance)    expect_equal(vcov(fit1a), vcov(fit1b)[names1, names1], tolerance = tolerance)    expect_equal(fit1a$mx.fit$output$Minus2LogLikelihood, fit1b$output$Minus2LogLikelihood)    fit2a <- metaFIML(y = r, v = r_v, x = JP_alpha, av = IDV,         data = Jaramillo05)    m2 <- "fy =~ 1*r\n           r ~~ data.r_v*r\n           fx =~ 1*JP_alpha\n           JP_alpha ~~ 0*JP_alpha\n           fy ~ Slope1_1*fx\n           fy ~~ Tau2_1_1*fy\n           fx ~~ CovX1_X1*fx\n           fx ~ MeanX1*1\n           fy ~ Intercept1*1\n\n           fz =~ 1*IDV\n           IDV ~~ 0*IDV\n           fz ~ MeanX2*1\n           fz ~~ CovX2_X2*fz + start(818)*fz\n           fx ~~ CovX2_X1*fz\n           fy ~~ CovX2_Y1*fz"    RAM2 <- lavaan2RAM(m2, obs.variables = c("r", "JP_alpha",         "IDV"), std.lv = FALSE)    fit2b <- create.mxModel(RAM = RAM2, data = Jaramillo05)    coef2a <- coef(fit2a)    names2 <- names(coef2a)    coef2b <- coef(fit2b)[names2]    expect_equal(coef2a, coef2b, tolerance = tolerance)    v_fit2a <- vcov(fit2a)[-4, -4]    v_fit2b <- vcov(fit2b)[names2, names2][-4, -4]    expect_equal(v_fit2a, v_fit2b, tolerance = tolerance)    expect_equal(fit2a$mx.fit$output$Minus2LogLikelihood, fit2b$output$Minus2LogLikelihood)    wvs94a$gnp <- scale(wvs94a$gnp)    fit3a <- metaFIML(y = cbind(lifesat, lifecon), v = cbind(lifesat_var,         inter_cov, lifecon_var), x = gnp, data = wvs94a)    m3 <- "fy1 =~ 1*lifesat\n           lifesat ~~ data.lifesat_var*lifesat\n           fy2 =~ 1*lifecon\n           lifecon ~~ data.lifecon_var*lifecon\n           lifesat ~~ data.inter_cov*lifecon\n\n           fx =~ 1*gnp\n           gnp ~~ 0*gnp\n           fy1 ~ Slope1_1*fx\n           fy2 ~ Slope2_1*fx\n\n           fy1 ~~ Tau2_1_1*fy1\n           fy2 ~~ Tau2_2_2*fy2\n           fy1 ~~ Tau2_2_1*fy2\n           fx ~~ CovX1_X1*fx\n           fx ~ MeanX1*1\n           fy1 ~ Intercept1*1\n           fy2 ~ Intercept2*1"    RAM3 <- lavaan2RAM(m3, obs.variables = c("lifesat", "lifecon",         "gnp"), std.lv = FALSE)    fit3b <- create.mxModel(RAM = RAM3, data = wvs94a)    coef3a <- coef(fit3a)    names3 <- names(coef3a)    coef3b <- coef(fit3b)[names3]    expect_equal(coef3a, coef3b, tolerance = tolerance)    expect_equal(vcov(fit3a), vcov(fit3b)[names3, names3], tolerance = tolerance)    expect_equal(fit3a$mx.fit$output$Minus2LogLikelihood, fit3b$output$Minus2LogLikelihood)})
  17: eval(code, test_env)
  18: eval(code, test_env)
  19: 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)
  20: doTryCatch(return(expr), name, parentenv, handler)
  21: tryCatchOne(expr, names, parentenv, handlers[[1L]])
  22: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
  23: doTryCatch(return(expr), name, parentenv, handler)
  24: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]),     names[nh], parentenv, handlers[[nh]])
  25: tryCatchList(expr, classes, parentenv, handlers)
  26: 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) {    })
  27: test_code(NULL, exprs, env)
  28: source_file(path, child_env(env), wrap = wrap)
  29: FUN(X[[i]], ...)
  30: lapply(test_paths, test_one_file, env = env, wrap = wrap)
  31: force(code)
  32: doWithOneRestart(return(expr), restart)
  33: withOneRestart(expr, restarts[[1L]])
  34: withRestarts(testthat_abort_reporter = function() NULL, force(code))
  35: with_reporter(reporters$multi, lapply(test_paths, test_one_file,     env = env, wrap = wrap))
  36: test_files(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)
  37: 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)
  38: test_dir("testthat", package = package, reporter = reporter,     ..., load_package = "installed")
  39: test_check("metaSEM")
  An irrecoverable exception occurred. R is aborting now ...