context("Checking values with a white-list")
# data for tests ---------------------------------------------
data(explorer_wl)
data_to_check <- data.frame(
targ = c("13C-Propionyl", "14C-Propionyl"), # not permitted values
isotope = c("13C", "14C"), # not permitted values
curve_plot = c("Propionyl", "Propionyl"),
media = c("LGLI", "RPMI"),
donor = c("Aja", "TJ"),
tx_challenge_abstract = c("13C-ILE", "13C-KIVA")
)
# check_names() --------------------------------------------------
test_that("check_names() works", {
expect_true(check_names(data_to_check, explorer_wl))
expect_false(check_names(data_to_check[-1], explorer_wl))
})
# check_values() --------------------------------------------------
test_that("check_values() works", {
expect_false(check_values(data_to_check, explorer_wl))
expect_true(check_values(data_to_check[-(1:2)], explorer_wl))
expect_type(
check_values(data_to_check, explorer_wl, return_bad = T),
"list"
)
})
# closest_matches() --------------------------------------------------
test_that("closest_matches() works", {
expect_equivalent(
closest_matches("LGLI+", explorer_wl$media),
"LGLI"
)
expect_equivalent(
closest_matches("LGLI+", explorer_wl$media, margin = 5),
c("LGLI", "RPMI")
)
})
test_that("closest_match() plays nice with multi-alias targets, eg CXCL1/GROa, CHIT3/YKL40", {
expect_identical(
closest_matches("GROa", c("CXCL1/GROa", "CXCL4", "GROb")),
c("CXCL1/GROa", "GROb")
)
expect_identical(
closest_matches("CXCL1", c("CXCL1/GROa", "CXCL4", "GROb")),
c("CXCL1/GROa", "CXCL4")
)
expect_identical(
closest_matches("YKL-40", c("IL-40", "CHI3L1/YKL40", "MCP1")),
c("CHI3L1/YKL40", "IL-40")
)
})
# check_and_match() --------------------------------------------------
# hard to test directly, due to interactivity
test_that("check_and_match() works", {
expect_error(check_and_match(data_to_check))
})
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.