Skip to content

Commit

Permalink
Site model has the correct number of distributions depending on the g…
Browse files Browse the repository at this point in the history
…amma site model, progress #50
  • Loading branch information
richelbilderbeek committed Oct 25, 2018
1 parent 89aa46a commit 2221ff4
Show file tree
Hide file tree
Showing 5 changed files with 119 additions and 24 deletions.
19 changes: 14 additions & 5 deletions R/get_gamma_site_model_n_distrs.R
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,25 @@
#' @inheritParams default_params_doc
#' @return the number of distributrion a gamma site model has
#' @examples
#' gamma_site_model <- create_gamma_site_model(prop_invariant = 0.5)
#'
#' gamma_site_model <- create_gamma_site_model()
#' gamma_site_model_n_distrs <- get_gamma_site_model_n_distrs(
#' n_distrs <- get_gamma_site_model_n_distrs(
#' gamma_site_model
#' )
#' testit::assert(gamma_site_model_n_distrs == 1)
#' testit::assert(n_distrs == 0)
#'
#' gamma_site_model <- create_gamma_site_model(
#' gamma_cat_count = 2,
#' gamma_shape_prior_distr = create_exp_distr()
#' )
#' n_distrs <- get_gamma_site_model_n_distrs(gamma_site_model)
#' testit::assert(n_distrs == 1)
#' @author Richel J.C. Bilderbeek
#' @export
get_gamma_site_model_n_distrs <- function(gamma_site_model) {
testit::assert(is_gamma_site_model(gamma_site_model))
1
if (gamma_site_model$gamma_cat_count < 2) {
0
} else {
1
}
}
13 changes: 9 additions & 4 deletions man/get_gamma_site_model_n_distrs.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

37 changes: 34 additions & 3 deletions tests/testthat/test-get_gamma_site_model_n_distrs.R
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,49 @@ context("test-get_gamma_site_model_n_distrs")

test_that("use", {

# All gamme site models have one distribution?
expect_equal(
get_gamma_site_model_n_distrs(
create_gamma_site_model(gamma_cat_count = 0)
),
0
)

expect_equal(
get_gamma_site_model_n_distrs(
create_gamma_site_model(gamma_cat_count = 1)
),
0
)

# 1 distr with 0 params
expect_equal(
get_gamma_site_model_n_distrs(
create_gamma_site_model(
gamma_cat_count = 2,
gamma_shape_prior_distr = create_uniform_distr()
)
),
1
)

# 1 distr with 1 param
expect_equal(
get_gamma_site_model_n_distrs(
create_gamma_site_model(gamma_shape_prior_distr = create_normal_distr())
create_gamma_site_model(
gamma_cat_count = 2,
gamma_shape_prior_distr = create_poisson_distr()
)
),
1
)

# 1 distr with 2 params
expect_equal(
get_gamma_site_model_n_distrs(
create_gamma_site_model(gamma_shape_prior_distr = create_uniform_distr())
create_gamma_site_model(
gamma_cat_count = 2,
gamma_shape_prior_distr = create_normal_distr()
)
),
1
)
Expand Down
65 changes: 56 additions & 9 deletions tests/testthat/test-get_site_model_n_distrs.R
Original file line number Diff line number Diff line change
@@ -1,37 +1,84 @@
context("get_site_model_n_distrs")

test_that("use", {
test_that("use, default gamma site model", {

# gamma_site_model$gamma_shape_prior_distr
# rate_ac_prior_distr
# rate_ag_prior_distr
# rate_at_prior_distr
# rate_cg_prior_distr
# rate_gt_prior_distr
testthat::expect_equal(
beautier:::get_site_model_n_distrs(create_gtr_site_model()),
6
beautier:::get_site_model_n_distrs(
create_gtr_site_model()),
5
)

# gamma_site_model$gamma_shape_prior_distr
# kappa_prior_distr
testthat::expect_equal(
beautier:::get_site_model_n_distrs(create_hky_site_model()),
2
1
)

# gamma_site_model$gamma_shape_prior_distr
# no other distributions
testthat::expect_equal(
beautier:::get_site_model_n_distrs(create_jc69_site_model()),
1
0
)

# gamma_site_model$gamma_shape_prior_distr
# kappa_1_prior_distr
# kappa_2_prior_distr
testthat::expect_equal(
beautier:::get_site_model_n_distrs(create_tn93_site_model()),
2
)
})

test_that("use, gamma site model with 1 distr", {

gamma_site_model <- create_gamma_site_model(
gamma_cat_count = 2,
gamma_shape_prior_distr = create_normal_distr()
)

# rate_ac_prior_distr
# rate_ag_prior_distr
# rate_at_prior_distr
# rate_cg_prior_distr
# rate_gt_prior_distr
# gamma_site_model$gamma_shape_prior_distr
testthat::expect_equal(
beautier:::get_site_model_n_distrs(
create_gtr_site_model(
gamma_site_model = gamma_site_model
)),
6
)

# kappa_prior_distr
# gamma_site_model$gamma_shape_prior_distr
testthat::expect_equal(
beautier:::get_site_model_n_distrs(create_hky_site_model(
gamma_site_model = gamma_site_model
)),
2
)

# only:
# gamma_site_model$gamma_shape_prior_distr
testthat::expect_equal(
beautier:::get_site_model_n_distrs(create_jc69_site_model(
gamma_site_model = gamma_site_model
)),
1
)

# kappa_1_prior_distr
# kappa_2_prior_distr
# gamma_site_model$gamma_shape_prior_distr
testthat::expect_equal(
beautier:::get_site_model_n_distrs(create_tn93_site_model(
gamma_site_model = gamma_site_model
)),
3
)
})
Expand Down
9 changes: 6 additions & 3 deletions tests/testthat/test-get_site_models_n_distrs.R
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,12 @@ context("get_site_models_n_distrs")

test_that("use", {

site_model_0_distrs <- create_jc69_site_model()
site_model_1_distrs <- create_hky_site_model()
site_model_2_distrs <- create_tn93_site_model()
gamma_site_model <- create_gamma_site_model(gamma_cat_count = 2)
testit::assert(get_gamma_site_model_n_distrs(gamma_site_model) == 1)

site_model_0_distrs <- create_jc69_site_model(gamma_site_model = gamma_site_model)
site_model_1_distrs <- create_hky_site_model(gamma_site_model = gamma_site_model)
site_model_2_distrs <- create_tn93_site_model(gamma_site_model = gamma_site_model)

testit::assert(beautier:::get_site_model_n_distrs(site_model_0_distrs) == 1)
testit::assert(beautier:::get_site_model_n_distrs(site_model_1_distrs) == 2)
Expand Down

0 comments on commit 2221ff4

Please sign in to comment.