Skip to content

Commit dfbea39

Browse files
committed
test: add tests
1 parent 4de84f3 commit dfbea39

File tree

2 files changed

+72
-0
lines changed

2 files changed

+72
-0
lines changed

test/completion/common.lua

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3138,6 +3138,44 @@ emit.on(emit, 'won', <??>)
31383138
}
31393139
}
31403140

3141+
TEST [[
3142+
--- @alias event.AAA "AAA"
3143+
--- @alias event.BBB "BBB"
3144+
3145+
--- @class Emit
3146+
--- @field on fun(self: Emit, eventName: string, cb: function)
3147+
--- @field on fun(self: Emit, eventName: event.AAA, cb: fun(i: integer))
3148+
--- @field on fun(self: Emit, eventName: event.BBB, cb: fun(s: string))
3149+
local emit = {}
3150+
3151+
emit:on('AAA', <??>)
3152+
]]
3153+
{
3154+
[1] = {
3155+
label = 'fun(i: integer)',
3156+
kind = define.CompletionItemKind.Function,
3157+
}
3158+
}
3159+
3160+
TEST [[
3161+
--- @alias event.AAA "AAA"
3162+
--- @alias event.BBB "BBB"
3163+
3164+
--- @class Emit
3165+
--- @field on fun(self: Emit, eventName: string, cb: function)
3166+
--- @field on fun(self: Emit, eventName: event.AAA, cb: fun(i: integer))
3167+
--- @field on fun(self: Emit, eventName: event.BBB, cb: fun(s: string))
3168+
local emit = {}
3169+
3170+
emit:on('BBB', <??>)
3171+
]]
3172+
{
3173+
[1] = {
3174+
label = 'fun(s: string)',
3175+
kind = define.CompletionItemKind.Function,
3176+
}
3177+
}
3178+
31413179
TEST [[
31423180
local function f()
31433181
local inferCache

test/signature/init.lua

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -373,6 +373,40 @@ t:event("onTimer", <??>)
373373
'(method) (ev: "onTimer", <!t: integer!>)',
374374
}
375375

376+
TEST [[
377+
---@alias event.onChat "onChat"
378+
---@alias event.onTimer "onTimer"
379+
380+
---@class A
381+
---@field event fun(self: self, ev: event.onChat, c: string)
382+
---@field event fun(self: self, ev: event.onTimer, t: integer)
383+
384+
---@type A
385+
local t
386+
387+
t:event("onChat", <??>)
388+
]]
389+
{
390+
'(method) (ev: "onChat", <!c: string!>)',
391+
}
392+
393+
TEST [[
394+
---@alias event.onChat "onChat"
395+
---@alias event.onTimer "onTimer"
396+
397+
---@class A
398+
---@field event fun(self: self, ev: event.onChat, c: string)
399+
---@field event fun(self: self, ev: event.onTimer, t: integer)
400+
401+
---@type A
402+
local t
403+
404+
t:event("onTimer", <??>)
405+
]]
406+
{
407+
'(method) (ev: "onTimer", <!t: integer!>)',
408+
}
409+
376410
local config = require 'config'
377411
config.set(nil, "Lua.type.inferParamType", true)
378412

0 commit comments

Comments
 (0)