library(testthat)
context("Showing uncertainty on parameters works as expected")
test_that("Showing uncertainty in the console works as expected", {
# This model has a variance-covariance matrix
model <- model_suite$testing$other$`2cpt_zo_allo_metab_effect_on_cl`
expect_true(any(grepl(pattern="Variance-covariance matrix available", x=capture.output(show(model)))))
expect_true(any(grepl(pattern="se\\s+rse%", x=capture.output(show(model@parameters %>% select("theta"))))))
expect_true(any(grepl(pattern="se\\s+rse%", x=capture.output(show(model@parameters %>% select("omega"))))))
expect_false(any(grepl(pattern="se\\s+rse%", x=capture.output(show(model@parameters %>% select("sigma"))))))
# This model doesn't have a variance-covariance matrix
model <- model_suite$testing$pk$`2cpt_zo`
expect_true(any(grepl(pattern="No variance-covariance matrix", x=capture.output(show(model)))))
expect_false(any(grepl(pattern="se\\s+rse%", x=capture.output(show(model)))))
expect_false(any(grepl(pattern="se\\s+rse%", x=capture.output(show(model@parameters %>% select("theta"))))))
})
test_that("Method getUncertainty works as expected", {
# This model has a variance-covariance matrix
model <- model_suite$testing$other$`2cpt_zo_allo_metab_effect_on_cl`
uncertainty <- model %>% getUncertainty() %>% dplyr::mutate_if(.predicate=is.numeric, .funs=~signif(.x, digits=2))
expected <- tibble::tibble(name=c("THETA_METAB_CL", "THETA_DUR", "THETA_VC", "THETA_VP", "THETA_Q", "THETA_CL", "THETA_PROP_RUV", "OMEGA_DUR", "OMEGA_VC", "OMEGA_CL", "SIGMA_RUV_FIX"),
se=c(0.054, 0.022, 0.032, 0.032, 0.02, 0.036, 0.019, 0.0045, 0.0094, 0.0083, NA),
'rse%'=c(17, 5.3, 0.72, 0.6, 1.4, 2.2, 0.96, 33, 19, 19, NA))
expect_equal(uncertainty, expected)
# This model doesn't have a variance-covariance matrix
model <- model_suite$testing$pk$`2cpt_zo`
uncertainty <- model %>% getUncertainty()
expected <- tibble::tibble(name=character(0),
se=numeric(0),
'rse%'=numeric(0))
expect_equal(uncertainty, expected)
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.