test_that("uses tidy_dots", { fs <- list(factor("a"), factor("b")) fab <- factor(c("a", "b")) expect_equal(fct_c(!!!fs), fab) expect_equal(fct_c(fs[[1]], fs[[2]]), fab) }) test_that("all inputs must be factors", { expect_error(fct_c("a"), "must be factors") }) test_that("empty input yields empty factor", { expect_equal(fct_c(), factor()) }) test_that("validates inputs", { expect_snapshot(error = TRUE, { fct_c(1) fct_unify(list(1)) fct_unify(list(factor()), levels = 1) }) })