Nothing
library(testthat)
context("Test simple dose adaptations (based on a covariate present in dataset)")
seed <- 1
source(file.path(getwd(), test_path(), "test-utils.R"))
test_that("Dose adaptations based on weight work well", {
model <- model_suite$testing$nonmem$advan4_trans4 %>% disable("IIV")
regFilename <- "dose_adaptation_by_bw"
dataset <- Dataset(2) %>%
add(Bolus(time = seq(0, 6) * 24, amount = 0.5)) %>% # 0.5mg / kg
add(Observations(times = seq(0, 7 * 24, by = 4))) %>%
add(Covariate("WT", c(100, 50))) %>%
add(DoseAdaptation("AMT*WT"))
dataset_regression_test(dataset, model, seed = seed, filename = regFilename)
simulation <- expression(simulate(model = model, dataset = dataset, dest = destEngine, seed = seed))
test <- expression(
output_regression_test(results, output = "CP", filename = regFilename)
)
campsis_test(simulation, test, env = environment())
})
test_that("Dose adaptations preserve specified infusion duration", {
model <- model_suite$testing$nonmem$advan3_trans4 %>% disable("IIV")
regFilename <- "dose_adaptation_by_bw_infusion"
dataset <- Dataset(2) %>%
add(Infusion(time = seq(0, 6) * 24, amount = 0.5, duration = 10)) %>% # 0.5mg/kg, 10 hours
add(Observations(times = seq(0, 7 * 24, by = 4))) %>%
add(Covariate("WT", c(100, 50))) %>%
add(DoseAdaptation("AMT*WT"))
dataset_regression_test(dataset, model, seed = seed, filename = regFilename)
simulation <- expression(simulate(model = model, dataset = dataset, dest = destEngine, seed = seed))
test <- expression(
output_regression_test(results, output = "CP", filename = regFilename)
)
campsis_test(simulation, test, env = environment())
})
test_that("Dose adaptations preserve specified infusion rate", {
model <- model_suite$testing$nonmem$advan3_trans4 %>% disable("IIV")
regFilename <- "dose_adaptation_by_bw_infusion"
subj1 <- Arm(subjects = 1) %>%
add(Infusion(time = seq(0, 6) * 24, amount = 0.5, rate = 5)) %>% # 0.5mg/kg, 50mg/10h=5mg/h
add(Observations(times = seq(0, 7 * 24, by = 4))) %>%
add(Covariate("WT", 100)) %>%
add(DoseAdaptation("AMT*WT"))
subj2 <- Arm(subjects = 1) %>%
add(Infusion(time = seq(0, 6) * 24, amount = 0.5, rate = 2.5)) %>% # 0.5mg/kg, 25mg/10h=2.5mg/h
add(Observations(times = seq(0, 7 * 24, by = 4))) %>%
add(Covariate("WT", 50)) %>%
add(DoseAdaptation("AMT*WT"))
dataset <- Dataset() %>% add(c(subj1, subj2))
simulation <- expression(simulate(model = model, dataset = dataset, dest = destEngine, seed = seed))
test <- expression(
output_regression_test(results, output = "CP", filename = regFilename)
)
campsis_test(simulation, test, env = environment())
})
test_that("Dose adaptations based on weight work well, check argument compartments works as expected", {
model <- model_suite$testing$nonmem$advan4_trans4 %>% disable("IIV")
regFilename <- "dose_adaptation_by_bw"
# Add independant ODE
model <- model %>% add(Ode("A_TEST", "-log(2)/100*A_TEST"))
model <- model %>% update_compartments()
# Dataset with unnamed compartments
times <- seq(0, 7 * 24, by = 4)
dataset <- Dataset(2) %>%
add(Bolus(time = 0, amount = 0.5, compartment = 1, ii = 24, addl = 6)) %>%
add(Bolus(time = 0, amount = 1000, compartment = 5)) %>%
add(Observations(times = times)) %>%
add(Covariate("WT", c(100, 50)))
# Dose adaptation only for compartment 1 (not 5!)
dataset <- dataset %>%
add(DoseAdaptation("AMT*WT", compartments = 1))
# Unnamed compartments
simulation <- expression(simulate(model = model, dataset = dataset, dest = destEngine, seed = seed))
test <- expression(
output_regression_test(results, output = "CP", filename = regFilename),
output_regression_test(results %>% dplyr::filter(TIME != 0), output = "A_TEST", filename = regFilename), # Remove first time (RxODE:0, mrgsolve:1000)
spaghettiPlot(results, "A_TEST", "ID")
)
campsis_test(simulation, test, env = environment())
# Same test but with named compartments
# Dataset with unnamed compartments
times <- seq(0, 7 * 24, by = 4)
dataset <- Dataset(2) %>%
add(Bolus(time = 0, amount = 0.5, compartment = "DEPOT", ii = 24, addl = 6)) %>%
add(Bolus(time = 0, amount = 1000, compartment = "TEST")) %>%
add(Observations(times = times)) %>%
add(Covariate("WT", c(100, 50)))
# Dose adaptation only for compartment 1 (not 5!)
dataset <- dataset %>%
add(DoseAdaptation("AMT*WT", compartments = "DEPOT"))
# Unnamed compartments
simulation <- expression(simulate(model = model, dataset = dataset, dest = destEngine, seed = seed))
test <- expression(
output_regression_test(results, output = "CP", filename = regFilename),
output_regression_test(results %>% dplyr::filter(TIME != 0), output = "A_TEST", filename = regFilename), # Remove first time (RxODE:0, mrgsolve:1000)
spaghettiPlot(results, "A_TEST", "ID")
)
campsis_test(simulation, test, env = environment())
})
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.