Nothing
library(testthat)
library(extraDistr)
# Parameters
test_size <- 10
test_alpha <- 2
test_beta <- 4
test_delta <- 1e-3
test_prec <- 20L
test_tol <- 1e-6
test_max_iter <- 10000L
# Inputs
test_x <- 5
test_val <- pcbbinom(q = test_x, size = test_size, alpha = test_alpha, beta = test_beta)
testthat::test_that(
"dcbbinom",
{
testthat::expect_equal(
dcbbinom(x = test_x, size = test_size, alpha = test_alpha, beta = test_beta),
(pcbbinom(q = test_x + test_delta, size = test_size,
alpha = test_alpha, beta = test_beta, log.p = FALSE) -
pcbbinom(q = test_x - test_delta, size = test_size,
alpha = test_alpha, beta = test_beta, log.p = FALSE)) /
(2 * test_delta)
)
}
)
testthat::test_that(
"pcbbinom",
{
testthat::expect_equal(
test_val,
extraDistr::pbbinom(q = test_x - 1, size = test_size,
alpha = test_alpha, beta = test_beta)
)
}
)
testthat::test_that(
"qcbbinom",
{
testthat::expect_equal(
qcbbinom(p = test_val, size = test_size, alpha = test_alpha, beta = test_beta),
test_x
)
# Verify that p, root_tol and root_max_iter are not changed
test_val_log <- test_val_log_orig <- log(test_val)
test_tol_orig <- test_tol
test_max_iter_orig <- test_max_iter
testthat::expect_equal(
cpp_qcbbinom(p = test_val_log, size = test_size,
alpha = test_alpha, beta = test_beta,
lower_tail = TRUE, log_p = TRUE, prec = test_prec,
tol = test_tol, max_iter = test_max_iter),
test_x
)
testthat::expect_identical(test_val_log, test_val_log_orig)
testthat::expect_identical(test_tol, test_tol_orig)
testthat::expect_identical(test_max_iter, test_max_iter_orig)
}
)
testthat::test_that(
"rcbbinom",
{
testthat::expect_error(
rcbbinom(n = 10L, size = test_size, alpha = test_alpha, beta = test_beta),
NA
)
}
)
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.