43 lines
1.3 KiB
Go
43 lines
1.3 KiB
Go
package fourslash_test
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"efprojects.com/kitten-ipc/kitcom/internal/tsgo/fourslash"
|
|
"efprojects.com/kitten-ipc/kitcom/internal/tsgo/testutil"
|
|
)
|
|
|
|
func TestSignatureHelpCommentsFunctionExpression(t *testing.T) {
|
|
t.Parallel()
|
|
|
|
defer testutil.RecoverAndFail(t, "Panic on fourslash test")
|
|
const content = `/** lambdaFoo var comment*/
|
|
var lambdaFoo = /** this is lambda comment*/ (/**param a*/a: number, /**param b*/b: number) => a + b;
|
|
var lambddaNoVarComment = /** this is lambda multiplication*/ (/**param a*/a: number, /**param b*/b: number) => a * b;
|
|
lambdaFoo(/*5*/10, /*6*/20);
|
|
function anotherFunc(a: number) {
|
|
/** documentation
|
|
@param b {string} inner parameter */
|
|
var lambdaVar = /** inner docs */(b: string) => {
|
|
var localVar = "Hello ";
|
|
return localVar + b;
|
|
}
|
|
return lambdaVar("World") + a;
|
|
}
|
|
/**
|
|
* On variable
|
|
* @param s the first parameter!
|
|
* @returns the parameter's length
|
|
*/
|
|
var assigned = /**
|
|
* Summary on expression
|
|
* @param s param on expression
|
|
* @returns return on expression
|
|
*/function(/** On parameter */s: string) {
|
|
return s.length;
|
|
}
|
|
assigned(/*18*/"hey");`
|
|
f := fourslash.NewFourslash(t, nil /*capabilities*/, content)
|
|
f.VerifyBaselineSignatureHelp(t)
|
|
}
|