test_that("use", {
if (!beautier::is_on_ci()) return()
beast2_folder <- tempfile(pattern = "mcbette_")
# Create the tree states
state_neither <- list(beast2_installed = FALSE, ns_installed = FALSE)
state_beast2 <- list(beast2_installed = TRUE, ns_installed = FALSE)
state_beast2_ns <- list(beast2_installed = TRUE, ns_installed = TRUE)
expect_silent(mcbette::check_mcbette_state(state_neither))
expect_silent(mcbette::check_mcbette_state(state_beast2))
expect_silent(mcbette::check_mcbette_state(state_beast2_ns))
# 1. Check for BEAST2 and BEAST2 NS package installed
set_mcbette_state(
mcbette_state = state_beast2_ns,
beast2_folder = beast2_folder,
verbose = TRUE
)
expect_true(beastier::is_beast2_installed(folder_name = beast2_folder))
expect_true(
mauricer::is_beast2_ns_pkg_installed(beast2_folder = beast2_folder)
)
expect_silent(
mcbette::check_beast2_ns_pkg(
beast2_bin_path = beastier::get_default_beast2_bin_path(
beast2_folder = beast2_folder
)
)
)
# 2. Check for BEAST2 installed
# Note that this function changes the global state as well!
set_mcbette_state(
mcbette_state = state_beast2,
beast2_folder = beast2_folder,
verbose = TRUE
)
# The global state is changed and will not have NS installed as well
expect_true(beastier::is_beast2_installed(folder_name = beast2_folder))
expect_true(
!mauricer::is_beast2_ns_pkg_installed(beast2_folder = beast2_folder)
)
expect_error(
mcbette::check_beast2_ns_pkg(
beast2_bin_path = beastier::get_default_beast2_bin_path(
beast2_folder = beast2_folder
)
),
"BEAST2 'NS' package not installed"
)
unlink(beast2_folder, recursive = TRUE)
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.