test_that("app ui", { ui <- app_ui() golem::expect_shinytaglist(ui) # Check that formals have not been removed fmls <- formals(app_ui) for (i in c("request")) { expect_true(i %in% names(fmls)) } }) test_that("app server", { server <- app_server expect_type( server, "closure" ) # Check that formals have not been removed fmls <- formals(app_server) for (i in c("input", "output", "session")) { expect_true( i %in% names(fmls) ) } }) test_that("app_sys works", { expect_true( app_sys("golem-config.yml") != "" ) }) test_that("golem-config works", { config_file <- app_sys("golem-config.yml") skip_if(config_file == "") expect_true( get_golem_config( "app_prod", config = "production", file = config_file ) ) expect_false( get_golem_config( "app_prod", config = "dev", file = config_file ) ) }) # Configure this test to fit your need. # testServer() function makes it possible to test code in server functions and modules, without needing to run the full Shiny application testServer( app_server, { # Set and test an input session$setInputs(x = 2) expect_equal(input$x, 2) # Example of tests you can do on the server: # - Checking reactiveValues # expect_equal(r$lg, 'EN') # - Checking output # expect_equal(output$txt, "Text") } ) # Configure this test to fit your need test_that("app launches", { golem::expect_running(sleep = 5) })