tests/testthat/test-compositional-aoi.R

test_that("AOI compositions transform and compare", {
  set.seed(1)
  data <- data.frame(id = 1:30, stem = rexp(30), evidence = rexp(30), options = rexp(30), group = rep(c("A", "B"), each = 15))
  composition <- derive_aoi_composition(data, c("stem", "evidence", "options"), id_cols = c("id", "group"))
  expect_s3_class(composition, "eye_aoi_composition")
  expect_equal(rowSums(composition$proportions), rep(1, 30), tolerance = 1e-8)
  ilr <- transform_aoi_composition(composition, "ilr")
  expect_equal(ncol(ilr$transformed), 2)
  model_data <- data.frame(outcome = rnorm(30))
  model <- fit_aoi_compositional_model(composition, outcome ~ ilr_1, data = model_data)
  expect_s3_class(model, "eye_aoi_composition_model")
  comparison <- compare_aoi_compositions(composition, "group", permutations = 19)
  expect_true(comparison$p_value >= 0 && comparison$p_value <= 1)
  expect_plot_silent(plot_aoi_ternary(composition))
})

Try the eyeprocess package in your browser

Any scripts or data that you put into this service are public.

eyeprocess documentation built on Sept. 28, 2026, 5:08 p.m.