vendor tsgo
This commit is contained in:
@@ -0,0 +1,80 @@
|
||||
// Code generated by convertFourslash; DO NOT EDIT.
|
||||
// To modify this test, run "npm run makemanual codeFixClassImplementDeepInheritance"
|
||||
|
||||
package fourslash_test
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/microsoft/typescript-go/internal/fourslash"
|
||||
"github.com/microsoft/typescript-go/internal/testutil"
|
||||
)
|
||||
|
||||
func TestCodeFixClassImplementDeepInheritance(t *testing.T) {
|
||||
fourslash.SkipIfFailing(t)
|
||||
t.Parallel()
|
||||
defer testutil.RecoverAndFail(t, "Panic on fourslash test")
|
||||
const content = `// @stableTypeOrdering: true
|
||||
// @strict: false
|
||||
// Referenced throughout the inheritance chain.
|
||||
interface I0 { a: number }
|
||||
|
||||
class C1 implements I0 { a: number }
|
||||
interface I1 { b: number }
|
||||
interface I2 extends C1, I1 {}
|
||||
|
||||
class C2 { c: number }
|
||||
interface I3 {d: number}
|
||||
class C3 extends C2 implements I0, I2, I3 {
|
||||
a: number;
|
||||
b: number;
|
||||
d: number;
|
||||
}
|
||||
|
||||
interface I4 { e: number }
|
||||
interface I5 { f: number }
|
||||
class C4 extends C3 implements I0, I4, I5 {
|
||||
e: number;
|
||||
f: number;
|
||||
}
|
||||
|
||||
interface I6 extends C4 {}
|
||||
class C5 implements I6 {}`
|
||||
f, done := fourslash.NewFourslash(t, nil /*capabilities*/, content)
|
||||
defer done()
|
||||
f.VerifyCodeFix(t, fourslash.VerifyCodeFixOptions{
|
||||
Description: "Implement interface 'I6'",
|
||||
NewFileContent: `// Referenced throughout the inheritance chain.
|
||||
interface I0 { a: number }
|
||||
|
||||
class C1 implements I0 { a: number }
|
||||
interface I1 { b: number }
|
||||
interface I2 extends C1, I1 {}
|
||||
|
||||
class C2 { c: number }
|
||||
interface I3 {d: number}
|
||||
class C3 extends C2 implements I0, I2, I3 {
|
||||
a: number;
|
||||
b: number;
|
||||
d: number;
|
||||
}
|
||||
|
||||
interface I4 { e: number }
|
||||
interface I5 { f: number }
|
||||
class C4 extends C3 implements I0, I4, I5 {
|
||||
e: number;
|
||||
f: number;
|
||||
}
|
||||
|
||||
interface I6 extends C4 {}
|
||||
class C5 implements I6 {
|
||||
c: number;
|
||||
a: number;
|
||||
b: number;
|
||||
d: number;
|
||||
e: number;
|
||||
f: number;
|
||||
}`,
|
||||
Index: 0,
|
||||
})
|
||||
}
|
||||
Reference in New Issue
Block a user