vendor tsgo
This commit is contained in:
@@ -0,0 +1,56 @@
|
||||
package fourslash_test
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"testing"
|
||||
|
||||
"github.com/microsoft/typescript-go/internal/core"
|
||||
"github.com/microsoft/typescript-go/internal/fourslash"
|
||||
"github.com/microsoft/typescript-go/internal/ls/lsutil"
|
||||
"github.com/microsoft/typescript-go/internal/testutil"
|
||||
)
|
||||
|
||||
func TestCodeLensReferencesShowOnInterfaceMethods(t *testing.T) {
|
||||
t.Parallel()
|
||||
containingTestName := t.Name()
|
||||
for _, value := range []core.Tristate{core.TSTrue, core.TSFalse} {
|
||||
t.Run(fmt.Sprintf("%s=%v", containingTestName, value.IsTrue()), func(t *testing.T) {
|
||||
t.Parallel()
|
||||
defer testutil.RecoverAndFail(t, "Panic on fourslash test")
|
||||
|
||||
const content = `
|
||||
export interface I {
|
||||
methodA(): void;
|
||||
}
|
||||
export interface I {
|
||||
methodB(): void;
|
||||
}
|
||||
|
||||
interface J extends I {
|
||||
methodB(): void;
|
||||
methodC(): void;
|
||||
}
|
||||
|
||||
class C implements J {
|
||||
methodA(): void {}
|
||||
methodB(): void {}
|
||||
methodC(): void {}
|
||||
}
|
||||
|
||||
class AbstractC implements J {
|
||||
abstract methodA(): void;
|
||||
methodB(): void {}
|
||||
abstract methodC(): void;
|
||||
}
|
||||
`
|
||||
f, done := fourslash.NewFourslash(t, nil /*capabilities*/, content)
|
||||
defer done()
|
||||
f.VerifyBaselineCodeLens(t, &lsutil.UserPreferences{
|
||||
CodeLens: lsutil.CodeLensUserPreferences{
|
||||
ImplementationsCodeLensEnabled: core.TSTrue,
|
||||
ImplementationsCodeLensShowOnInterfaceMethods: value,
|
||||
},
|
||||
})
|
||||
})
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user