Skip to content

Commit 927ffef

Browse files
author
Andy
authored
Replace more 'verify.rangeAfterCodeFix' with 'verify.codeFix' (microsoft#18800)
1 parent b839e17 commit 927ffef

File tree

95 files changed

+545
-224
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

95 files changed

+545
-224
lines changed

src/compiler/diagnosticMessages.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3661,7 +3661,7 @@
36613661
"category": "Message",
36623662
"code": 90013
36633663
},
3664-
"Change {0} to {1}.": {
3664+
"Change '{0}' to '{1}'.": {
36653665
"category": "Message",
36663666
"code": 90014
36673667
},

src/harness/fourslash.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2381,7 +2381,7 @@ Actual: ${stringify(fullActual)}`);
23812381
}));
23822382

23832383
return ts.flatMap(ts.deduplicate(diagnosticsForCodeFix, ts.equalOwnProperties), diagnostic => {
2384-
if (errorCode && errorCode !== diagnostic.code) {
2384+
if (errorCode !== undefined && errorCode !== diagnostic.code) {
23852385
return;
23862386
}
23872387

tests/cases/fourslash/codeFixChangeExtendsToImplements.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,7 @@
33
//// interface I {}
44
//// [|/* */ class /* */ C /* */ extends /* */ I|]{}
55

6-
verify.rangeAfterCodeFix("/* */ class /* */ C /* */ implements /* */ I");
6+
verify.codeFix({
7+
description: "Change 'extends' to 'implements'.",
8+
newRangeContent: "/* */ class /* */ C /* */ implements /* */ I",
9+
});

tests/cases/fourslash/codeFixChangeExtendsToImplementsAbstractModifier.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,8 @@
55

66
//// [|abstract class A extends I1 implements I2|] { }
77

8-
verify.rangeAfterCodeFix("abstract class A implements I1, I2");
8+
verify.codeFix({
9+
description: "Change 'extends' to 'implements'.",
10+
// TODO: GH#18794
11+
newRangeContent: "abstract class A implements I1 , I2",
12+
});

tests/cases/fourslash/codeFixChangeExtendsToImplementsTypeParams.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,7 @@
33
////interface I<X> { x: X}
44
////[|class C<T extends string , U> extends I<T>|]{}
55

6-
verify.rangeAfterCodeFix("class C<T extends string , U> implements I<T>");
6+
verify.codeFix({
7+
description: "Change 'extends' to 'implements'.",
8+
newRangeContent: "class C<T extends string , U> implements I<T>",
9+
});

tests/cases/fourslash/codeFixChangeExtendsToImplementsWithDecorator.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,4 +10,8 @@
1010

1111
//// @sealed
1212
//// [|class A extends I1 implements I2 { }|]
13-
verify.rangeAfterCodeFix("class A implements I1, I2 { }");
13+
verify.codeFix({
14+
description: "Change 'extends' to 'implements'.",
15+
// TODO: GH#18794
16+
newRangeContent: "class A implements I1 , I2 { }",
17+
});
Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
11
/// <reference path='fourslash.ts' />
22
//// var x: [|?|] = 12;
33

4-
verify.rangeAfterCodeFix("any");
4+
verify.codeFix({
5+
description: "Change '?' to 'any'.",
6+
newRangeContent: "any",
7+
});

tests/cases/fourslash/codeFixChangeJSDocSyntax10.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,10 @@
22
/// <reference path='fourslash.ts' />
33
//// function f(x: [|number?|]) {
44
//// }
5-
verify.rangeAfterCodeFix("number | null", /*includeWhiteSpace*/ false, /*errorCode*/ 8020, 0);
5+
6+
verify.codeFix({
7+
description: "Change 'number?' to 'number | null'.",
8+
errorCode: 8020,
9+
index: 0,
10+
newRangeContent: "number | null",
11+
});

tests/cases/fourslash/codeFixChangeJSDocSyntax11.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,10 @@
22
/// <reference path='fourslash.ts' />
33
//// var f = function f(x: [|string?|]) {
44
//// }
5-
verify.rangeAfterCodeFix("string | null | undefined", /*includeWhiteSpace*/ false, /*errorCode*/ 8020, 1);
5+
6+
verify.codeFix({
7+
description: "Change 'string?' to 'string | null | undefined'.",
8+
errorCode: 8020,
9+
index: 1,
10+
newRangeContent: "string | null | undefined",
11+
});

tests/cases/fourslash/codeFixChangeJSDocSyntax12.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,10 @@
33
////class C {
44
//// p: [|*|]
55
////}
6-
verify.rangeAfterCodeFix("any", /*includeWhiteSpace*/ false, /*errorCode*/ 8020, 0);
6+
7+
verify.codeFix({
8+
description: "Change '*' to 'any'.",
9+
errorCode: 8020,
10+
index: 0,
11+
newRangeContent: "any",
12+
});

tests/cases/fourslash/codeFixChangeJSDocSyntax13.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,10 @@
33
////class C {
44
//// p: [|*|] = 12
55
////}
6-
verify.rangeAfterCodeFix("any", /*includeWhiteSpace*/ false, /*errorCode*/ 8020, 0);
6+
7+
verify.codeFix({
8+
description: "Change '*' to 'any'.",
9+
errorCode: 8020,
10+
index: 0,
11+
newRangeContent: "any",
12+
});

tests/cases/fourslash/codeFixChangeJSDocSyntax14.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,9 @@
22
/// <reference path='fourslash.ts' />
33
//// var x = 12 as [|number?|];
44

5-
verify.rangeAfterCodeFix("number | null", /*includeWhiteSpace*/ false, /*errorCode*/ 8020, 0);
5+
verify.codeFix({
6+
description: "Change 'number?' to 'number | null'.",
7+
errorCode: 8020,
8+
index: 0,
9+
newRangeContent: "number | null",
10+
});

tests/cases/fourslash/codeFixChangeJSDocSyntax15.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,9 @@
22
//// var f = <[|function(number?): number|]>(x => x);
33

44
// note: without --strict, number? --> number, not number | null
5-
verify.rangeAfterCodeFix("(arg0: number) => number", /*includeWhiteSpace*/ false, /*errorCode*/ 8020, 0);
5+
verify.codeFix({
6+
description: "Change 'function(number?): number' to '(arg0: number) => number'.",
7+
errorCode: 8020,
8+
index: 0,
9+
newRangeContent: "(arg0: number) => number",
10+
});
Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
11
/// <reference path='fourslash.ts' />
22
//// var f: { [K in keyof number]: [|*|] };
33

4-
verify.rangeAfterCodeFix("any");
4+
verify.codeFix({
5+
description: "Change '*' to 'any'.",
6+
newRangeContent: "any",
7+
});
Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
11
/// <reference path='fourslash.ts' />
22
//// declare function index(ix: number): [|*|];
3-
verify.rangeAfterCodeFix("any");
3+
4+
verify.codeFix({
5+
description: "Change '*' to 'any'.",
6+
newRangeContent: "any",
7+
});
Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
11
/// <reference path='fourslash.ts' />
22
//// var index: { (ix: number): [|?|] };
3-
verify.rangeAfterCodeFix("any");
3+
4+
verify.codeFix({
5+
description: "Change '?' to 'any'.",
6+
newRangeContent: "any",
7+
});
Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
11
/// <reference path='fourslash.ts' />
22
//// var index: { new (ix: number): [|?|] };
3-
verify.rangeAfterCodeFix("any");
3+
4+
verify.codeFix({
5+
description: "Change '?' to 'any'.",
6+
newRangeContent: "any",
7+
});
Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
11
/// <reference path='fourslash.ts' />
22
//// var x: [|*|] = 12;
33

4-
verify.rangeAfterCodeFix("any");
4+
verify.codeFix({
5+
description: "Change '*' to 'any'.",
6+
newRangeContent: "any",
7+
});
Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
11
/// <reference path='fourslash.ts' />
22
//// var index = { get p(): [|*|] { return 12 } };
3-
verify.rangeAfterCodeFix("any");
3+
4+
verify.codeFix({
5+
description: "Change '*' to 'any'.",
6+
newRangeContent: "any",
7+
});
Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
11
/// <reference path='fourslash.ts' />
22
//// var index = { set p(x: [|*|]) { } };
3-
verify.rangeAfterCodeFix("any");
3+
4+
verify.codeFix({
5+
description: "Change '*' to 'any'.",
6+
newRangeContent: "any",
7+
});
Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
11
/// <reference path='fourslash.ts' />
22
//// var index: { [s: string]: [|*|] };
3-
verify.rangeAfterCodeFix("any");
3+
4+
verify.codeFix({
5+
description: "Change '*' to 'any'.",
6+
newRangeContent: "any",
7+
});

tests/cases/fourslash/codeFixChangeJSDocSyntax23.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,8 @@
33
//// m(): [|*|] {
44
//// }
55
////}
6-
verify.rangeAfterCodeFix("any");
6+
7+
verify.codeFix({
8+
description: "Change '*' to 'any'.",
9+
newRangeContent: "any",
10+
});

tests/cases/fourslash/codeFixChangeJSDocSyntax24.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,8 @@
22
////declare class C {
33
//// m(): [|*|];
44
////}
5-
verify.rangeAfterCodeFix("any");
5+
6+
verify.codeFix({
7+
description: "Change '*' to 'any'.",
8+
newRangeContent: "any",
9+
});

tests/cases/fourslash/codeFixChangeJSDocSyntax25.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,8 @@
22
////declare class C {
33
//// p: [|*|];
44
////}
5-
verify.rangeAfterCodeFix("any");
5+
6+
verify.codeFix({
7+
description: "Change '*' to 'any'.",
8+
newRangeContent: "any",
9+
});

tests/cases/fourslash/codeFixChangeJSDocSyntax26.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,8 @@
22
////class C {
33
//// p: [|*|] = 12;
44
////}
5-
verify.rangeAfterCodeFix("any");
5+
6+
verify.codeFix({
7+
description: "Change '*' to 'any'.",
8+
newRangeContent: "any",
9+
});
Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,10 @@
11
// @strict: true
22
/// <reference path='fourslash.ts' />
33
////type T = [|...number?|];
4-
verify.rangeAfterCodeFix("number[] | null", /*includeWhiteSpace*/ false, /*errorCode*/ 8020, 0);
4+
5+
verify.codeFix({
6+
description: "Change '...number?' to 'number[] | null'.",
7+
errorCode: 8020,
8+
index: 0,
9+
newRangeContent: "number[] | null",
10+
});
Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
11
/// <reference path='fourslash.ts' />
22
//// var x: [|......number[][]|] = 12;
33

4-
verify.rangeAfterCodeFix("number[][][][]");
4+
verify.codeFix({
5+
description: "Change '......number[][]' to 'number[][][][]'.",
6+
newRangeContent: "number[][][][]",
7+
});
Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
11
/// <reference path='fourslash.ts' />
22
//// var x: [|Array.<number>|] = 12;
33

4-
verify.rangeAfterCodeFix("number[]");
4+
verify.codeFix({
5+
description: "Change 'Array.<number>' to 'number[]'.",
6+
newRangeContent: "number[]",
7+
});

tests/cases/fourslash/codeFixChangeJSDocSyntax5.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,9 @@
22
/// <reference path='fourslash.ts' />
33
//// var x: [|?number|] = 12;
44

5-
verify.rangeAfterCodeFix("number | null", /*includeWhiteSpace*/ false, /*errorCode*/ 8020, 0);
5+
verify.codeFix({
6+
description: "Change '?number' to 'number | null'.",
7+
errorCode: 8020,
8+
index: 0,
9+
newRangeContent: "number | null",
10+
});

tests/cases/fourslash/codeFixChangeJSDocSyntax6.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,8 @@
22
/// <reference path='fourslash.ts' />
33
//// var x: [|number?|] = 12;
44

5-
verify.rangeAfterCodeFix("number | null | undefined", /*includeWhiteSpace*/ undefined, /*errorCode*/ undefined, 1);
5+
verify.codeFix({
6+
description: "Change 'number?' to 'number | null | undefined'.",
7+
index: 1,
8+
newRangeContent: "number | null | undefined",
9+
});
Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
11
/// <reference path='fourslash.ts' />
22
//// var x: [|!number|] = 12;
33

4-
verify.rangeAfterCodeFix("number");
4+
verify.codeFix({
5+
description: "Change '!number' to 'number'.",
6+
newRangeContent: "number",
7+
});
Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
11
/// <reference path='fourslash.ts' />
22
//// var x: [|function(this: number, number): string|] = 12;
33

4-
verify.rangeAfterCodeFix("(this: number, arg1: number) => string");
4+
verify.codeFix({
5+
description: "Change 'function(this: number, number): string' to '(this: number, arg1: number) => string'.",
6+
newRangeContent: "(this: number, arg1: number) => string",
7+
});
Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
11
/// <reference path='fourslash.ts' />
22
//// var x: [|function(new: number)|] = 12;
33

4-
verify.rangeAfterCodeFix("new () => number");
4+
verify.codeFix({
5+
description: "Change 'function(new: number)' to 'new () => number'.",
6+
newRangeContent: "new () => number",
7+
});
Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,16 @@
11
/// <reference path='fourslash.ts' />
22

3-
//// class A {
4-
//// f() {}
5-
//// }
3+
////class A {
4+
//// f() {}
5+
////}
66
////
7-
//// let B = class implements A {[| |]}
7+
////let B = class implements A {[| |]}
88

9-
verify.rangeAfterCodeFix(`
10-
f(): void{
11-
throw new Error("Method not implemented.");
12-
}
13-
`);
9+
verify.codeFix({
10+
description: "Implement interface 'A'.",
11+
// TODO: GH#18795
12+
newRangeContent: `f(): void {\r
13+
throw new Error("Method not implemented.");\r
14+
}\r
15+
`
16+
});
Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,17 @@
11
/// <reference path='fourslash.ts' />
22

3-
//// function foo<T>(a: T) {
4-
//// abstract class C<U> {
5-
//// abstract a: T | U;
6-
//// }
7-
//// return C;
8-
//// }
3+
////function foo<T>(a: T) {
4+
//// abstract class C<U> {
5+
//// abstract a: T | U;
6+
//// }
7+
//// return C;
8+
////}
99
////
10-
//// let B = class extends foo("s")<number> {[| |]}
10+
////let B = class extends foo("s")<number> {[| |]}
1111

12-
verify.rangeAfterCodeFix(`
13-
a: string | number;
14-
`);
12+
verify.codeFix({
13+
description: "Implement inherited abstract class.",
14+
// TODO: GH#18795
15+
newRangeContent: `a: string | number;\r
16+
`
17+
});

0 commit comments

Comments
 (0)