Nothing
## --testing formals: formula & data -------------------------------------------
test_that("Formals checking: formula", {
data <- data.frame(
y = runif(20),
treat2 = c(runif(19), NA),
group = rep(c(TRUE, FALSE), 10),
sex = rep(c("M", "F", "F", "M"), 5)
)
treat <- rep(c(0, 1), each = 10)
treat_fail <- c(rep(c(0, 1), 9), c(NA, NA))
pred <- runif(20)
pred_fail <- runif(21)
expect_error(estimate_gps(), regexp = "missing")
expect_error(estimate_gps(NULL), regexp = "treatment")
expect_error(estimate_gps(treat ~ pred_fail), regexp = "samples")
expect_error(estimate_gps(treat_fail ~ pred), regexp = "NA")
expect_warning(estimate_gps(data$y ~ data$group))
expect_no_error(estimate_gps(treat ~ pred))
})
## --testing formals: method, ref, logicals-------------------------------------
test_that("Formals checking: method, ref, logicals", {
data <- data.frame(
treat = rep(c(1, 2, 3, 4, 5), 20),
y = rep(c(TRUE, FALSE), 10),
pred = runif(20)
)
# method
expect_error(estimate_gps(y ~ pred, data, method = c()), regexp = "string")
expect_error(estimate_gps(y ~ pred, data, method = "error"),
regexp = "method"
)
expect_no_error(estimate_gps(y ~ pred, data, method = NULL))
expect_no_error(estimate_gps(y ~ pred, data, method = "vglm"))
# ref
expect_error(estimate_gps(y ~ pred, data, method = NULL, reference = TRUE),
regexp = "reference"
)
expect_error(estimate_gps(y ~ pred, data, method = NULL, reference = "FAIL"),
regexp = "unique"
)
expect_warning(estimate_gps(treat ~ pred, data,
method = "multinom",
reference = "1",
ordinal_treat = c(1, 3, 2, 5, 4)
))
expect_no_error(estimate_gps(y ~ pred, data, method = NULL, reference = NULL))
expect_no_error(estimate_gps(y ~ pred, data,
method = "multinom",
reference = "TRUE"
))
# logicals
expect_error(estimate_gps(y ~ pred, data, fit_object = "fail"),
regexp = "flag"
)
expect_output(estimate_gps(y ~ pred, data, verbose_output = TRUE))
expect_no_error(estimate_gps(y ~ pred, data, fit_object = TRUE))
})
## --testing formals: missing, by-----------------------------------------------
test_that("Formals checking: missing and by", {
data <- data.frame(
treat = rep(c("A", "B", "C"), 7),
y = runif(21),
group = rep(c(TRUE, FALSE, TRUE), 7),
sex = c(rep(c("M", "F", "F", "M"), 5), "M")
)
expect_no_error(estimate_gps(treat ~ y, data,
method = "multinom",
by = "sex"
))
expect_no_error(estimate_gps(treat ~ y, data,
method = "vglm",
by = "sex"
))
expect_error(estimate_gps(treat ~ y, data, method = "vglm", by = "abc"),
regexp = "stratify"
)
})
## --testing formals: link------------------------------------------------------
test_that("Formals checking: link", {
data <- data.frame(
treat = rep(c("A", "B", "C"), 7),
pred = runif(21)
)
expect_error(
estimate_gps(treat ~ pred, data,
method = "multinom",
link = list()
),
regexp = "string"
)
expect_error(
estimate_gps(treat ~ pred, data,
method = "multinom",
link = "fail_link"
),
regexp = "link"
)
expect_no_error(estimate_gps(treat ~ pred, data,
method = "multinom",
link = "generalized_logit"
))
})
## --testing formals: ordinal_treat---------------------------------------------
test_that("Formals checking: ordinal_treat", {
data <- data.frame(
treat = rep(c(1, 2, 3, 4, 5), 20),
pred = runif(100)
)
data$treat <- factor(data$treat, levels = c(1, 2, 3, 4, 5), ordered = TRUE)
expect_error(
estimate_gps(treat ~ pred, data,
method = "multinom",
ordinal_treat = list(1)
),
regexp = "atomic"
)
expect_error(
estimate_gps(treat ~ pred, data,
method = "multinom",
ordinal_treat = c(1, 2, 3)
),
regexp = "levels"
)
expect_no_error(estimate_gps(treat ~ pred, data,
method = "multinom",
ordinal_treat = c(1, 3, 2, 5, 4)
))
})
## --testing formals: subset----------------------------------------------------
test_that("Formals checking: subset", {
data <- data.frame(
treat = rep(c(1, 2, 3, 4, 5), 20),
pred = runif(100),
subset_pass = rep(c(TRUE, FALSE), 50),
subset_fail = rep(10, 100)
)
expect_error(
estimate_gps(treat ~ pred, data,
method = "multinom",
subset = list()
),
regexp = "string"
)
expect_error(
estimate_gps(treat ~ pred, data,
method = "multinom",
subset = "some_col"
),
regexp = "provided dataset"
)
expect_error(
estimate_gps(treat ~ pred, data,
method = "multinom",
subset = "subset_fail"
),
regexp = "logical values"
)
expect_no_error(estimate_gps(treat ~ pred, data,
method = "multinom",
subset = "subset_pass"
))
})
## --testing methods and scenarios----------------------------------------------
test_that("estimate_gps: methods and scenarios", {
data <- data.frame(
treat = rep(c(1, 2, 3, 4, 5), 20),
treat_fold = factor(rep(c(1, 2, 3, 4, 5), 20),
ordered = TRUE
),
treat_bin_log = rep(c(TRUE, FALSE), 50),
treat_bin_char = rep(c("A", "B"), 50),
pred = runif(100),
subset_pass = rep(c(TRUE, FALSE), 50),
subset_fail = rep(10, 100)
)
expect_no_error(estimate_gps(treat ~ pred, data, method = "multinom"))
expect_no_error(estimate_gps(treat ~ pred, data, method = "vglm"))
expect_no_error(estimate_gps(treat ~ pred, data, method = "brglm2"))
expect_no_error(estimate_gps(treat ~ pred, data, method = "mblogit"))
expect_error(estimate_gps(treat_fold ~ pred, data, method = "polr"),
regexp = "ordered factor"
)
})
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.