test_that("output from ifr_binom_calc matches the expected output", {
k <- ifr_binom_calc(32, 8)
expect_equal(k$n, 32)
expect_equal(k$k, 8)
expect_equal(k$exp_k, 16)
expect_equal(k$obs_p, 0.25)
expect_equal(k$exp_p, 0.5)
expect_equal(k$pval_lower, 0.0035)
expect_equal(k$pval_upper, 0.998949)
k <- ifr_binom_calc(32, 20)
expect_equal(k$n, 32)
expect_equal(k$k, 20)
expect_equal(k$exp_k, 16)
expect_equal(k$obs_p, 0.625)
expect_equal(k$exp_p, 0.5)
expect_equal(k$pval_lower, 0.944908)
expect_equal(k$pval_upper, 0.107664)
})
test_that("ifr_binom_calc throws the appropriate error", {
expect_error(ifr_binom_calc("32", 20), "n must be an integer")
expect_error(ifr_binom_calc(32, "20"), "success must be an integer")
expect_error(ifr_binom_calc(32, 20, "0.5"), "prob must be numeric")
expect_error(ifr_binom_calc(32, 20, 1.5), "prob must be between 0 and 1")
expect_error(ifr_binom_calc(32, 20, -1.5), "prob must be between 0 and 1")
})
mt <- mtcars
mt$vs <- as.factor(mt$vs)
mt$am <- as.factor(mt$am)
test_that("output from ifr_binom_test matches the expected output", {
k <- ifr_binom_test(mt, vs)
expect_equal(k$n, 32)
expect_equal(k$k, 14)
expect_equal(k$exp_k, 16)
expect_equal(k$obs_p, 0.4375)
expect_equal(k$exp_p, 0.5)
expect_equal(k$pval_lower, 0.298307)
expect_equal(k$pval_upper, 0.811457)
})
test_that("ifr_binom_test throws the appropriate error", {
expect_error(ifr_binom_test(mtcars, mpg), "variable must be of type factor")
expect_error(ifr_binom_test(mt, am, "0.5"), "prob must be numeric")
expect_error(ifr_binom_test(mt, am, 1.5), "prob must be between 0 and 1")
expect_error(ifr_binom_test(mt, am, -1.5), "prob must be between 0 and 1")
})
test_that("output from ifr_binom_calc is as expected when k < exp_k", {
expect_snapshot(ifr_binom_calc(32, 8))
})
test_that("output from ifr_binom_calc is as expected when k > exp_k", {
expect_snapshot(ifr_binom_calc(32, 20))
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.