test_that("Identical output as Churches' original function: seiqhrf", { full_params <- set_param(s.num = 1000, nsteps = 10, arec.rate = 0) param <- full_params$param init <- full_params$init #### default functions: initialize.FUN, infection.FUN, recovery.FUN, departures.FUN, arrivals.FUN control1 <- full_params$control ### Churches' original function: control2 <- control1 control2$initialize.FUN <- "initialize.icm" control2$infection.FUN <- "infection.seiqhrf.icm" control2$recovery.FUN <- "progress.seiqhrf.icm" control2$departures.FUN <- "departures.seiqhrf.icm" control2$arrivals.FUN <- "arrivals.seiqhrf.icm" No_seeds <- 10 seed_list <- sample(1:1000, No_seeds) comp <- rep(NA, No_seeds) i <- 1 for(seed in seed_list){ sim1 <- seiqhrf(param, init, control1, seed) sim2 <- seiqhrf(param, init, control2, seed) comp[i] <- identical(sim1, sim2) i <- i + 1 } expect_equal(sum(comp), No_seeds) })