kittenipc/kitcom/internal/tsgo/fourslash/tests/gen/signatureHelpCommentsClassMembers_test.go
2025-10-15 10:12:44 +03:00

148 lines
3.7 KiB
Go

package fourslash_test
import (
"testing"
"efprojects.com/kitten-ipc/kitcom/internal/tsgo/fourslash"
"efprojects.com/kitten-ipc/kitcom/internal/tsgo/testutil"
)
func TestSignatureHelpCommentsClassMembers(t *testing.T) {
t.Parallel()
defer testutil.RecoverAndFail(t, "Panic on fourslash test")
const content = `/** This is comment for c1*/
class c1 {
/** p1 is property of c1*/
public p1: number;
/** sum with property*/
public p2(/** number to add*/b: number) {
return this.p1 + b;
}
/** getter property 1*/
public get p3() {
return this.p2(/*8*/this.p1);
}
/** setter property 1*/
public set p3(/** this is value*/value: number) {
this.p1 = this.p2(/*13*/value);
}
/** pp1 is property of c1*/
private pp1: number;
/** sum with property*/
private pp2(/** number to add*/b: number) {
return this.p1 + b;
}
/** getter property 2*/
private get pp3() {
return this.pp2(/*20*/this.pp1);
}
/** setter property 2*/
private set pp3( /** this is value*/value: number) {
this.pp1 = this.pp2(/*25*/value);
}
/** Constructor method*/
constructor() {
}
/** s1 is static property of c1*/
static s1: number;
/** static sum with property*/
static s2(/** number to add*/b: number) {
return c1.s1 + b;
}
/** static getter property*/
static get s3() {
return c1.s2(/*35*/c1.s1);
}
/** setter property 3*/
static set s3( /** this is value*/value: number) {
c1.s1 = c1.s2(/*42*/value);
}
public nc_p1: number;
public nc_p2(b: number) {
return this.nc_p1 + b;
}
public get nc_p3() {
return this.nc_p2(/*47*/this.nc_p1);
}
public set nc_p3(value: number) {
this.nc_p1 = this.nc_p2(/*49*/value);
}
private nc_pp1: number;
private nc_pp2(b: number) {
return this.nc_pp1 + b;
}
private get nc_pp3() {
return this.nc_pp2(/*54*/this.nc_pp1);
}
private set nc_pp3(value: number) {
this.nc_pp1 = this.nc_pp2(/*56*/value);
}
static nc_s1: number;
static nc_s2(b: number) {
return c1.nc_s1 + b;
}
static get nc_s3() {
return c1.nc_s2(/*61*/c1.nc_s1);
}
static set nc_s3(value: number) {
c1.nc_s1 = c1.nc_s2(/*63*/value);
}
}
var i1 = new c1(/*65*/);
var i1_p = i1.p1;
var i1_f = i1.p2;
var i1_r = i1.p2(/*71*/20);
var i1_prop = i1.p3;
i1.p3 = i1_prop;
var i1_nc_p = i1.nc_p1;
var i1_ncf = i1.nc_p2;
var i1_ncr = i1.nc_p2(/*81*/20);
var i1_ncprop = i1.nc_p3;
i1.nc_p3 = i1_ncprop;
var i1_s_p = c1.s1;
var i1_s_f = c1.s2;
var i1_s_r = c1.s2(/*92*/20);
var i1_s_prop = c1.s3;
c1.s3 = i1_s_prop;
var i1_s_nc_p = c1.nc_s1;
var i1_s_ncf = c1.nc_s2;
var i1_s_ncr = c1.nc_s2(/*102*/20);
var i1_s_ncprop = c1.nc_s3;
c1.nc_s3 = i1_s_ncprop;
var i1_c = c1;
class cProperties {
private val: number;
/** getter only property*/
public get p1() {
return this.val;
}
public get nc_p1() {
return this.val;
}
/**setter only property*/
public set p2(value: number) {
this.val = value;
}
public set nc_p2(value: number) {
this.val = value;
}
}
var cProperties_i = new cProperties();
cProperties_i.p2 = cProperties_i.p1;
cProperties_i.nc_p2 = cProperties_i.nc_p1;
class cWithConstructorProperty {
/**
* this is class cWithConstructorProperty's constructor
* @param a this is first parameter a
*/
constructor(/**more info about a*/public a: number) {
var bbbb = 10;
this.a = a + 2 + bbbb;
}
}`
f := fourslash.NewFourslash(t, nil /*capabilities*/, content)
f.VerifyBaselineSignatureHelp(t)
}