Skip to content

Commit 66234e4

Browse files
TESTS: Validate that stdout is captured and relayed
1 parent 6d6dfa5 commit 66234e4

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed

tests/with_progress,stdout.R

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
source("incl/start.R")
2+
3+
options(progressr.clear = FALSE)
4+
5+
message("Multiple handlers ...")
6+
7+
delay <- getOption("progressr.demo.delay", 0.1)
8+
message("- delay: ", delay, " seconds")
9+
10+
handlers(handler_txtprogressbar(clear = FALSE))
11+
12+
x <- 1:5
13+
stdout <- c()
14+
bfr <- utils::capture.output({
15+
with_progress({
16+
p <- progressor(along = x)
17+
for (ii in x) {
18+
msg <- sprintf("ii = %d\n", ii)
19+
stdout <- c(stdout, msg)
20+
cat(msg)
21+
Sys.sleep(delay)
22+
p(message = sprintf("(%s)", paste(letters[1:ii], collapse=",")))
23+
}
24+
})
25+
})
26+
cat(bfr, sep="\n")
27+
28+
## Validate stdout
29+
bfr <- paste(c(bfr, ""), collapse="\n")
30+
stdout <- paste(stdout, collapse="")
31+
stopifnot(bfr == stdout)
32+
33+
message("Multiple handlers ... done")
34+
35+
source("incl/end.R")

0 commit comments

Comments
 (0)