chore: regenerate fixture corpus with the intergovernmental category rows
Picks up pipeline PR #59: summary_categories now carries 66 M/L rows under spend_subtype = intergovernmental (194 -> 260 rows). cog_categories() (R/categories.R) has no item-code prefix filter, so the new IG rows surface immediately as a third spend subtype; this broke test-categories.R:18's closed enumeration. Adjudicated (2026-07-27): this is correct behavior, not a regression -- cog_categories() is a discovery verb documented to surface valid category values, and after Task 3 lands users will see spend_subtype = intergovernmental in cog_spending(expenditure_concept = total) results. Widened the subtype assertion and added positive coverage asserting the intergovernmental subtype and that it reuses existing functional categories (plus Other Education, pipeline #58). R/categories.R itself is unchanged -- its behavior was already right. Suite: PASS 469, FAIL 0 (baseline 467 + widened assertion + 2 new expectations).
This commit is contained in:
@@ -15,7 +15,18 @@ test_that("cog_categories(type = 'spending') returns only expenditure rows", {
|
||||
skip_if_no_corpus()
|
||||
r <- cog_categories(type = "spending")
|
||||
expect_true(all(r$category_type == "expenditure"))
|
||||
expect_true(all(r$subtype %in% c("operations", "capital")))
|
||||
expect_true(all(r$subtype %in% c("operations", "capital", "intergovernmental")))
|
||||
})
|
||||
|
||||
test_that("cog_categories surfaces the intergovernmental spending subtype", {
|
||||
skip_if_no_corpus()
|
||||
r <- cog_categories(type = "spending")
|
||||
expect_true("intergovernmental" %in% r$subtype)
|
||||
# IG rows reuse the existing functional categories -- they add a subtype,
|
||||
# not new category values.
|
||||
ig_cats <- sort(unique(r$category[r$subtype == "intergovernmental"]))
|
||||
direct_cats <- sort(unique(r$category[r$subtype != "intergovernmental"]))
|
||||
expect_true(all(ig_cats %in% c(direct_cats, "Other Education")))
|
||||
})
|
||||
|
||||
test_that("cog_categories(type = 'revenue') returns only revenue rows", {
|
||||
|
||||
Reference in New Issue
Block a user