test_that("linter warns about absolute paths and relative paths", { dirCreate("~/.rsconnect-tests") file.create("~/.rsconnect-tests/local-file.txt") withr::defer(unlink("~/.rsconnect-tests", recursive = TRUE)) result <- lint(test_path("shinyapp-with-absolute-paths")) expect_snapshot(result) absPathLintedIndices <- result[["server.R"]]$absolute.paths$indices expect_identical(as.numeric(absPathLintedIndices), 15) }) test_that("The linter identifies files not matching in case sensitivity", { result <- lint(test_path("shinyapp-with-absolute-paths")) server.R <- result[["server.R"]] filepath.capitalization <- server.R[["filepath.capitalization"]] expect_equal(as.integer(filepath.capitalization$indices), 31) }) test_that("The linter identifies files with Markdown links not matching in case sensitivity", { result <- lint(test_path("test-rmd-bad-case")) index.Rmd <- result[["index.Rmd"]] filepath.capitalization <- index.Rmd[["filepath.capitalization"]] expect_equal(as.integer(filepath.capitalization$indices), 29) }) test_that("The linter identifies browser() statements correctly", { result <- lint("shinyapp-with-browser") server.R <- result[["server.R"]] browseLines <- server.R[["browser"]] expect_true(browseLines$indices == 9) }) test_that("The linter identifies browseURL() statements correctly", { result <- lint("shinyapp-with-browser") server.R <- result[["server.R"]] browseLines <- server.R[["browseURL"]] expect_true(browseLines$indices == 5) }) test_that("The linter accepts a plumber API", { result <- lint("test-plumber") expect_false(is.null(result$plumber.R)) }) test_that("Linters can run on files with multibyte characters", { lint("multibyte-characters") expect_true(TRUE) # didn't stop })