Nothing
test_that(
"golem_sys() returns a path",
{
expect_true(
grepl(
"golem",
golem_sys()
)
)
}
)
test_that(
"rlang_is_interactive() works",
{
expect_equal(
rlang_is_interactive(),
rlang::is_interactive()
)
}
)
test_that(
"create_if_needed creates a file if required",
{
expect_error(
testthat::with_mocked_bindings(
rlang_is_interactive = function() {
return(FALSE)
},
code = {
create_if_needed(
tempfile()
)
}
)
)
expect_false(
testthat::with_mocked_bindings(
rlang_is_interactive = function() {
return(TRUE)
},
ask_golem_creation_file = function(path, type) {
return(FALSE)
},
code = {
create_if_needed(
tempfile()
)
}
)
)
expect_true(
testthat::with_mocked_bindings(
rlang_is_interactive = function() {
return(TRUE)
},
ask_golem_creation_file = function(path,type) {
return(TRUE)
},
code = {
create_if_needed(
tempfile()
)
}
)
)
expect_true(
testthat::with_mocked_bindings(
rlang_is_interactive = function() {
return(TRUE)
},
ask_golem_creation_file = function(path,type) {
return(TRUE)
},
code = {
create_if_needed(
tempfile(),
type = "dir"
)
}
)
)
}
)
test_that(
"ask_golem_creation_file works",
{
expect_true(
testthat::with_mocked_bindings(
yesno = identity,
{
grepl(
"The Kilian Jornet doesn't exist, create?",
ask_golem_creation_file(
"Kilian",
"Jornet"
)
)
}
)
)
}
)
test_that(
"replace_word works",
{
fls <- tempfile()
write(
"Zach Jornet",
fls
)
replace_word(
fls,
"Zach",
"Kilian"
)
expect_true(
grepl(
"Kilian",
readLines(fls)
)
)
unlink(fls)
}
)
test_that(
"remove_comments works",
{
fls <- tempfile()
write(
"Zach Miller",
fls
)
write(
"# Zach Miller",
fls,
append = TRUE
)
write(
"Zach Miller",
fls,
append = TRUE
)
# Checking that we don't remove
# roxygen tags
write(
"#' Zach Miller",
fls,
append = TRUE
)
remove_comments(fls)
expect_true(
length(
readLines(fls)
) == 3
)
}
)
test_that("open_or_go_to works", {
res <- testthat::capture_output_lines({
open_or_go_to(
"jurek",
FALSE
)
})
expect_true(
grepl(
"Go to jurek",
res
)
)
res <- testthat::with_mocked_bindings(
rstudioapi_navigateToFile = function(...) {
return("Scott Jurek")
},
{
open_or_go_to(
"UTMB",
TRUE
)
}
)
expect_equal(
res,
"UTMB"
)
})
test_that(
"desc_exist works",
{
withr::with_tempdir(
expect_false(
desc_exist(".")
)
)
withr::with_tempdir(
expect_true(
file.create("DESCRIPTION"),
desc_exist(".")
)
)
}
)
test_that(
"if_not_null works",
{
expect_null(
if_not_null(
NULL,
1 + 1
)
)
expect_equal(
if_not_null(
TRUE,
1 + 1
),
2
)
}
)
test_that(
"set_name works",
{
expect_named(
set_name(1:2, c("a", "b")),
c("a", "b")
)
}
)
test_that(
"file_path_sans_ext works",
{
expect_equal(
file_path_sans_ext(
"scott.jpg"
),
"scott"
)
}
)
test_that(
"file_ext works",
{
expect_equal(
file_ext(
"scott.jpg"
),
"jpg"
)
}
)
test_that(
"yesno works",
{
expect_true(
testthat::with_mocked_bindings(
utils_menu = function(...) {
return(1)
},
yesno()
)
)
}
)
test_that("is_existing_module() properly detects modules if they are present", {
dummy_golem <- create_dummy_golem()
dummy_module_files <- c(
"mod_main.R",
"mod_left_pane.R",
"mod_pouet_pouet.R"
)
file.create(
file.path(
dummy_golem,
"R",
dummy_module_files
)
)
withr::with_dir(dummy_golem, {
expect_false(is_existing_module("foo"))
expect_true(is_existing_module("left_pane"))
expect_true(is_existing_module("main"))
expect_true(is_existing_module("pouet_pouet"))
expect_false(is_existing_module("plif_plif"))
})
# Cleanup
unlink(dummy_golem, TRUE, TRUE, TRUE)
})
test_that("is_existing_module() fails outside an R package", {
dummy_golem <- create_dummy_golem()
withr::with_dir(dummy_golem, {
unlink("R", TRUE, TRUE)
dir.create("RR/")
file.create(
file.path(
dummy_golem,
"RR",
"left_pane"
)
)
expect_error(
is_existing_module("left_pane"),
"Cannot be called when not inside a R-package"
)
})
# Cleanup
unlink(
dummy_golem,
TRUE,
TRUE,
TRUE
)
})
test_that(
"check_name_length_is_one works",
{
expect_error(
check_name_length_is_one(
names(iris)
)
)
expect_null(
check_name_length_is_one(
"a"
)
)
}
)
test_that(
"do_if_unquiet works",
{
expect_null({
withr::with_options(
c("golem.quiet" = TRUE),
{
do_if_unquiet(
1 + 1
)
}
)
})
expect_null({
withr::with_options(
c("usethis.quiet" = TRUE),
{
do_if_unquiet(
1 + 1
)
}
)
})
expect_equal(
{
withr::with_options(
c("usethis.quiet" = FALSE),
{
do_if_unquiet(
1 + 1
)
}
)
},
2
)
}
)
test_that(
"check_name_syntax throws an info",
{
res <- testthat::capture_messages({
check_name_syntax("mod_jornet")
})
expect_true(
grepl(
"This is not necessary as golem will prepend 'mod_' to your module name automatically",
paste(
res,
collapse = " "
)
)
)
}
)
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.