summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
author最萌小汐 <sumneko@hotmail.com>2022-07-11 20:32:03 +0800
committer最萌小汐 <sumneko@hotmail.com>2022-07-11 20:32:03 +0800
commit3820962ca2d23d525bc8417c8088e7eeb667cba1 (patch)
tree1f2fc76ce1344ee9e48935f94fe5b44182325453 /test
parent6d040fd8da9f77c92a6359657c2d845c3b62735d (diff)
downloadlua-language-server-3820962ca2d23d525bc8417c8088e7eeb667cba1.zip
resolve #1209
treat `_ENV = {}` as `local _ENV = {}` `local _ENV = nil` will disable all globals `local _ENV = {}` will enable all globals `local _ENV = {} ---@type mathlib` will open globals in mathlib
Diffstat (limited to 'test')
-rw-r--r--test/diagnostics/common.lua34
1 files changed, 34 insertions, 0 deletions
diff --git a/test/diagnostics/common.lua b/test/diagnostics/common.lua
index 0df678d1..fab02caf 100644
--- a/test/diagnostics/common.lua
+++ b/test/diagnostics/common.lua
@@ -133,6 +133,40 @@ _ENV = nil
]]
TEST [[
+---@diagnostic disable: undefined-global
+_ENV = nil
+<!print!>(<!A!>) -- `print` and `A` should warning
+]]
+
+TEST [[
+---@diagnostic disable: undefined-global
+local _ENV = nil
+<!print!>(<!A!>) -- `print` and `A` should warning
+]]
+
+TEST [[
+_ENV = {}
+print(A) -- no warning
+]]
+
+TEST [[
+local _ENV = {}
+print(A) -- no warning
+]]
+
+TEST [[
+---@type iolib
+_ENV = {}
+<!print!>(stderr) -- `print` is warning but `stderr` is not
+]]
+
+TEST [[
+---@type iolib
+local _ENV = {}
+<!print!>(stderr) -- `print` is warning but `stderr` is not
+]]
+
+TEST [[
local _ENV = { print = print }
print(1)
]]