vendor tsgo
This commit is contained in:
@@ -0,0 +1,78 @@
|
||||
// Code generated by convertFourslash; DO NOT EDIT.
|
||||
// To modify this test, run "npm run makemanual indirectClassInstantiation"
|
||||
|
||||
package fourslash_test
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/microsoft/typescript-go/internal/fourslash"
|
||||
. "github.com/microsoft/typescript-go/internal/fourslash/tests/util"
|
||||
"github.com/microsoft/typescript-go/internal/ls"
|
||||
"github.com/microsoft/typescript-go/internal/lsp/lsproto"
|
||||
"github.com/microsoft/typescript-go/internal/testutil"
|
||||
)
|
||||
|
||||
func TestIndirectClassInstantiation(t *testing.T) {
|
||||
fourslash.SkipIfFailing(t)
|
||||
t.Parallel()
|
||||
defer testutil.RecoverAndFail(t, "Panic on fourslash test")
|
||||
const content = `// @allowJs: true
|
||||
// @Filename: something.js
|
||||
function TestObj(){
|
||||
this.property = "value";
|
||||
}
|
||||
var constructor = TestObj;
|
||||
var instance = new constructor();
|
||||
instance./*a*/
|
||||
var class2 = function() { };
|
||||
class2.prototype.blah = function() { };
|
||||
var inst2 = new class2();
|
||||
inst2.blah/*b*/;`
|
||||
f, done := fourslash.NewFourslash(t, nil /*capabilities*/, content)
|
||||
defer done()
|
||||
f.GoToMarker(t, "a")
|
||||
f.VerifyCompletions(t, nil, &fourslash.CompletionsExpectedList{
|
||||
IsIncomplete: false,
|
||||
ItemDefaults: &fourslash.CompletionsExpectedItemDefaults{
|
||||
CommitCharacters: &DefaultCommitCharacters,
|
||||
EditRange: Ignored,
|
||||
},
|
||||
Items: &fourslash.CompletionsExpectedItems{
|
||||
Exact: []fourslash.CompletionsExpectedItem{
|
||||
"property",
|
||||
&lsproto.CompletionItem{
|
||||
Label: "blah",
|
||||
SortText: new(string(ls.SortTextJavascriptIdentifiers)),
|
||||
},
|
||||
&lsproto.CompletionItem{
|
||||
Label: "class2",
|
||||
SortText: new(string(ls.SortTextJavascriptIdentifiers)),
|
||||
},
|
||||
&lsproto.CompletionItem{
|
||||
Label: "constructor",
|
||||
SortText: new(string(ls.SortTextJavascriptIdentifiers)),
|
||||
},
|
||||
&lsproto.CompletionItem{
|
||||
Label: "inst2",
|
||||
SortText: new(string(ls.SortTextJavascriptIdentifiers)),
|
||||
},
|
||||
&lsproto.CompletionItem{
|
||||
Label: "instance",
|
||||
SortText: new(string(ls.SortTextJavascriptIdentifiers)),
|
||||
},
|
||||
&lsproto.CompletionItem{
|
||||
Label: "prototype",
|
||||
SortText: new(string(ls.SortTextJavascriptIdentifiers)),
|
||||
},
|
||||
&lsproto.CompletionItem{
|
||||
Label: "TestObj",
|
||||
SortText: new(string(ls.SortTextJavascriptIdentifiers)),
|
||||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
f.Backspace(t, 1)
|
||||
f.GoToMarker(t, "b")
|
||||
f.VerifyQuickInfoIs(t, "(method) class2.blah(): void", "")
|
||||
}
|
||||
Reference in New Issue
Block a user