swh:1:snp:2c68a6c5a8af2f06ac2c0225927f25b54fd1f9d0
Raw File
Tip revision: d73e4a2afcfbd6402c11716877e8f7466f309ef4 authored by Dominique Makowski on 22 October 2020, 13:40:02 UTC
version 0.7.5
Tip revision: d73e4a2
test-si.R
if (requireNamespace("rstanarm", quietly = TRUE)) {
  context("si")

  test_that("si.numeric", {
    set.seed(333)
    prior <- distribution_normal(1000, mean = 0, sd = 1)
    posterior <- distribution_normal(1000, mean = .5, sd = .3)

    res <- si(posterior, prior)
    testthat::expect_equal(res$CI_low, 0.039, tolerance = 0.02)
    testthat::expect_equal(res$CI_high, 1.053, tolerance = 0.02)
    testthat::expect_is(res,c("bayestestR_si"))

    res <- si(posterior, prior, BF = 3)
    testthat::expect_equal(res$CI_low, 0.333, tolerance = 0.02)
    testthat::expect_equal(res$CI_high, 0.759, tolerance = 0.02)

    res <- si(posterior, prior, BF = 100)
    testthat::expect_true(all(is.na(res$CI_low)))
    testthat::expect_true(all(is.na(res$CI_high)))

    res <- si(posterior, prior, BF = c(1/3, 1, 3))
    testthat::expect_equal(res$CI, c(1/3, 1, 3), tolerance = 0.02)
    testthat::expect_equal(res$CI_low, c(-0.119, 0.039, 0.333), tolerance = 0.02)
    testthat::expect_equal(res$CI_high, c(1.213, 1.053, 0.759), tolerance = 0.02)
  })

  test_that("si.rstanarm", {
    testthat::skip_on_cran()

    library(rstanarm)
    contrasts(sleep$group) <- contr.bayes  # See vignette
    stan_model <- stan_lmer(extra ~ group + (1 | ID), data = sleep, refresh = 0)

    set.seed(333)
    stan_model_p <- update(stan_model, prior_PD = TRUE)
    res1 <- si(stan_model, stan_model_p, verbose = FALSE)

    set.seed(333)
    res2 <- si(stan_model, verbose = FALSE)

    testthat::expect_is(res1,c("bayestestR_si"))
    testthat::expect_equal(res1, res2)
  })
}
back to top