library(xpectr)
context("strip()")
test_that("strip() works", {
strings <- c(
"Hello! I am George. \n\rDon't call me Frank!",
" \tAs that, is, not, my, name!",
"", NA, ".!\"'",
"these 2 numbers 4743 and 12378!"
)
expect_equal(
strip(strings),
c("Hello I am George Dont call me Frank",
"As that is not my name", "", NA, "",
"these 2 numbers 4743 and 12378")
)
expect_equal(
strip(strings, remove_spaces = TRUE),
c("HelloIamGeorgeDontcallmeFrank", "Asthatisnotmyname",
"", NA, "","these2numbers4743and12378")
)
expect_equal(
strip(strings, remove_numbers = TRUE),
c("Hello I am George Dont call me Frank",
"As that is not my name", "", NA, "",
"these numbers and")
)
# TODO
# strip(" subscript.\n\033[31mx\033[39m The ")
# errors
expect_error(strip(strings, allow_na = FALSE),
"* Variable 'strings': Contains missing values (element 4).",
fixed = TRUE
)
expect_error(strip(NA, allow_na = FALSE),
" * Variable 'strings': Contains missing values (element 1).",
fixed = TRUE
)
expect_error(strip(NULL),
"* Variable 'strings': Must be of type 'character', not 'NULL'.",
fixed = TRUE
)
expect_error(strip(23),
"* Variable 'strings': Must be of type 'character', not 'double'.",
fixed = TRUE
)
expect_equal(
strip(strings, replacement = " "),
c(
"Hello I am George Don t call me Frank",
"As that is not my name", "", NA, "",
"these 2 numbers 4743 and 12378"
)
)
})
test_that("strip_msg() works", {
the_string <- paste0(
"Hello! I am George. \n\rDon't call me Frank!",
" \tAs that, is, not, my, name!",
"", ".!\"'",
"these 2 numbers 4743 and 12378!"
)
stripped_string <- strip(the_string)
expect_equal(stripped_string,
paste0("Hello I am George Dont call me Frank As that is not my name",
"these 2 numbers 4743 and 12378"))
expect_error(
strip_msg(stop(the_string)),
stripped_string
)
expect_error(
strip_msg(stop(the_string), remove_spaces = TRUE),
strip(the_string, remove_spaces = TRUE)
)
expect_error(
strip_msg(stop(the_string), remove_numbers = TRUE),
strip(the_string, remove_numbers = TRUE)
)
expect_message(
strip_msg(message(the_string)),
stripped_string
)
expect_message(
strip_msg(message(the_string), remove_spaces = TRUE),
strip(the_string, remove_spaces = TRUE)
)
expect_message(
strip_msg(message(the_string), remove_numbers = TRUE),
strip(the_string, remove_numbers = TRUE)
)
expect_warning(
strip_msg(warning(the_string)),
stripped_string
)
expect_warning(
strip_msg(warning(the_string), remove_spaces = TRUE),
strip(the_string, remove_spaces = TRUE)
)
expect_warning(
strip_msg(warning(the_string), remove_numbers = TRUE),
strip(the_string, remove_numbers = TRUE)
)
expect_invisible(strip_msg(NULL))
expect_invisible(strip_msg(NA))
expect_invisible(strip_msg(3))
expect_invisible(strip_msg("hello!"))
# errors
expect_error(strip_msg(strip_msg(stop(the_string), remove_spaces = NULL)),
paste0("1 assertions failed Variable removespaces Must be of type l",
"ogical flag not NULL"),
fixed = TRUE
)
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.