Nothing
library(shiny)
library(testthat)
test_that("Nested modules", {
child <- function(id) {
moduleServer(id, function(input, output, session) {
output$txt <- renderText("bar")
})
}
parent <- function(id) {
moduleServer(id, function(input, output, session) {
output$txt <- renderText("foo")
child("child-id")
})
}
testServer(parent, args = list(id = "parent-id"), {
expect_equal(output$txt, "foo")
})
})
test_that("Lack of ID", {
module <- function(id) {
moduleServer(id, function(input, output, session) {
output$txt <- renderText(session$ns("x"))
})
}
testServer(module, args = list(id = "foo"), {
expect_equal(output$txt, "foo-x")
})
})
test_that("testServer works with nested module servers", {
outerModule <- function(id) {
moduleServer(id, function(input, output, session) {
r1 <- reactive({ input$x + 1})
r2 <- innerModule("inner", r1)
output$someVar <- renderText(r2())
})
}
innerModule <- function(id, r) {
moduleServer(id, function(input, output, session) {
reactive(paste("a value:", r()))
})
}
testServer(outerModule, args = list(id = "foo"), {
session$setInputs(x = 1)
expect_equal(output$someVar, "a value: 2")
})
})
test_that("testServer calls do not nest in module functions", {
module <- function(id) {
moduleServer(id, function(input, output, session) {
x <- 1
testServer(function(id) {
moduleServer(id, function(input, output, session) {
y <- x + 1
})
})
})
}
expect_error(testServer(module, {}))
})
test_that("testServer calls do not nest in test exprs", {
module <- function(id) {
x <- 1
moduleServer(id, function(input, output, session) {
inner <- function(id) {
moduleServer(id, function(input, output, session) {
y <- x + 1
})
}
})
}
expect_error(testServer(module, { testServer(inner, {}) }))
})
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.