test_that("generate.data outputs correct dimensions based on theoretical matrix design", { n_samples <- 150 p_covariates <- 8 dat <- generate.data(n = n_samples, p = p_covariates) expect_equal(nrow(dat$X), n_samples) expect_equal(ncol(dat$X), p_covariates) expect_equal(length(dat$true.beta), p_covariates) expect_equal(length(dat$y), n_samples) expect_equal(length(dat$A), n_samples) }) test_that("simml model fitting returns a valid gam object", { dat <- generate.data(n = 100, p = 5) model <- simml(y = dat$y, A = dat$A, X = dat$X) expect_true(!is.null(model$g.fit)) expect_s3_class(model$g.fit, "gam") expect_equal(length(model$beta.coef), 5) })