inst/tests/test-cross-corr.R

context("cross_corr")

test_that("1 parameter", {
  
  model <- jags_model(" model { 
                      bLambda ~ dlnorm(0,10^-2) 
                      for (i in 1:length(x)) { 
                      x[i]~dpois(bLambda) 
                      } 
}")
  
  data <- data.frame(x = rpois(100,1))
  analysis <- jags_analysis (model, data, mode = "test")
  
  x <- cross_corr(analysis)
  
  expect_equal(rownames(x), c("bLambda"))
  expect_equal(colnames(x), c("bLambda"))
})

test_that("test multi par", {
  
  model <- jags_model("
                      model {
                      alpha ~ dunif(-20, 20)
                      beta1 ~ dunif(-10, 10)
                      beta2 ~ dunif(-10, 10)
                      beta3 ~ dunif(-10, 10)
                      
                      for (i in 1:length(Year)) {
                      log(eC[i]) <- alpha + beta1 * Year[i] 
                      + beta2 * Year[i]^2 + beta3 * Year[i]^3
                      C[i] ~ dpois(eC[i])
                      }
                      }",
 derived_code = "data{
 for (i in 1:length(Year)) {
 log(prediction[i]) <- alpha + beta1 * Year[i]
 + beta2 * Year[i]^2 + beta3 * Year[i]^3
 }
 }",
select_data = c("C","Year*")
  )

data <- jaggernaut::falcon

data$C <- data$Pairs

analysis <- jags_analysis (model, data, mode = "test")

x <- cross_corr(analysis)

expect_equal(rownames(x), c("alpha", "beta1", "beta2", "beta3"))
expect_equal(colnames(x), c("alpha", "beta1", "beta2", "beta3"))

})
poissonconsulting/jaggernaut documentation built on Feb. 18, 2021, 11:10 p.m.