From 30c474380440b2e407c55b1590a907a1be7a043d Mon Sep 17 00:00:00 2001 From: Michael Chirico Date: Sun, 19 Nov 2023 10:44:35 -0800 Subject: [PATCH] vectorization+metadata --- tests/testthat/test-object_overwrite_linter.R | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/tests/testthat/test-object_overwrite_linter.R b/tests/testthat/test-object_overwrite_linter.R index 37ff10b38..e434be321 100644 --- a/tests/testthat/test-object_overwrite_linter.R +++ b/tests/testthat/test-object_overwrite_linter.R @@ -104,3 +104,31 @@ test_that("shorthand lambda is detected", { test_that("allow_names= works to ignore certain symbols", { expect_lint("function() data <- 1", NULL, object_overwrite_linter(allow_names = "data")) }) + +test_that("lints vectorize", { + lines <- trim_some("{ + foo <- function() { + data <- 1 + var <- 2 + } + bar <- function(data) { + data <- data + 3 + sum <- 4 + } + }") + expect_lint( + lines, + list( + list(rex::rex("'data' is an exported object from package 'utils'."), line_number = 3L), + list(rex::rex("'var' is an exported object from package 'stats'."), line_number = 4L), + list(rex::rex("'sum' is an exported object from package 'base'."), line_number = 8L) + ), + object_overwrite_linter() + ) + + expect_lint( + lines, + list(rex::rex("'var' is an exported object from package 'stats'."), line_number = 4L), + object_overwrite_linter(packages = c("stats", "base"), allow_names = "sum") + ) +})