Nothing
test_that("pk.calc.c0", {
# Input checks
expect_error(
pk.calc.c0(5:1, 4:0),
regexp="Assertion on 'time' failed: Must be sorted."
)
expect_error(pk.calc.c0(5:1, 0:4, time.dose=1:2),
regexp="time.dose must be a scalar")
expect_error(pk.calc.c0(5:1, 0:4, time.dose="1"),
regexp="time.dose must be a number")
expect_error(pk.calc.c0(5:1, 0:4, method="blah"),
regexp="should be one of",
info="method must be valid")
expect_warning(pk.calc.c0(5:1, 0:4, time.dose=30),
regexp="time.dose is after all available data")
# Simple calculations
expect_equal(pk.calc.c0(1:5, 0:4), 1,
info="When there is a nonzero concentration at the default time of dosing")
expect_equal(pk.calc.c0(1:5, 0:4, time.dose=1), 2,
info="When there is a nonzero concentration at the nondefault time of dosing")
# It will fall through to subsequent methods if applicable
expect_equal(pk.calc.c0(c(0, 2, 1, 0.5), 0:3),
pk.calc.c0.method.logslope(c(0, 2, 1, 0.5), 0:3),
info="Falls through to second method")
expect_equal(pk.calc.c0(c(0, 2, 0, 0), 0:3),
pk.calc.c0.method.c1(c(0, 2, 0, 0), 0:3),
info="Falls through to third method")
expect_equal(pk.calc.c0(c(0, 2, 1, 0.5), 0:3, method="c1"),
pk.calc.c0.method.c1(c(0, 2, 1, 0.5), 0:3),
info="Respects method order")
})
test_that("pk.calc.c0.method.logslope", {
expect_equal(pk.calc.c0.method.logslope(c(0, 2, 1, 0.5), 0:3), 4)
expect_equal(pk.calc.c0.method.logslope(c(0, 2, 0, 0), 0:3), NA,
info="returns NA when C2 is 0")
expect_equal(pk.calc.c0.method.logslope(c(0, 2, 0, 0.5), 0:3), NA,
info="returns NA when C2 is 0, even when subsequent are > 0")
expect_equal(pk.calc.c0.method.logslope(c(0, 2, NA, 0.5), 0:3), 4,
info="ignores missing concentrations")
expect_equal(pk.calc.c0.method.logslope(c(0, 2, NA, 0.5), 2:5, time.dose=2), 4,
info="handles nonzero time.dose")
expect_equal(pk.calc.c0.method.logslope(c(2, NA, 0.5), 3:5, time.dose=2), 4,
info="works when time.dose isn't an observed time")
})
test_that("pk.calc.c0.method.c0", {
expect_equal(pk.calc.c0.method.c0(c(0, 2, 1, 0.5), 0:3), NA)
expect_equal(pk.calc.c0.method.c0(c(2, NA, 0.5), 3:5, time.dose=3), 2,
info="works when time.dose matches a nonzero conc")
})
test_that("pk.calc.c0.method.c1", {
expect_equal(pk.calc.c0.method.c1(c(0, 2, 1, 0.5), 0:3), 2)
expect_equal(pk.calc.c0.method.c1(c(2, NA, 0.5), 3:5, time.dose=3), 0.5,
info="works when time.dose matches a nonzero conc and skips over NA")
expect_equal(pk.calc.c0.method.c1(c(2, NA, 0.5), 3:5, time.dose=30), NA,
info="returns NA when time.dose is after the last measurement")
expect_warning(
v1 <- pk.calc.c0.method.c1(rep(NA, 3), 3:5, time.dose=1),
regexp="All concentration data are missing"
)
expect_equal(v1, NA,
info="returns NA when all inputs are NA")
})
test_that("pk.calc.c0.method.set0", {
expect_equal(pk.calc.c0.method.set0(), 0)
expect_equal(pk.calc.c0.method.set0(1, 1), 0)
})
test_that("pk.calc.c0.method.cmin", {
expect_equal(pk.calc.c0.method.cmin(c(0, 2, 1, 0.5), 0:3), 0)
expect_equal(pk.calc.c0.method.cmin(c(2, NA, 0.5), 3:5, time.dose=3), 0.5)
})
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.