package fourslash_test import ( "testing" "efprojects.com/kitten-ipc/kitcom/internal/tsgo/fourslash" . "efprojects.com/kitten-ipc/kitcom/internal/tsgo/fourslash/tests/util" "efprojects.com/kitten-ipc/kitcom/internal/tsgo/lsp/lsproto" "efprojects.com/kitten-ipc/kitcom/internal/tsgo/testutil" ) func TestSignatureHelpTokenCrash(t *testing.T) { t.Parallel() defer testutil.RecoverAndFail(t, "Panic on fourslash test") const content = ` function foo(a: any, b: any) { } foo((/*1*/ /** This is a JSDoc comment */ foo/** More comments*/((/*2*/ ` f := fourslash.NewFourslash(t, nil /*capabilities*/, content) f.VerifySignatureHelp(t, &fourslash.SignatureHelpCase{ MarkerInput: "1", Expected: nil, Context: &lsproto.SignatureHelpContext{ IsRetrigger: false, TriggerCharacter: PtrTo("("), TriggerKind: lsproto.SignatureHelpTriggerKindTriggerCharacter, }, }) f.VerifySignatureHelp(t, &fourslash.SignatureHelpCase{ MarkerInput: "2", Expected: nil, Context: &lsproto.SignatureHelpContext{ IsRetrigger: false, TriggerCharacter: PtrTo("("), TriggerKind: lsproto.SignatureHelpTriggerKindTriggerCharacter, }, }) }