Nothing
# test the csregion() with default multinom() gps estimation method
test_that("match_gps checking arguments: csmatrix", {
withr::with_seed(1643741, {
data <- data.frame(
treat = rep(c("A", "B", "C", "D", "E"), 60),
y = rep(c(TRUE, FALSE), 150),
pred = rnorm(300, 30, 8)
)
})
# estimate the gps
gps_matrix <- estimate_gps(treat ~ pred, data, method = "multinom")
gps_matrix_2t <- estimate_gps(treat ~ pred, data[data$treat %in% c("A", "B"), ],
method = "multinom"
)
# drop observations outside the csr
invisible(capture.output(
{
csmatrix <- csregion(gps_matrix)
csmatrix_2t <- csregion(gps_matrix_2t)
},
file = NULL
))
## testing a clear run
withr::with_options(list(warn = -1), {
expect_no_error(match_gps(csmatrix))
## testing class
expect_error(match_gps(data), regexp = "class")
## testing NULL
expect_error(match_gps(NULL), regexp = "missing")
## testing reference
expect_no_error(match_gps(csmatrix, reference = "A"))
expect_error(match_gps(csmatrix, reference = "a"), regexp = "unique")
expect_error(match_gps(csmatrix, reference = FALSE), regexp = "string")
## testing caliper
expect_no_error(match_gps(csmatrix, caliper = 1))
expect_error(match_gps(csmatrix, caliper = -1.1), regexp = "positive")
expect_error(match_gps(csmatrix, caliper = "a"), regexp = "numeric")
expect_error(match_gps(csmatrix, caliper = c(1, 2, 3)), regexp = "length")
## testing ratio
expect_no_error(match_gps(csmatrix, ratio = 1))
expect_error(match_gps(csmatrix, ratio = c(1:4)), regexp = "matches")
expect_error(match_gps(csmatrix, ratio = c(1, 2)), regexp = "atomic")
expect_error(match_gps(csmatrix, ratio = rep("a", 10)), regexp = "integer")
## testing replace
expect_no_error(match_gps(csmatrix, replace = FALSE))
expect_error(match_gps(csmatrix, replace = c(FALSE, TRUE)),
regexp = "length"
)
expect_error(match_gps(csmatrix, replace = rep("a", 10)),
regexp = "logical"
)
expect_no_error(match_gps(csmatrix, replace = rep(TRUE, 4)))
## kmeans.args
expect_no_error(match_gps(csmatrix, kmeans.args = list()))
## kmeans_cluster
expect_error(match_gps(csmatrix, kmeans_cluster = NULL), regexp = "NULL")
expect_error(match_gps(csmatrix, kmeans_cluster = "a"), regexp = "integer")
expect_error(match_gps(csmatrix, kmeans_cluster = rep("a", 10)),
regexp = "atomic"
)
expect_error(match_gps(csmatrix, kmeans_cluster = -1), regexp = "greater")
expect_error(match_gps(csmatrix, kmeans_cluster = rep(1, 10)),
regexp = "equal"
)
expect_no_error(match_gps(csmatrix, kmeans_cluster = 4))
expect_no_error(match_gps(csmatrix, kmeans_cluster = rep(4, 4)))
## matching methods
expect_no_error(match_gps(csmatrix, reference = "A", method = "fullopt"))
## test the two treatments cases for "nnm" and "fullopt"
expect_no_error(match_gps(csmatrix_2t, reference = "A", method = "nnm"))
expect_no_error(match_gps(csmatrix_2t, reference = "A", method = "fullopt"))
})
})
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.