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

53 lines
1.2 KiB
Go

package fourslash_test
import (
"testing"
"efprojects.com/kitten-ipc/kitcom/internal/tsgo/fourslash"
"efprojects.com/kitten-ipc/kitcom/internal/tsgo/testutil"
)
func TestRenameTemplateLiteralsComputedProperties(t *testing.T) {
t.Parallel()
defer testutil.RecoverAndFail(t, "Panic on fourslash test")
const content = `// @Filename: a.ts
interface Obj {
[|[` + "`" + `[|{| "contextRangeIndex": 0 |}num|]` + "`" + `]: number;|]
[|['[|{| "contextRangeIndex": 2 |}bool|]']: boolean;|]
}
let o: Obj = {
[|[` + "`" + `[|{| "contextRangeIndex": 4 |}num|]` + "`" + `]: 0|],
[|['[|{| "contextRangeIndex": 6 |}bool|]']: true|],
};
o = {
[|['[|{| "contextRangeIndex": 8 |}num|]']: 1|],
[|[` + "`" + `[|{| "contextRangeIndex": 10 |}bool|]` + "`" + `]: false|],
};
o.[|num|];
o['[|num|]'];
o["[|num|]"];
o[` + "`" + `[|num|]` + "`" + `];
o.[|bool|];
o['[|bool|]'];
o["[|bool|]"];
o[` + "`" + `[|bool|]` + "`" + `];
export { o };
// @allowJs: true
// @Filename: b.js
import { o as obj } from './a';
obj.[|num|];
obj[` + "`" + `[|num|]` + "`" + `];
obj.[|bool|];
obj[` + "`" + `[|bool|]` + "`" + `];`
f := fourslash.NewFourslash(t, nil /*capabilities*/, content)
f.VerifyBaselineRenameAtRangesWithText(t, nil /*preferences*/, "num", "bool")
}