context("joinerml") skip_on_cran() # Matrix ABI version may differ (#1204) skip_if(paste0(R.Version()[c("major", "minor")], collapse = ".") < "4.4.0") skip_if_not_installed("modeltests") library(modeltests) skip_if_not_installed("joineRML") library(joineRML) # NOTE: the models used in these tests are created in # `data-raw/fit_and_save_long_running_models.R`, and then are saved to # `R/sysdata.rda` hvd <- heart.valve %>% dplyr::filter(!is.na(log.grad), !is.na(log.lvmi), num <= 50) test_that("mjoint tidier arguments", { check_arguments(tidy.mjoint) check_arguments(glance.mjoint) check_arguments(augment.mjoint) }) test_that("tidy.mjoint", { td <- tidy(mjoint_fit) tds <- tidy(mjoint_fit, component = "survival") tdl <- tidy(mjoint_fit, component = "longitudinal") tdsbs <- tidy( mjoint_fit, component = "survival", boot_se = mjoint_fit_bs_se ) tdlbs <- tidy( mjoint_fit, component = "longitudinal", boot_se = mjoint_fit_bs_se ) check_tidy_output(td) check_tidy_output(tds) check_tidy_output(tdl) check_tidy_output(tdsbs) check_tidy_output(tdlbs) td2 <- tidy(mjoint_fit2) td2s <- tidy(mjoint_fit2, component = "survival") td2l <- tidy(mjoint_fit2, component = "longitudinal") td2sbs <- tidy( mjoint_fit2, component = "survival", boot_se = mjoint_fit2_bs_se, conf.int = TRUE ) td2lbs <- tidy( mjoint_fit2, component = "longitudinal", boot_se = mjoint_fit2_bs_se, conf.int = TRUE ) check_tidy_output(td2) check_tidy_output(td2s) check_tidy_output(td2l) check_tidy_output(td2sbs) check_tidy_output(td2lbs) expect_error( tidy(mjoint_fit, boot_se = "cat"), regexp = "`boot_se` argument must be a `bootSE` object." ) }) test_that("glance.mjoint", { gl <- glance(mjoint_fit) gl2 <- glance(mjoint_fit2) check_glance_outputs(gl, strict = FALSE) check_glance_outputs(gl2, strict = FALSE) }) test_that("augment.mjoint", { au <- augment(mjoint_fit) au2 <- augment(mjoint_fit2) expect_error( augment(mjoint_fit, data = NULL), regexp = "`data` argument is NULL. Try specifying `data` manually." ) check_tibble(au, method = "augment", strict = FALSE) check_tibble(au, method = "augment", strict = FALSE) })