meghapsimatrix / simhelpers

Helper package to assist in running simulation studies
10 stars 3 forks source link

Ensure `bundle_sim()` works with NULL default arguments. #17

Closed jepusto closed 7 months ago

jepusto commented 7 months ago

Ensure bundle_sim() works with NULL default arguments.


f_G <- rnorm

f_A <- function(x, trim = 0, show = NA) if (is.null(show)) data.frame(y_bar = mean(x, trim = trim)) else "peekaboo!"
simmer_A <- bundle_sim(f_generate = f_G, f_analyze = f_A, seed_name = NULL)
(args_A1 <- formals(simmer_A))
(args_A2 <- c(alist(reps = ), formals(f_G), formals(f_A)[-1]))
identical(args_A2, as.list(args_A1))
setdiff(args_A2, as.list(args_A1))

f_B <- function(x, trim = 0, show = NULL) if (is.null(show)) data.frame(y_bar = mean(x, trim = trim)) else "peekaboo!"
simmer_B <- bundle_sim(f_generate = f_G, f_analyze = f_B, seed_name = NULL)
(args_B1 <- formals(simmer_B))
(args_B2 <- c(alist(reps = ), formals(f_G), formals(f_B)[-1]))
identical(args_B2, as.list(args_B1))
setdiff(args_B2, as.list(args_B1))