Nothing
# Unit tests for each function
# Test `is_vector`
test_that("is_vector works as expected", {
expect_true(is_vector(c(1, 2, 3)))
expect_false(is_vector(list(1, 2, 3)))
expect_false(is_vector(matrix(1:4, 2, 2)))
expect_false(is_vector(data.frame(a = 1:3, b = 4:6)))
expect_false(is_vector(NULL))
expect_true(is_vector(NA))
})
# Test `is_numeric_vector`
test_that("is_numeric_vector works as expected", {
expect_true(is_numeric_vector(c(1, 2, 3)))
expect_false(is_numeric_vector(list(1, 2, 3)))
expect_true(is_numeric_vector(1:5))
expect_false(is_numeric_vector("hello"))
expect_false(is_numeric_vector(c(1, 2, "a")))
expect_false(is_numeric_vector(NULL))
})
# Test `is_number`
test_that("is_number works as expected", {
expect_true(is_number(1))
expect_false(is_number(c(1, 2)))
expect_false(is_number("a"))
expect_false(is_number(NULL))
expect_false(is_number(TRUE))
})
# Test `is_character_vector`
test_that("is_character_vector works as expected", {
expect_true(is_character_vector(c("a", "b", "c")))
expect_false(is_character_vector(list("a", "b", "c")))
expect_false(is_character_vector(1:5))
expect_false(is_character_vector(NA))
})
# Test `is_character_vector_or_glue`
test_that("is_character_vector_or_glue works as expected", {
expect_true(is_character_vector_or_glue(c("a", "b", "c")))
expect_false(is_character_vector_or_glue(1:5))
expect_false(is_character_vector_or_glue(NA))
# If `glue` package is available, add tests with glue strings
glue_str <- glue::glue("Hello {1+1}")
expect_true(is_character_vector_or_glue(glue_str))
})
# Test `is_scalar`
test_that("is_scalar works as expected", {
expect_true(is_scalar(1))
expect_false(is_scalar(c(1, 2)))
expect_false(is_scalar(matrix(1:4, 2, 2)))
expect_false(is_scalar(data.frame(a = 1:3, b = 4:6)))
expect_false(is_scalar(NULL))
expect_true(is_scalar(TRUE))
expect_false(is_scalar(list(1)))
})
# Test `is_logical_vector`
test_that("is_logical_vector works as expected", {
expect_true(is_logical_vector(c(TRUE, FALSE, TRUE)))
expect_true(is_logical_vector(NA))
expect_false(is_logical_vector(list(TRUE, FALSE, TRUE)))
expect_false(is_logical_vector(1:5))
expect_false(is_logical_vector("hello"))
})
# Test `is_string`
test_that("is_string works as expected", {
expect_true(is_string("hello"))
expect_false(is_string(c("a", "b")))
expect_false(is_string(1))
expect_false(is_string(NULL))
expect_false(is_string(TRUE))
expect_false(is_string(NA))
})
# Test `is_flag`
test_that("is_flag works as expected", {
expect_true(is_flag(TRUE))
expect_true(is_flag(FALSE))
expect_false(is_flag(c(TRUE, FALSE)))
expect_false(is_flag(1))
expect_false(is_flag("hello"))
expect_false(is_flag(NULL))
})
# Test `is_list`
test_that("is_list works as expected", {
expect_true(is_list(list(1, 2)))
expect_false(is_list(c(1, 2, 3)))
expect_false(is_list(matrix(1:4, 2, 2)))
expect_false(is_list(data.frame(a = 1:3, b = 4:6)))
expect_true(is_list(data.frame(a = 1:3, b = 4:6), include_dataframes = TRUE))
})
# Test `is_reactive` (requires shiny)
test_that("is_reactive works as expected", {
if (requireNamespace("shiny", quietly = TRUE)) {
expect_true(is_reactive(shiny::reactive(1)))
expect_false(is_reactive(1))
expect_false(is_reactive(NULL))
} else {
skip("Shiny package not installed.")
}
})
# Test `is_whole_number`
test_that("is_whole_number works as expected", {
expect_true(is_whole_number(2))
expect_false(is_whole_number(2.5))
expect_true(is_whole_number(0))
expect_true(is_whole_number(-3))
})
# Test `is_connection` (requires DBI)
test_that("is_connection works as expected", {
# conn <- DBI::dbConnect(RSQLite::SQLite(), ":memory:") # We use a mock connection instead since a real one would require more dependencies
conn <- structure(list(), class = c("SQLiteConnection", "DBIConnection"))
expect_true(is_connection(conn))
expect_false(is_connection(NULL))
expect_false(is_connection(1))
})
# Advanced function tests
# Test `is_number_advanced`
test_that("is_number_advanced works as expected", {
expect_true(is_number_advanced(1))
expect_match(is_number_advanced("a"), "is not a {.strong number}", fixed = TRUE)
expect_match(is_number_advanced(c(1, 2)), "is not a {.strong number}", fixed = TRUE)
})
# Test `is_flag_advanced`
test_that("is_flag_advanced works as expected", {
expect_true(is_flag_advanced(TRUE))
expect_match(is_flag_advanced(1), "is not a {.strong flag}", fixed=TRUE)
expect_match(is_flag_advanced(c(TRUE, FALSE)), "is not a {.strong flag}", fixed=TRUE)
})
# Test `is_string_advanced`
test_that("is_string_advanced works as expected", {
expect_true(is_string_advanced("hello"))
expect_match(is_string_advanced(1), "is not a {.strong string}", fixed=TRUE)
expect_match(is_string_advanced(c("a", "b")), "is not a {.strong string}", fixed=TRUE)
})
# Test `is_non_empty_string_advanced`
test_that("is_non_empty_string_advanced works as expected", {
expect_true(is_non_empty_string_advanced("hello"))
expect_match(is_non_empty_string_advanced(1), "is not a {.strong string}", fixed=TRUE)
expect_match(is_non_empty_string_advanced(""), "is an {.strong empty} string", fixed=TRUE)
})
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.