Nothing
test_that("otel_collect_is_enabled works with valid collect levels", {
# Test with default "all" option
expect_true(otel_collect_is_enabled("none"))
expect_true(otel_collect_is_enabled("session"))
expect_true(otel_collect_is_enabled("reactive_update"))
expect_true(otel_collect_is_enabled("reactivity"))
expect_true(otel_collect_is_enabled("all"))
})
test_that("otel_collect_is_enabled respects hierarchy with 'none' option", {
# With "none" option, nothing should be enabled
expect_false(otel_collect_is_enabled("session", "none"))
expect_false(otel_collect_is_enabled("reactive_update", "none"))
expect_false(otel_collect_is_enabled("reactivity", "none"))
expect_false(otel_collect_is_enabled("all", "none"))
expect_true(otel_collect_is_enabled("none", "none"))
})
test_that("otel_collect_is_enabled respects hierarchy with 'session' option", {
# With "session" option, only "none" and "session" should be enabled
expect_true(otel_collect_is_enabled("none", "session"))
expect_true(otel_collect_is_enabled("session", "session"))
expect_false(otel_collect_is_enabled("reactive_update", "session"))
expect_false(otel_collect_is_enabled("reactivity", "session"))
expect_false(otel_collect_is_enabled("all", "session"))
})
test_that("otel_collect_is_enabled respects hierarchy with 'reactive_update' option", {
# With "reactive_update" option, "none", "session", and "reactive_update" should be enabled
expect_true(otel_collect_is_enabled("none", "reactive_update"))
expect_true(otel_collect_is_enabled("session", "reactive_update"))
expect_true(otel_collect_is_enabled("reactive_update", "reactive_update"))
expect_false(otel_collect_is_enabled("reactivity", "reactive_update"))
expect_false(otel_collect_is_enabled("all", "reactive_update"))
})
test_that("otel_collect_is_enabled respects hierarchy with 'reactivity' option", {
# With "reactivity" option, all except "all" should be enabled
expect_true(otel_collect_is_enabled("none", "reactivity"))
expect_true(otel_collect_is_enabled("session", "reactivity"))
expect_true(otel_collect_is_enabled("reactive_update", "reactivity"))
expect_true(otel_collect_is_enabled("reactivity", "reactivity"))
expect_false(otel_collect_is_enabled("all", "reactivity"))
})
test_that("otel_collect_is_enabled respects hierarchy with 'all' option", {
# With "all" option (default), everything should be enabled
expect_true(otel_collect_is_enabled("none", "all"))
expect_true(otel_collect_is_enabled("session", "all"))
expect_true(otel_collect_is_enabled("reactive_update", "all"))
expect_true(otel_collect_is_enabled("reactivity", "all"))
expect_true(otel_collect_is_enabled("all", "all"))
})
test_that("otel_collect_is_enabled uses shiny.otel.collect option", {
# Test that option is respected
withr::with_options(
list(shiny.otel.collect = "session"),
{
expect_true(otel_collect_is_enabled("none"))
expect_true(otel_collect_is_enabled("session"))
expect_false(otel_collect_is_enabled("reactive_update"))
}
)
withr::with_options(
list(shiny.otel.collect = "reactivity"),
{
expect_true(otel_collect_is_enabled("reactive_update"))
expect_true(otel_collect_is_enabled("reactivity"))
expect_false(otel_collect_is_enabled("all"))
}
)
})
test_that("otel_collect_is_enabled falls back to SHINY_OTEL_COLLECT env var", {
# Remove option to test env var fallback
withr::local_options(list(shiny.otel.collect = NULL))
# Test env var is respected
withr::local_envvar(list(SHINY_OTEL_COLLECT = "session"))
expect_true(otel_collect_is_enabled("none"))
expect_true(otel_collect_is_enabled("session"))
expect_false(otel_collect_is_enabled("reactive_update"))
withr::local_envvar(list(SHINY_OTEL_COLLECT = "none"))
expect_true(otel_collect_is_enabled("none"))
expect_false(otel_collect_is_enabled("session"))
})
test_that("otel_collect_is_enabled option takes precedence over env var", {
# Set conflicting option and env var
withr::local_options(shiny.otel.collect = "session")
withr::local_envvar(SHINY_OTEL_COLLECT = "all")
# Option should take precedence
expect_true(otel_collect_is_enabled("session"))
expect_false(otel_collect_is_enabled("reactive_update"))
})
test_that("otel_collect_is_enabled defaults to 'all' when no option or env var", {
# Remove both option and env var
withr::local_options(list(shiny.otel.collect = NULL))
withr::local_envvar(list(SHINY_OTEL_COLLECT = NA))
# Should default to "all"
expect_true(otel_collect_is_enabled("all"))
expect_true(otel_collect_is_enabled("reactivity"))
expect_true(otel_collect_is_enabled("none"))
})
# Tests for as_otel_collect()
test_that("as_otel_collect validates and returns valid collect levels", {
expect_equal(as_otel_collect("none"), "none")
expect_equal(as_otel_collect("session"), "session")
expect_equal(as_otel_collect("reactive_update"), "reactive_update")
expect_equal(as_otel_collect("reactivity"), "reactivity")
expect_equal(as_otel_collect("all"), "all")
})
test_that("as_otel_collect uses default value", {
expect_equal(as_otel_collect(), "all")
})
test_that("as_otel_collect errors on invalid input types", {
expect_error(as_otel_collect(123), "`collect` must be a character vector.")
expect_error(as_otel_collect(NULL), "`collect` must be a character vector.")
expect_error(as_otel_collect(TRUE), "`collect` must be a character vector.")
expect_error(as_otel_collect(list("all")), "`collect` must be a character vector.")
})
test_that("as_otel_collect errors on invalid collect levels", {
expect_error(as_otel_collect("invalid"), "'arg' should be one of")
expect_error(as_otel_collect("unknown"), "'arg' should be one of")
expect_error(as_otel_collect(""), "'arg' should be one of")
})
test_that("as_otel_collect errors on multiple values", {
# match.arg with several.ok = FALSE should error on multiple values
expect_error(as_otel_collect(c("all", "none")), "'arg' must be of length 1")
expect_error(as_otel_collect(c("session", "reactivity")), "'arg' must be of length 1")
})
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.