testthat expectation for a Shiny update

expectUpdate(
  app,
  output,
  ...,
  timeout = 3000,
  iotype = c("auto", "input", "output")
)

Arguments

app

A ShinyDriver() object.

output

Character vector, the name(s) of the output widgets that are required to update for the test to succeed.

...

Named arguments specifying updates for Shiny input widgets.

timeout

Timeout for the update to happen, in milliseconds.

iotype

Type of the widget(s) to change. These are normally input widgets.

Examples

if (FALSE) {
## https://github.com/rstudio/shiny-examples/tree/main/050-kmeans-example
app <- ShinyDriver$new("050-kmeans-example")
expectUpdate(app, xcol = "Sepal.Width", output = "plot1")
expectUpdate(app, ycol = "Petal.Width", output = "plot1")
expectUpdate(app, clusters = 4, output = "plot1")
}