diff options
author | 最萌小汐 <sumneko@hotmail.com> | 2019-11-23 00:05:30 +0800 |
---|---|---|
committer | 最萌小汐 <sumneko@hotmail.com> | 2019-11-23 00:05:30 +0800 |
commit | 6da2b175e20ed3c03b0dfcfc9046de1e0e5d4444 (patch) | |
tree | fdc22d78150fd1c5edc46732c8b151ccfefb519f /script-beta/test/signature/init.lua | |
parent | d0ff66c9abe9d6abbca12fd811e0c3cb69c1033a (diff) | |
download | lua-language-server-6da2b175e20ed3c03b0dfcfc9046de1e0e5d4444.zip |
正路目录
Diffstat (limited to 'script-beta/test/signature/init.lua')
-rw-r--r-- | script-beta/test/signature/init.lua | 137 |
1 files changed, 0 insertions, 137 deletions
diff --git a/script-beta/test/signature/init.lua b/script-beta/test/signature/init.lua deleted file mode 100644 index a2a647e7..00000000 --- a/script-beta/test/signature/init.lua +++ /dev/null @@ -1,137 +0,0 @@ -local parser = require 'parser' -local core = require 'core' -local buildVM = require 'vm' - -rawset(_G, 'TEST', true) - -function TEST(script) - return function (expect) - local pos = script:find('$', 1, true) - local new_script = script:gsub('%$', '') - local ast = parser:parse(new_script, 'lua', 'Lua 5.3') - local vm = buildVM(ast) - assert(vm) - local hovers = core.signature(vm, pos) - if hovers then - assert(expect) - local hover = hovers[#hovers] - - local label = hover.label:gsub('^[\r\n]*(.-)[\r\n]*$', '%1'):gsub('\r\n', '\n') - expect.label = expect.label:gsub('^[\r\n]*(.-)[\r\n]*$', '%1'):gsub('\r\n', '\n') - local arg = hover.argLabel - - assert(expect.label == label) - assert(expect.arg[1] == arg[1]) - assert(expect.arg[2] == arg[2]) - else - assert(expect == nil) - end - end -end - -TEST [[ -local function x(a, b) -end - -x($ -]] -{ - label = "function x(a: any, b: any)", - arg = {12, 17}, -} - -TEST [[ -local function x(a, b) -end - -x($) -]] -{ - label = "function x(a: any, b: any)", - arg = {12, 17}, -} - -TEST [[ -local function x(a, b) -end - -x(xxx$) -]] -{ - label = "function x(a: any, b: any)", - arg = {12, 17}, -} - -TEST [[ -local function x(a, b) -end - -x(xxx, $) -]] -{ - label = "function x(a: any, b: any)", - arg = {20, 25}, -} - -TEST [[ -function mt:f(a) -end - -mt:f($ -]] -{ - label = 'function mt:f(a: any)', - arg = {15, 20}, -} - -TEST [[ -(''):sub($ -]] -{ - label = [[ -function *string:sub(i: integer [, j: integer(-1)]) - -> string -]], - arg = {22, 31}, -} - -TEST [[ -(''):sub(1)$ -]] -(nil) - -TEST [[ -local function f(a, b, c) -end - -f(1, 'string$') -]] -(nil) - -TEST [[ -pcall(function () $ end) -]] -(nil) - -TEST [[ -table.unpack {$} -]] -(nil) - -TEST [[ ----@type fun(x: number, y: number):boolean -local zzzz -zzzz($) -]] -{ - label = [[ -function zzzz(x: number, y: number) - -> boolean -]], - arg = {15, 23}, -} - -TEST [[ -('abc'):format(f($)) -]] -(nil) |