diff --git a/tests/cases/fourslash/refactorConvertToNamedParameters_classDeclarationAliasing.ts b/tests/cases/fourslash/refactorConvertToNamedParameters_classDeclarationAliasing.ts new file mode 100644 index 00000000000..0914dedd57d --- /dev/null +++ b/tests/cases/fourslash/refactorConvertToNamedParameters_classDeclarationAliasing.ts @@ -0,0 +1,20 @@ +/// + +////class Foo { +//// /*a*/constructor/*b*/(a: number, b: number) { } +////} +////const fooAlias = Foo; +////const newFoo = new fooAlias(1, 2); + +goTo.select("a", "b"); +// Refactor should not make changes +edit.applyRefactor({ + refactorName: "Convert to named parameters", + actionName: "Convert to named parameters", + actionDescription: "Convert to named parameters", + newContent: `class Foo { + constructor(a: number, b: number) { } +} +const fooAlias = Foo; +const newFoo = new fooAlias(1, 2);` +}); \ No newline at end of file diff --git a/tests/cases/fourslash/refactorConvertToNamedParameters_classExpressionHeritage.ts b/tests/cases/fourslash/refactorConvertToNamedParameters_classExpressionHeritage.ts new file mode 100644 index 00000000000..14b9639c2ad --- /dev/null +++ b/tests/cases/fourslash/refactorConvertToNamedParameters_classExpressionHeritage.ts @@ -0,0 +1,26 @@ +/// + +////const foo = class Foo { +//// /*a*/constructor/*b*/(a: number, b: number) { } +////} +////class Bar extends foo { +//// constructor() { +//// super(1, 2); +//// } +////} + +goTo.select("a", "b"); +// Refactor should not make changes +edit.applyRefactor({ + refactorName: "Convert to named parameters", + actionName: "Convert to named parameters", + actionDescription: "Convert to named parameters", + newContent: `const foo = class Foo { + constructor(a: number, b: number) { } +} +class Bar extends foo { + constructor() { + super(1, 2); + } +}` +}); \ No newline at end of file