Nothing
source(file.path("_helper", "init.R"))
# - "read_line works" ----------------------------------------------------------
# read through prompt vals
unitizer:::read_line_set_vals(letters[1:3])
u.ns <- asNamespace("unitizer")
unitizer:::read_line()
identical(u.ns$.global$prompt.vals, letters[2:3])
unitizer:::read_line()
u.ns$.global$prompt.vals
unitizer:::read_line()
u.ns$.global$prompt.vals
try(unitizer:::read_line())
# - "simple prompts" -----------------------------------------------------------
unitizer:::read_line_set_vals(c("y", "Y", "n", "N"))
try(unitizer:::simple_prompt(1:5))
try(unitizer:::simple_prompt("hello", attempts = 1:5))
try(unitizer:::simple_prompt("hello", values = NA_character_))
try(unitizer:::simple_prompt("hello", case.sensitive = 1))
unitizer:::simple_prompt("hello")
unitizer:::simple_prompt("hello")#
unitizer:::simple_prompt("hello")
unitizer:::read_line_set_vals(c("y", "y", "n"))
try(unitizer:::simple_prompt("hello", attempts = 1L, case.sensitive = TRUE))
try(unitizer:::simple_prompt("hello", attempts = 1L, case.sensitive = TRUE),
silent = TRUE)
try(unitizer:::simple_prompt("hello", attempts = 1L, case.sensitive = TRUE))
# - "faux prompt" --------------------------------------------------------------
unitizer:::read_line_set_vals(c("1 +", "1"))
unitizer:::faux_prompt(prompt = "> ", continue = "+ ")[[1L]]
unitizer:::read_line_set_vals(c("(})"))
try(unitizer:::faux_prompt(prompt = "> ", continue = "+ "))
## Test the new readLines based read_line
## This test will not work in interactive mode, requiring input
unitizer:::read_line_set_vals(c("1 +", "1"))
unitizer:::faux_prompt()
## This one embeds a CTRL+C to test interrupt, but we can't test this without
## read_line_setvals
unitizer:::read_line_set_vals(c("1 +", "\x03", "2 + ", "1"))
unitizer:::faux_prompt()
unitizer:::read_line_set_vals(c("\x03", "2 + ", "1"))
unitizer:::faux_prompt()
## Test that changing language doesn't affect partial parsing
lang <- Sys.getenv("LANGUAGE", unset=NA)
Sys.setenv("LANGUAGE"="fr")
unitizer:::read_line_set_vals(c("1 +", "1"))
unitizer:::faux_prompt(prompt = "> ", continue = "+ ")
if(is.na(lang)) Sys.unsetenv("LANGUAGE") else Sys.setenv("LANGUAGE"=lang)
# - "unitizer prompt" ----------------------------------------------------------
# Some of this needs to be done outside of testthat due to sinking
suppressWarnings(glob <- unitizer:::unitizerGlobal$new())
unitizer:::read_line_set_vals(c("1 +", "1", "H", "Y"))
unitizer:::unitizer_prompt(
"hello", valid.opts = c(Y = "[Y]es", N = "[N]o"), global = glob
)
unitizer:::read_line_set_vals(c("1 +", "1", "H", "Q"))
unitizer:::unitizer_prompt("hello",
valid.opts = c(Y = "[Y]es", N = "[N]o"), help = "This is all the help you get",
global = glob)
unitizer:::read_line_set_vals(c("hell())", "Q"))
txt3 <- unitizer:::capture_output(unitizer:::unitizer_prompt("hello",
valid.opts = c(Y = "[Y]es", N = "[N]o"), global = glob))
txt3$message
# and multiline stuff (#242)
unitizer:::read_line_set_vals(c("{\n 1 + 1\n 2 + 1\n}", "N"))
unitizer:::unitizer_prompt(
"hello", valid.opts = c(Y = "[Y]es", N = "[N]o"), global = glob
)
try(
unitizer:::unitizer_prompt(
"hello", valid.opts = c(Y = "[Y]es", N = "[N]o"),
browse.env = "not an env", global = glob
) )
unitizer:::read_line_set_vals(character())
try(
unitizer:::unitizer_prompt(
"hello", valid.opts = c(Y = "[Y]es", N = "[N]o"), global = glob
) )
unitizer:::read_line_set_vals("1L")
try(
unitizer:::unitizer_prompt(
"hello",
valid.opts = c(Y = "[Y]es", N = "[N]o"),
exit.condition = unitizer:::exit_fun,
valid.vals = 2:3, global = glob
) )
unitizer:::read_line_set_vals("2L")
unitizer:::unitizer_prompt("hello", valid.opts = c(Y = "[Y]es",
N = "[N]o"), exit.condition = unitizer:::exit_fun, valid.vals = 2:3,
global = glob)
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.