tests/testthat/test-clean_name.R

test_that("removes unwanted characters", {
  expect_equal(clean_name("ab`c"), "abc")
  expect_equal(clean_name("ab~c"), "abc")
  expect_equal(clean_name("ab!c"), "abc")
  expect_equal(clean_name("ab@c"), "abc")
  expect_equal(clean_name("ab#c"), "abc")
  expect_equal(clean_name("ab$c"), "abc")
  expect_equal(clean_name("ab%c"), "abc")
  expect_equal(clean_name("ab^c"), "abc")
  expect_equal(clean_name("ab&c"), "abc")
  expect_equal(clean_name("ab_c"), "abc")
  expect_equal(clean_name("ab=c"), "abc")
  expect_equal(clean_name("ab+c"), "abc")
  expect_equal(clean_name("ab[c"), "abc")
  expect_equal(clean_name("ab]c"), "abc")
  expect_equal(clean_name("ab{c"), "abc")
  expect_equal(clean_name("ab}c"), "abc")
  expect_equal(clean_name("ab|c"), "abc")
  expect_equal(clean_name("ab/c"), "abc")
  expect_equal(clean_name("ab\\c"), "abc")
  expect_equal(clean_name("ab?c"), "abc")
  expect_equal(clean_name("ab.c"), "abc")
  expect_equal(clean_name("ab<c"), "abc")
  expect_equal(clean_name("ab>c"), "abc")
  expect_equal(clean_name("ab,c"), "abc")
  expect_equal(clean_name("ab?c"), "abc")
})

test_that("preserves allowed characters", {
  expect_equal(clean_name("ab'c"), "ab'c")
  expect_equal(clean_name("ab-c"), "ab-c")
  expect_equal(clean_name("ab(c)"), "ab(c)")
  expect_equal(clean_name('ab"c'), 'ab"c')
})

test_that("handles whitespace correctly", {
  expect_equal(clean_name("  abc  "), "abc")
  expect_equal(clean_name("ab  c"), "ab c")
  expect_equal(clean_name("ab\tc"), "ab c")
})

test_that("works with vectors", {
  expect_equal(clean_name(c("ab*c", "xy_z")), c("abc", "xyz"))
  expect_equal(clean_name(c("  a  ", "  b  ")), c("a", "b"))
})

test_that("handles NA correctly", {
  expect_equal(clean_name(NA_character_), NA_character_)
  expect_equal(clean_name(c("abc", NA, "xyz")), c("abc", NA, "xyz"))
})

test_that("throws error for invalid input type", {
  expect_error(clean_name(1), class = "clean_name_invalid_type")
  expect_error(clean_name(TRUE), class = "clean_name_invalid_type")
  expect_error(clean_name(list("a", "b")), class = "clean_name_invalid_type")
})

Try the il.cbs.muni package in your browser

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

il.cbs.muni documentation built on Feb. 13, 2026, 1:06 a.m.