Nothing
library(logger)
library(testthat)
## save current settings so that we can reset later
layout <- log_layout()
appender <- log_appender()
context('CRAN skip: logging from packages')
test_that('called from package', {
devtools::load_all(system.file('demo-packages/logger-tester-package', package = 'logger'))
log_layout(layout_simple)
log_appender(appender_stdout)
expect_output(logger_tester_function(INFO, 'x = '), 'INFO')
expect_output(logger_info_tester_function('everything = '), 'INFO')
})
test_that('namespace in a remote R session to avoid calling from testthat', {
t <- tempfile()
cat('
library(logger)
log_layout(layout_glue_generator("{ns} / {ans} / {topenv} / {fn} / {call}"))
log_info("foobar")', file = t)
expect_equal(
system(paste('$R_HOME/bin/Rscript', t, '2>&1'), intern = TRUE),
'global / global / R_GlobalEnv / NA / NA')
unlink(t)
t <- tempfile()
cat('
library(logger)
log_layout(layout_glue_generator("{ns} / {ans} / {topenv} / {fn} / {call}"))
f <- function() log_info("foobar")
f()', file = t)
expect_equal(
system(paste('$R_HOME/bin/Rscript', t, '2>&1'), intern = TRUE),
'global / global / R_GlobalEnv / f / f()')
unlink(t)
t <- tempfile()
cat('
library(logger)
log_layout(layout_glue_generator("{ns} / {ans} / {topenv} / {fn} / {call}"))
f <- function() log_info("foobar")
g <- function() f()
g()', file = t)
expect_equal(
system(paste('$R_HOME/bin/Rscript', t, '2>&1'), intern = TRUE),
'global / global / R_GlobalEnv / f / f()')
unlink(t)
t <- tempfile()
cat('
library(logger)
log_layout(layout_glue_generator("{ns} / {ans} / {topenv} / {fn} / {call}"))
f <- function() log_info("foobar")
g <- f
g()', file = t)
expect_equal(
system(paste('$R_HOME/bin/Rscript', t, '2>&1'), intern = TRUE),
'global / global / R_GlobalEnv / g / g()')
unlink(t)
t <- tempfile()
cat('
library(logger)
log_layout(layout_glue_generator("{ns} / {ans} / {topenv} / {fn} / {call}"))
log_appender(appender_stdout)
devtools::load_all(system.file("demo-packages/logger-tester-package", package = "logger"), quiet = TRUE)
logger_info_tester_function("foobar")',
file = t)
expect_equal(
system(paste('$R_HOME/bin/Rscript', t), intern = TRUE),
'logger.tester / global / logger.tester / logger_info_tester_function / logger_info_tester_function("foobar")')
unlink(t)
t <- tempfile()
cat('
library(logger)
log_layout(layout_glue_generator("{ns} / {ans} / {topenv} / {fn} / {call}"))
devtools::load_all(system.file("demo-packages/logger-tester-package", package = "logger"), quiet = TRUE)
log_threshold(INFO, namespace = "logger.tester")
log_appender(appender_stdout, namespace = "logger.tester")
logger_info_tester_function("foobar")',
file = t)
expect_equal(
system(paste('$R_HOME/bin/Rscript', t), intern = TRUE),
'logger.tester / logger.tester / logger.tester / logger_info_tester_function / logger_info_tester_function("foobar")')
unlink(t)
})
## reset settings
log_layout(layout)
log_appender(appender)
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.