test_that("All modules(MOD) produce the same result as Churches' modules (.seiqhrf.icm)", { param <- param_seiqhrf(arec.rate = 0) init <- init_seiqhrf(s.num = 1000) #### default functions: initialize.FUN, infection.FUN, recovery.FUN, departures.FUN, arrivals.FUN control1 <- control_seiqhrf(nsteps = 10) ### 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 = param, init = init, control = control1, seed) sim2 <- seiqhrf(param = param, init = init, control = control2, seed) comp[i] <- identical(sim1, sim2) i <- i + 1 } expect_equal(sum(comp), No_seeds) })