Nothing
test_that("find.tau", {
# Regularly spaced intervals give the regular spacing
expect_equal(
find.tau(sort(unique(c(seq(0, 168, 12),
seq(4, 168, 12)))),
tau.choices=NA),
12)
expect_equal(
find.tau(sort(unique(c(seq(0, 168, 12),
seq(4, 168+12, 12)))),
tau.choices=NA),
12)
expect_equal(find.tau(0:10, tau.choices=NA), 1)
# It overrides tau.choices if everything is equally spaced.
expect_equal(find.tau(0:10, tau.choices=c(24, 168)), 1)
expect_equal(find.tau(seq(0, 100, by=10),
tau.choices=c(24, 168)), 10)
expect_equal(find.tau(seq(0, 48, by=24),
tau.choices=c(24, 168)), 24)
# Alternatively spaced intervals give the alternative spacing
expect_equal(find.tau(c(seq(0, 48, by=24),
seq(10, 48, by=24)),
tau.choices=c(24, 168)),
24)
# Smaller interval spacing adheres to tau.choices with unequal
# spacing.
expect_equal(find.tau(c(seq(0, 48, by=12),
seq(10, 48, by=12)),
tau.choices=c(24, 168)),
24)
# It works with more complex spacing and many intervals
expect_equal(find.tau(
sort(unique(c(seq(0, 168, by=24),
seq(4, 168, by=24),
seq(10, 168, by=24)))),
tau.choices=c(24, 168)),
24)
expect_equal(find.tau(c(0, 5, 19, 30) + rep((0:5)*168, each=4),
tau.choices=c(24, 168)),
168)
# If there is only one dosing time, return 0-- regardless of the
# option.
expect_equal(find.tau(rep(5, 5), tau.choices=c(24, 168)), 0)
expect_equal(find.tau(rep(0, 5), tau.choices=c(24, 168)), 0)
# If everything is NA, return NA
expect_equal(find.tau(NA,
tau.choices=c(24, 168)),
NA)
expect_equal(find.tau(rep(NA, 10),
tau.choices=c(24, 168)),
NA)
# If there is no sequence, return NA
expect_equal(find.tau(c(0, 1, 3, 5, 9),
tau.choices=c(24, 168)),
NA)
expect_equal(find.tau(c(0, 1, 3, 5, 9, 24),
tau.choices=NA),
NA)
})
test_that("choose.auc.intervals", {
tmp.single.dose.auc <-
check.interval.specification(
data.frame(start=0,
end=c(24, Inf),
auclast=c(TRUE, FALSE),
aucinf=c(FALSE, TRUE),
half.life=c(FALSE, TRUE),
stringsAsFactors=FALSE))
# Check the inputs
expect_error(choose.auc.intervals(NA, 1, tmp.single.dose.auc),
regexp="time.conc may not have any NA values")
expect_error(choose.auc.intervals(1, NA, tmp.single.dose.auc),
regexp="time.dosing may not have any NA values")
# The below test is a bit of a non-sequeter-- essentially, it just
# needs to return a 0-row data frame.
expect_error(choose.auc.intervals(1, 1,
single.dose.aucs=data.frame()),
regexp="interval specification has no rows")
# It adjusts single dose AUCs by the starting time
expect_equal(choose.auc.intervals(1, 1,
single.dose.aucs=tmp.single.dose.auc),
check.interval.specification(
data.frame(start=1,
end=c(25, Inf),
auclast=c(TRUE, FALSE),
aucinf=c(FALSE, TRUE),
half.life=c(FALSE, TRUE))))
# Find intervals for two doses with PK at both points and one in
# between.
expect_equal(choose.auc.intervals(c(1, 2, 3), c(1, 3),
single.dose.aucs=tmp.single.dose.auc),
check.interval.specification(
data.frame(start=1,
end=3,
cmax=TRUE,
tmax=TRUE,
auclast=TRUE)))
# Find intervals for two doses with PK at both points, one in
# between, and one after asking for AUClast after the second dose
# but no half-life.
expect_equal(choose.auc.intervals(1:5, c(1, 3),
single.dose.aucs=tmp.single.dose.auc),
check.interval.specification(
data.frame(start=c(1, 3),
end=c(3, 5),
cmax=TRUE,
tmax=TRUE,
auclast=TRUE)))
# Find intervals for two doses with PK at both points, one in
# between, and one after asking for AUClast after the second dose
# with half-life.
expect_equal(choose.auc.intervals(1:6, c(1, 3),
single.dose.aucs=tmp.single.dose.auc),
check.interval.specification(
data.frame(start=c(1, 3, 3),
end=c(3, 5, Inf),
auclast=c(TRUE, TRUE, FALSE),
cmax=c(TRUE, TRUE, FALSE),
tmax=c(TRUE, TRUE, FALSE),
half.life=c(FALSE, FALSE, TRUE))))
# Some doses have PK betwen them, some not.
expect_equal(choose.auc.intervals(1:6, c(1, 3, 5, 7, 9),
single.dose.aucs=tmp.single.dose.auc),
check.interval.specification(
data.frame(start=c(1, 3),
end=c(3, 5),
auclast=TRUE,
cmax=TRUE,
tmax=TRUE)))
# Find intervals when some doses do not have AUCs between them
# (pairs of doses with trough but no PK between)
expect_equal(choose.auc.intervals(c(1, 2, 3, 5, 6, 7),
c(1, 3, 5, 7, 9),
single.dose.aucs=tmp.single.dose.auc),
check.interval.specification(
data.frame(start=c(1, 5),
end=c(3, 7),
cmax=TRUE,
tmax=TRUE,
auclast=TRUE)))
# Find intervals for two doses with PK at both points, one in
# between, and one after asking for AUClast after the second dose
# with half-life. Since tau is not detectable, no half-life at the
# end.
expect_equal(choose.auc.intervals(1:6, c(1, 3, 5, 9),
single.dose.aucs=tmp.single.dose.auc),
check.interval.specification(
data.frame(start=c(1, 3),
end=c(3, 5),
auclast=TRUE,
cmax=TRUE,
tmax=TRUE)))
})
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.