whereami
stores in counters when a whereami
call was invoked in a script during a session. This information can be used in control reactivity in shiny app development and testing.
Below shows the basics of accessing and controlling counters.
txt_1 <- "
whereami::cat_where(whereami::whereami(tag = 'tag1'))
"
txt_2 <- "whereami::cat_where(whereami::whereami(tag = 'tag2'))"
tf_1 <- tempfile(fileext = '.R')
tf_2 <- tempfile(fileext = '.R')
cat(txt_1,file = tf_1)
cat(txt_2,file = tf_2)
# All counters
counter_state()
# A single counter
counter_state(tag = 'tag1')
# Counter names
counter_names()
# Counter tags
counter_tags()
counters <- counter_get()
counters
Using counter_reset
and counter_state
in a loop
for( i in 1:10 ){
source(tf_1)
source(tf_2)
if( counter_state(tag = 'tag1') > 5 )
counter_reset(tag = 'tag2')
}
plot(counter_get())
A json log of the counter is written to file.path(tempdir(),'whereami.json')
by default. The path can be set using set_whereami_log()
.