context("checkConfig test")
test_that("config check fails if module switch is missing", {
cfg <- list(title = "default", gms = list(switch1 = TRUE, switch2 = 1))
expect_error(check_config(cfg, reference_file = cfg,
modulepath = system.file("dummymodel/modules/", package = "gms")),
"Chosen realization .* does not exist for module .*")
})
test_that("config check works if cfg fits to model", {
cfg <- list(title = "default", gms = list(switch1 = TRUE, switch2 = 1, fancymodule = "default",
crazymodule = "simple", Rmodule = "withr"))
x <- check_config(cfg, reference_file = cfg, modulepath = system.file("dummymodel/modules/", package = "gms"))
expect_identical(x, cfg)
})
test_that("config check fails if module realization does not exist", {
cfg <- list(title = "default", gms = list(switch1 = TRUE, switch2 = 1, fancymodule = "hallo", crazymodule = "simple",
Rmodule = "withr"))
expect_error(check_config(cfg, reference_file = cfg,
modulepath = system.file("dummymodel/modules/", package = "gms")),
"Chosen realization \"hallo\" does not exist for module \"fancymodule\"")
})
test_that("config check accepts extras as argument", {
cfg <- list(title = "default", gms = list(switch1 = TRUE, switch2 = 1,
fancymodule = "default", crazymodule = "simple", Rmodule = "withr"))
cfgextra <- list(title = "default", gms = list(switch1 = TRUE, switch2 = 1, fancymodule = "default",
crazymodule = "simple", Rmodule = "withr", extra1 = TRUE), extra2 = TRUE)
expect_warning(check_config(cfgextra, reference_file = cfg,
modulepath = system.file("dummymodel/modules/", package = "gms")),
"Settings are unknown in provided cfg")
expect_silent(x <- check_config(cfgextra, reference_file = cfg,
modulepath = system.file("dummymodel/modules/", package = "gms"),
extras = c("gms$extra1", "extra2")))
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.