package fourslash_test import ( "testing" "efprojects.com/kitten-ipc/kitcom/internal/tsgo/fourslash" . "efprojects.com/kitten-ipc/kitcom/internal/tsgo/fourslash/tests/util" "efprojects.com/kitten-ipc/kitcom/internal/tsgo/testutil" ) func TestStringCompletionsVsEscaping(t *testing.T) { t.Parallel() t.Skip() defer testutil.RecoverAndFail(t, "Panic on fourslash test") const content = `type Value
= ` + "`" + `var(--\\\\, ${P})` + "`" + ` export const value: Value<'one' | 'two'> = "/*1*/" export const test: ` + "`" + `\ntest\n` + "`" + ` = '/*2*/' export const doubleQuoted1: ` + "`" + `"double-quoted"` + "`" + ` = '/*3*/' export const doubleQuoted2: ` + "`" + `"double-quoted"` + "`" + ` = "/*4*/" export const singleQuoted2: ` + "`" + `'single-quoted'` + "`" + ` = "/*5*/" export const singleQuoted2: ` + "`" + `'single-quoted'` + "`" + ` = '/*6*/' export const backtickQuoted1: '` + "`" + `backtick-quoted` + "`" + `' = "/*7*/" export const backtickQuoted2: '` + "`" + `backtick-quoted` + "`" + `' = ` + "`" + `/*8*/` + "`" + `` f := fourslash.NewFourslash(t, nil /*capabilities*/, content) f.VerifyCompletions(t, "1", &fourslash.CompletionsExpectedList{ IsIncomplete: false, ItemDefaults: &fourslash.CompletionsExpectedItemDefaults{ CommitCharacters: &DefaultCommitCharacters, EditRange: Ignored, }, Items: &fourslash.CompletionsExpectedItems{ Exact: []fourslash.CompletionsExpectedItem{ "var(--\\\\\\\\, one)", "var(--\\\\\\\\, two)", }, }, }) f.VerifyCompletions(t, "2", &fourslash.CompletionsExpectedList{ IsIncomplete: false, ItemDefaults: &fourslash.CompletionsExpectedItemDefaults{ CommitCharacters: &DefaultCommitCharacters, EditRange: Ignored, }, Items: &fourslash.CompletionsExpectedItems{ Exact: []fourslash.CompletionsExpectedItem{ "\\ntest\\n", }, }, }) f.VerifyCompletions(t, "3", &fourslash.CompletionsExpectedList{ IsIncomplete: false, ItemDefaults: &fourslash.CompletionsExpectedItemDefaults{ CommitCharacters: &DefaultCommitCharacters, EditRange: Ignored, }, Items: &fourslash.CompletionsExpectedItems{ Exact: []fourslash.CompletionsExpectedItem{ "\"double-quoted\"", }, }, }) f.VerifyCompletions(t, "4", &fourslash.CompletionsExpectedList{ IsIncomplete: false, ItemDefaults: &fourslash.CompletionsExpectedItemDefaults{ CommitCharacters: &DefaultCommitCharacters, EditRange: Ignored, }, Items: &fourslash.CompletionsExpectedItems{ Exact: []fourslash.CompletionsExpectedItem{ "\\\"double-quoted\\\"", }, }, }) f.VerifyCompletions(t, "5", &fourslash.CompletionsExpectedList{ IsIncomplete: false, ItemDefaults: &fourslash.CompletionsExpectedItemDefaults{ CommitCharacters: &DefaultCommitCharacters, EditRange: Ignored, }, Items: &fourslash.CompletionsExpectedItems{ Exact: []fourslash.CompletionsExpectedItem{ "'single-quoted'", }, }, }) f.VerifyCompletions(t, "6", &fourslash.CompletionsExpectedList{ IsIncomplete: false, ItemDefaults: &fourslash.CompletionsExpectedItemDefaults{ CommitCharacters: &DefaultCommitCharacters, EditRange: Ignored, }, Items: &fourslash.CompletionsExpectedItems{ Exact: []fourslash.CompletionsExpectedItem{ "\\'single-quoted\\'", }, }, }) f.VerifyCompletions(t, "7", &fourslash.CompletionsExpectedList{ IsIncomplete: false, ItemDefaults: &fourslash.CompletionsExpectedItemDefaults{ CommitCharacters: &DefaultCommitCharacters, EditRange: Ignored, }, Items: &fourslash.CompletionsExpectedItems{ Exact: []fourslash.CompletionsExpectedItem{ "`backtick-quoted`", }, }, }) f.VerifyCompletions(t, "8", &fourslash.CompletionsExpectedList{ IsIncomplete: false, ItemDefaults: &fourslash.CompletionsExpectedItemDefaults{ CommitCharacters: &DefaultCommitCharacters, EditRange: Ignored, }, Items: &fourslash.CompletionsExpectedItems{ Exact: []fourslash.CompletionsExpectedItem{ "\\`backtick-quoted\\`", }, }, }) }