From 018026ad52fcc86e2ddd8241a2db80d29b9f0805 Mon Sep 17 00:00:00 2001 From: Sheetal Nandi Date: Thu, 6 Jun 2019 09:49:31 -0700 Subject: [PATCH] More tests --- .../cases/fourslash/ambientShorthandFindAllRefs.ts | 7 +++---- .../cancellationWhenfindingAllRefsOnDefinition.ts | 6 +++--- tests/cases/fourslash/doubleUnderscoreRenames.ts | 8 ++++---- tests/cases/fourslash/duplicatePackageServices.ts | 14 +++++++------- .../fourslash/esModuleInteropFindAllReferences.ts | 4 ++-- .../fourslash/esModuleInteropFindAllReferences2.ts | 4 ++-- ...lReferPropertyAccessExpressionHeritageClause.ts | 4 ++-- .../fourslash/findAllReferencesDynamicImport2.ts | 6 +++--- .../fourslash/findAllReferencesDynamicImport3.ts | 6 +++--- .../fourslash/findAllReferencesJSDocFunctionNew.ts | 4 ++-- .../fourslash/findAllReferencesOfConstructor.ts | 9 ++++----- .../findAllReferencesOfConstructor_badOverload.ts | 6 +++--- .../fourslash/findAllReferencesOfJsonModule.ts | 4 ++-- .../findAllReferencesUmdModuleAsGlobalConst.ts | 7 ++++--- tests/cases/fourslash/findAllRefsBadImport.ts | 4 ++-- .../cases/fourslash/findAllRefsClassExpression0.ts | 8 ++++---- .../cases/fourslash/findAllRefsClassExpression1.ts | 6 +++--- .../cases/fourslash/findAllRefsClassExpression2.ts | 6 +++--- .../findAllRefsClassWithStaticThisAccess.ts | 6 +++--- .../fourslash/findAllRefsConstructorFunctions.ts | 6 +++--- tests/cases/fourslash/findAllRefsDeclareClass.ts | 6 +++--- tests/cases/fourslash/findAllRefsDefaultImport.ts | 6 +++--- .../findAllRefsDefaultImportThroughNamespace.ts | 6 +++--- tests/cases/fourslash/findAllRefsDefinition.ts | 4 ++-- .../fourslash/findAllRefsDestructureGeneric.ts | 6 +++--- .../fourslash/findAllRefsDestructureGetter.ts | 8 ++++---- .../fourslash/findAllRefsDestructureGetter2.ts | 8 ++++---- .../fourslash/shims-pp/getReferencesAtPosition.ts | 6 +++--- tests/cases/fourslash/shims-pp/getRenameInfo.ts | 6 +++--- .../fourslash/shims/getReferencesAtPosition.ts | 6 +++--- tests/cases/fourslash/shims/getRenameInfo.ts | 6 +++--- 31 files changed, 96 insertions(+), 97 deletions(-) diff --git a/tests/cases/fourslash/ambientShorthandFindAllRefs.ts b/tests/cases/fourslash/ambientShorthandFindAllRefs.ts index 14918f4a449..822a70ccaf6 100644 --- a/tests/cases/fourslash/ambientShorthandFindAllRefs.ts +++ b/tests/cases/fourslash/ambientShorthandFindAllRefs.ts @@ -4,13 +4,12 @@ ////declare module "jquery"; // @Filename: user.ts -////import {[|{| "isWriteAccess": true, "isDefinition": true |}x|]} from "jquery"; +////[|import {[|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 0 |}x|]} from "jquery";|] // @Filename: user2.ts -////import {[|{| "isWriteAccess": true, "isDefinition": true |}x|]} from "jquery"; +////[|import {[|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 2 |}x|]} from "jquery";|] -const ranges = test.ranges(); -const [r0, r1] = ranges; +const [r0Def, r0, r1Def, r1] = test.ranges(); // TODO: Want these to be in the same group, but that would require creating a symbol for `x`. verify.singleReferenceGroup("(alias) module \"jquery\"\nimport x", [r0]); verify.singleReferenceGroup("(alias) module \"jquery\"\nimport x", [r1]); \ No newline at end of file diff --git a/tests/cases/fourslash/cancellationWhenfindingAllRefsOnDefinition.ts b/tests/cases/fourslash/cancellationWhenfindingAllRefsOnDefinition.ts index 9334ab28b48..a6ff91fbbd5 100644 --- a/tests/cases/fourslash/cancellationWhenfindingAllRefsOnDefinition.ts +++ b/tests/cases/fourslash/cancellationWhenfindingAllRefsOnDefinition.ts @@ -7,9 +7,9 @@ //// //// } //// -//// public /**/[|{| "isWriteAccess": true, "isDefinition": true |}start|](){ +//// [|public /**/[|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 0 |}start|](){ //// return this; -//// } +//// }|] //// //// public stop(){ //// return this; @@ -33,5 +33,5 @@ cancellation.resetCancelled(); checkRefs(); function checkRefs() { - verify.singleReferenceGroup("(method) Test.start(): this"); + verify.singleReferenceGroup("(method) Test.start(): this", "start"); } diff --git a/tests/cases/fourslash/doubleUnderscoreRenames.ts b/tests/cases/fourslash/doubleUnderscoreRenames.ts index 5709be97b6f..6b50d65f124 100644 --- a/tests/cases/fourslash/doubleUnderscoreRenames.ts +++ b/tests/cases/fourslash/doubleUnderscoreRenames.ts @@ -1,12 +1,12 @@ /// // @Filename: fileA.ts -//// export function [|__foo|]() { -//// } +//// [|export function [|{| "declarationRangeIndex": 0 |}__foo|]() { +//// }|] //// // @Filename: fileB.ts -//// import { [|__foo|] as bar } from "./fileA"; +//// [|import { [|{| "declarationRangeIndex": 2 |}__foo|] as bar } from "./fileA";|] //// //// bar(); -verify.rangesAreRenameLocations(); +verify.rangesWithSameTextAreRenameLocations("__foo"); diff --git a/tests/cases/fourslash/duplicatePackageServices.ts b/tests/cases/fourslash/duplicatePackageServices.ts index 2ececda4e06..e5653f9da6d 100644 --- a/tests/cases/fourslash/duplicatePackageServices.ts +++ b/tests/cases/fourslash/duplicatePackageServices.ts @@ -2,25 +2,25 @@ // @noImplicitReferences: true // @Filename: /node_modules/a/index.d.ts -////import [|{| "name": "useAX", "isWriteAccess": true, "isDefinition": true |}X|] from "x"; +////[|import [|{| "name": "useAX", "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 0 |}X|] from "x";|] ////export function a(x: [|X|]): void; // @Filename: /node_modules/a/node_modules/x/index.d.ts -////export default class /*defAX*/[|{| "isWriteAccess": true, "isDefinition": true |}X|] { +////[|export default class /*defAX*/[|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 3 |}X|] { //// private x: number; -////} +////}|] // @Filename: /node_modules/a/node_modules/x/package.json ////{ "name": "x", "version": "1.2.3" } // @Filename: /node_modules/b/index.d.ts -////import [|{| "name": "useBX", "isWriteAccess": true, "isDefinition": true |}X|] from "x"; +////[|import [|{| "name": "useBX", "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 5 |}X|] from "x";|] ////export const b: [|X|]; // @Filename: /node_modules/b/node_modules/x/index.d.ts -////export default class /*defBX*/[|{| "isWriteAccess": true, "isDefinition": true |}X|] { +////[|export default class /*defBX*/[|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 8 |}X|] { //// private x: number; -////} +////}|] // @Filename: /node_modules/b/node_modules/x/package.json ////{ "name": "x", "version": "1.2.3" } @@ -35,7 +35,7 @@ verify.numberOfErrorsInCurrentFile(0); verify.goToDefinition("useAX", "defAX"); verify.goToDefinition("useBX", "defAX"); -const [r0, r1, r2, r3, r4, r5] = test.ranges(); +const [r0Def, r0, r1, r2Def, r2, r3Def, r3, r4, r5Def, r5] = test.ranges(); const aImport = { definition: "(alias) class X\nimport X", ranges: [r0, r1] }; const def = { definition: "class X", ranges: [r2] }; const bImport = { definition: "(alias) class X\nimport X", ranges: [r3, r4] }; diff --git a/tests/cases/fourslash/esModuleInteropFindAllReferences.ts b/tests/cases/fourslash/esModuleInteropFindAllReferences.ts index 4e493e58c24..e1ca3e4c9b1 100644 --- a/tests/cases/fourslash/esModuleInteropFindAllReferences.ts +++ b/tests/cases/fourslash/esModuleInteropFindAllReferences.ts @@ -4,11 +4,11 @@ // @Filename: /abc.d.ts ////declare module "a" { -//// export const [|{| "isWriteAccess": true, "isDefinition": true |}x|]: number; +//// [|export const [|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 0 |}x|]: number;|] ////} // @Filename: /b.ts ////import a from "a"; ////a.[|x|]; -verify.singleReferenceGroup("const x: number"); +verify.singleReferenceGroup("const x: number", "x"); diff --git a/tests/cases/fourslash/esModuleInteropFindAllReferences2.ts b/tests/cases/fourslash/esModuleInteropFindAllReferences2.ts index e55129a357c..02dbddd6b4e 100644 --- a/tests/cases/fourslash/esModuleInteropFindAllReferences2.ts +++ b/tests/cases/fourslash/esModuleInteropFindAllReferences2.ts @@ -6,10 +6,10 @@ // @Filename: /a.d.ts ////export as namespace abc; -////export const [|{| "isWriteAccess": true, "isDefinition": true |}x|]: number; +////[|export const [|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 0 |}x|]: number;|] // @Filename: /b.ts ////import a from "./a"; ////a.[|x|]; -verify.singleReferenceGroup('const x: number'); +verify.singleReferenceGroup('const x: number', "x"); diff --git a/tests/cases/fourslash/findAllReferPropertyAccessExpressionHeritageClause.ts b/tests/cases/fourslash/findAllReferPropertyAccessExpressionHeritageClause.ts index 61dfb1c33bc..9e9f552b528 100644 --- a/tests/cases/fourslash/findAllReferPropertyAccessExpressionHeritageClause.ts +++ b/tests/cases/fourslash/findAllReferPropertyAccessExpressionHeritageClause.ts @@ -2,9 +2,9 @@ //// class B {} //// function foo() { -//// return {[|{| "isWriteAccess": true, "isDefinition": true |}B|]: B}; +//// return {[|[|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 0 |}B|]: B|]}; //// } //// class C extends (foo()).[|B|] {} //// class C1 extends foo().[|B|] {} -verify.singleReferenceGroup("(property) B: typeof B"); +verify.singleReferenceGroup("(property) B: typeof B", "B"); diff --git a/tests/cases/fourslash/findAllReferencesDynamicImport2.ts b/tests/cases/fourslash/findAllReferencesDynamicImport2.ts index 6644a55ec1b..5e90911875b 100644 --- a/tests/cases/fourslash/findAllReferencesDynamicImport2.ts +++ b/tests/cases/fourslash/findAllReferencesDynamicImport2.ts @@ -1,12 +1,12 @@ /// // @Filename: foo.ts -//// export function [|{| "isWriteAccess": true, "isDefinition": true |}bar|]() { return "bar"; } +//// [|export function [|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 0 |}bar|]() { return "bar"; }|] //// var x = import("./foo"); //// x.then(foo => { //// foo.[|bar|](); //// }) -verify.singleReferenceGroup("function bar(): string"); -verify.rangesAreRenameLocations(); +verify.singleReferenceGroup("function bar(): string", "bar"); +verify.rangesWithSameTextAreRenameLocations("bar"); diff --git a/tests/cases/fourslash/findAllReferencesDynamicImport3.ts b/tests/cases/fourslash/findAllReferencesDynamicImport3.ts index 371369ac39c..1035ff40389 100644 --- a/tests/cases/fourslash/findAllReferencesDynamicImport3.ts +++ b/tests/cases/fourslash/findAllReferencesDynamicImport3.ts @@ -1,10 +1,10 @@ /// // @Filename: foo.ts -////export function [|{| "isWriteAccess": true, "isDefinition": true |}bar|]() { return "bar"; } -////import('./foo').then(({ [|{| "isWriteAccess": true, "isDefinition": true |}bar|] }) => undefined); +////[|export function [|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 0 |}bar|]() { return "bar"; }|] +////import('./foo').then(([|{ [|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 2 |}bar|] }|]) => undefined); -const [r0, r1] = test.ranges(); +const [r0Def, r0, r1Def, r1] = test.ranges(); verify.referenceGroups(r0, [{ definition: "function bar(): string", ranges: [r0, r1] }]); verify.referenceGroups(r1, [ { definition: "function bar(): string", ranges: [r0] }, diff --git a/tests/cases/fourslash/findAllReferencesJSDocFunctionNew.ts b/tests/cases/fourslash/findAllReferencesJSDocFunctionNew.ts index b094714cefb..50066b9b136 100644 --- a/tests/cases/fourslash/findAllReferencesJSDocFunctionNew.ts +++ b/tests/cases/fourslash/findAllReferencesJSDocFunctionNew.ts @@ -1,8 +1,8 @@ /// // @allowJs: true // @Filename: Foo.js -/////** @type {function ([|{|"isWriteAccess": true, "isDefinition": true|}new|]: string, string): string} */ +/////** @type {function ([|[|{|"isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 0|}new|]: string|], string): string} */ ////var f; -const [a0] = test.ranges(); +const [a0Def, a0] = test.ranges(); verify.singleReferenceGroup("(parameter) new: string", [a0]); diff --git a/tests/cases/fourslash/findAllReferencesOfConstructor.ts b/tests/cases/fourslash/findAllReferencesOfConstructor.ts index 3dffdeaffb9..ecaada06b1d 100644 --- a/tests/cases/fourslash/findAllReferencesOfConstructor.ts +++ b/tests/cases/fourslash/findAllReferencesOfConstructor.ts @@ -2,9 +2,9 @@ // @Filename: a.ts ////export class C { -//// [|constructor|](n: number); -//// [|constructor|](); -//// [|constructor|](n?: number){} +//// [|[|{| "declarationRangeIndex": 0 |}constructor|](n: number);|] +//// [|[|{| "declarationRangeIndex": 2 |}constructor|]();|] +//// [|[|{| "declarationRangeIndex": 4 |}constructor|](n?: number){}|] //// static f() { //// this.f(); //// new [|this|](); @@ -40,8 +40,7 @@ ////new a.[|C|](); ////class d extends a.C { constructor() { [|super|](); } -const ranges = test.ranges(); -const [a0, a1, a2, a3, a4, b0, c0, d0, d1] = ranges; +const [a0Def, a0, a1Def, a1, a2Def, a2, a3, a4, b0, c0, d0, d1] = test.ranges(); verify.referenceGroups([a0, a2], defs("class C")); verify.referenceGroups(a1, defs("class C")); diff --git a/tests/cases/fourslash/findAllReferencesOfConstructor_badOverload.ts b/tests/cases/fourslash/findAllReferencesOfConstructor_badOverload.ts index 2c4857145e1..ef4dc289359 100644 --- a/tests/cases/fourslash/findAllReferencesOfConstructor_badOverload.ts +++ b/tests/cases/fourslash/findAllReferencesOfConstructor_badOverload.ts @@ -1,8 +1,8 @@ /// ////class C { -//// [|constructor|](n: number); -//// [|constructor|](){} +//// [|[|{| "declarationRangeIndex": 0 |}constructor|](n: number);|] +//// [|[|{| "declarationRangeIndex": 2 |}constructor|](){}|] ////} -verify.singleReferenceGroup("class C"); +verify.singleReferenceGroup("class C", "constructor"); diff --git a/tests/cases/fourslash/findAllReferencesOfJsonModule.ts b/tests/cases/fourslash/findAllReferencesOfJsonModule.ts index 36f700b09e6..fd944097299 100644 --- a/tests/cases/fourslash/findAllReferencesOfJsonModule.ts +++ b/tests/cases/fourslash/findAllReferencesOfJsonModule.ts @@ -5,10 +5,10 @@ // @esModuleInterop: true // @Filename: /foo.ts -////import [|{| "isWriteAccess": true, "isDefinition": true |}settings|] from "./settings.json"; +////[|import [|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 0 |}settings|] from "./settings.json";|] ////[|settings|]; // @Filename: /settings.json //// {} -verify.singleReferenceGroup("import settings"); +verify.singleReferenceGroup("import settings", "settings"); diff --git a/tests/cases/fourslash/findAllReferencesUmdModuleAsGlobalConst.ts b/tests/cases/fourslash/findAllReferencesUmdModuleAsGlobalConst.ts index 464dcef1548..4876b1e0229 100644 --- a/tests/cases/fourslash/findAllReferencesUmdModuleAsGlobalConst.ts +++ b/tests/cases/fourslash/findAllReferencesUmdModuleAsGlobalConst.ts @@ -9,12 +9,12 @@ // @Filename: /node_modules/@types/three/index.d.ts ////export * from "./three-core"; -////export as namespace [|{| "isWriteAccess": true, "isDefinition": true |}THREE|]; +////[|export as namespace [|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 0 |}THREE|];|] // @Filename: /typings/global.d.ts ////import * as _THREE from '[|three|]'; ////declare global { -//// const [|{| "isWriteAccess": true, "isDefinition": true |}THREE|]: typeof _THREE; +//// [|const [|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 3 |}THREE|]: typeof _THREE;|] ////} // @Filename: /src/index.ts @@ -38,7 +38,8 @@ //// "files": ["/src/index.ts", "typings/global.d.ts"] ////} +const [r0Def, r0, r1, r2Def, ...rest] = test.ranges(); // GH#29533 // TODO:: this should be var THREE: typeof import instead of module name as var but thats existing issue and repros with quickInfo too. verify.singleReferenceGroup(`module "/node_modules/@types/three/index" -var "/node_modules/@types/three/index": typeof import("/node_modules/@types/three/index")`); \ No newline at end of file +var "/node_modules/@types/three/index": typeof import("/node_modules/@types/three/index")`, [r0, r1, ...rest]); \ No newline at end of file diff --git a/tests/cases/fourslash/findAllRefsBadImport.ts b/tests/cases/fourslash/findAllRefsBadImport.ts index a54454ea365..cde75d2df9a 100644 --- a/tests/cases/fourslash/findAllRefsBadImport.ts +++ b/tests/cases/fourslash/findAllRefsBadImport.ts @@ -1,7 +1,7 @@ /// -////import { [|ab|] as [|{| "isWriteAccess": true, "isDefinition": true |}cd|] } from "doesNotExist"; +////[|import { [|{| "declarationRangeIndex": 0 |}ab|] as [|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 0 |}cd|] } from "doesNotExist";|] -const [r0, r1] = test.ranges(); +const [r0Def, r0, r1] = test.ranges(); verify.referenceGroups(r0, undefined); verify.singleReferenceGroup("import cd", [r1]); diff --git a/tests/cases/fourslash/findAllRefsClassExpression0.ts b/tests/cases/fourslash/findAllRefsClassExpression0.ts index e8d4aa671a3..9ccff25ab96 100644 --- a/tests/cases/fourslash/findAllRefsClassExpression0.ts +++ b/tests/cases/fourslash/findAllRefsClassExpression0.ts @@ -1,15 +1,15 @@ /// // @Filename: /a.ts -////export = class [|{| "isWriteAccess": true, "isDefinition": true |}A|] { +////export = [|class [|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 0 |}A|] { //// m() { [|A|]; } -////}; +////}|]; // @Filename: /b.ts -////import [|{| "isWriteAccess": true, "isDefinition": true |}A|] = require("./a"); +////[|import [|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 3 |}A|] = require("./a");|] ////[|A|]; -const [r0, r1, r2, r3] = test.ranges(); +const [r0Def, r0, r1, r2Def, r2, r3] = test.ranges(); const defs = { definition: "(local class) A", ranges: [r0, r1] }; const imports = { definition: '(alias) (local class) A\nimport A = require("./a")', ranges: [r2, r3] }; verify.referenceGroups([r0, r1], [defs, imports]); diff --git a/tests/cases/fourslash/findAllRefsClassExpression1.ts b/tests/cases/fourslash/findAllRefsClassExpression1.ts index 64aad512a5e..96bba426a25 100644 --- a/tests/cases/fourslash/findAllRefsClassExpression1.ts +++ b/tests/cases/fourslash/findAllRefsClassExpression1.ts @@ -3,13 +3,13 @@ // @allowJs: true // @Filename: /a.js -////module.exports = class [|{| "isWriteAccess": true, "isDefinition": true |}A|] {}; +////module.exports = [|class [|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 0 |}A|] {}|]; // @Filename: /b.js -////import [|{| "isWriteAccess": true, "isDefinition": true |}A|] = require("./a"); +////[|import [|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 2 |}A|] = require("./a");|] ////[|A|]; -const [r0, r1, r2] = test.ranges(); +const [r0Def, r0, r1Def, r1, r2] = test.ranges(); const defs = { definition: "(local class) A", ranges: [r0] }; const imports = { definition: '(alias) (local class) A\nimport A = require("./a")', ranges: [r1, r2] }; verify.referenceGroups([r0], [defs, imports]); diff --git a/tests/cases/fourslash/findAllRefsClassExpression2.ts b/tests/cases/fourslash/findAllRefsClassExpression2.ts index 1214e3f7c88..9432e9e7181 100644 --- a/tests/cases/fourslash/findAllRefsClassExpression2.ts +++ b/tests/cases/fourslash/findAllRefsClassExpression2.ts @@ -3,13 +3,13 @@ // @allowJs: true // @Filename: /a.js -////exports.[|{| "isWriteAccess": true, "isDefinition": true |}A|] = class {}; +////[|exports.[|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 0 |}A|] = class {};|] // @Filename: /b.js -////import { [|{| "isWriteAccess": true, "isDefinition": true |}A|] } from "./a"; +////[|import { [|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 2 |}A|] } from "./a";|] ////[|A|]; -const [r0, r1, r2] = test.ranges(); +const [r0Def, r0, r1Def, r1, r2] = test.ranges(); const defs = { definition: "class A\n(property) A: typeof A", ranges: [r0] }; const imports = { definition: "(alias) class A\n(alias) (property) A: typeof A\nimport A", ranges: [r1, r2] }; verify.referenceGroups([r0], [defs, imports]); diff --git a/tests/cases/fourslash/findAllRefsClassWithStaticThisAccess.ts b/tests/cases/fourslash/findAllRefsClassWithStaticThisAccess.ts index f2c432abc76..419f61836d3 100644 --- a/tests/cases/fourslash/findAllRefsClassWithStaticThisAccess.ts +++ b/tests/cases/fourslash/findAllRefsClassWithStaticThisAccess.ts @@ -1,6 +1,6 @@ /// -////class [|{| "isWriteAccess": true, "isDefinition": true |}C|] { +////[|class [|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 0 |}C|] { //// static s() { //// [|this|]; //// } @@ -10,9 +10,9 @@ //// function inner() { this; } //// class Inner { x = this; } //// } -////} +////}|] -const [r0, r1, r2] = test.ranges(); +const [r0Def, r0, r1, r2] = test.ranges(); verify.referenceGroups(r0, [{ definition: "class C", ranges: [r0, r1, r2] }]); verify.singleReferenceGroup("this: typeof C", [r1, r2]); diff --git a/tests/cases/fourslash/findAllRefsConstructorFunctions.ts b/tests/cases/fourslash/findAllRefsConstructorFunctions.ts index 77fa674f65b..8f95f94da2b 100644 --- a/tests/cases/fourslash/findAllRefsConstructorFunctions.ts +++ b/tests/cases/fourslash/findAllRefsConstructorFunctions.ts @@ -4,11 +4,11 @@ // @Filename: /a.js ////function f() { -//// this.[|{| "isWriteAccess": true, "isDefinition": true |}x|] = 0; +//// [|this.[|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 0 |}x|] = 0;|] ////} ////f.prototype.setX = function() { -//// this.[|{| "isWriteAccess": true, "isDefinition": true |}x|] = 1; +//// [|this.[|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 2 |}x|] = 1;|] ////} ////f.prototype.useX = function() { this.[|x|]; } -verify.singleReferenceGroup("(property) f.x: number"); +verify.singleReferenceGroup("(property) f.x: number", "x"); diff --git a/tests/cases/fourslash/findAllRefsDeclareClass.ts b/tests/cases/fourslash/findAllRefsDeclareClass.ts index 9ef813634a5..4632f48c527 100644 --- a/tests/cases/fourslash/findAllRefsDeclareClass.ts +++ b/tests/cases/fourslash/findAllRefsDeclareClass.ts @@ -1,7 +1,7 @@ /// -////declare class [|{| "isWriteAccess": true, "isDefinition": true |}C|] { +////[|declare class [|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 0 |}C|] { //// static m(): void; -////} +////}|] -verify.singleReferenceGroup("class C"); +verify.singleReferenceGroup("class C", "C"); diff --git a/tests/cases/fourslash/findAllRefsDefaultImport.ts b/tests/cases/fourslash/findAllRefsDefaultImport.ts index b981f50bd16..23b7c8af76a 100644 --- a/tests/cases/fourslash/findAllRefsDefaultImport.ts +++ b/tests/cases/fourslash/findAllRefsDefaultImport.ts @@ -1,12 +1,12 @@ /// // @Filename: /a.ts -////export default function [|{| "isWriteAccess": true, "isDefinition": true |}a|]() {} +////[|export default function [|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 0 |}a|]() {}|] // @Filename: /b.ts -////import [|{| "isWriteAccess": true, "isDefinition": true |}a|], * as ns from "./a"; +////[|import [|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 2 |}a|], * as ns from "./a";|] -const [r0, r1] = test.ranges(); +const [r0Def, r0, r1Def, r1] = test.ranges(); const a: FourSlashInterface.ReferenceGroup = { definition: "function a(): void", ranges: [r0] }; const b: FourSlashInterface.ReferenceGroup = { definition: "(alias) function a(): void\nimport a", ranges: [r1] }; verify.referenceGroups(r0, [a, b]); diff --git a/tests/cases/fourslash/findAllRefsDefaultImportThroughNamespace.ts b/tests/cases/fourslash/findAllRefsDefaultImportThroughNamespace.ts index 722403f45cf..ca99174463b 100644 --- a/tests/cases/fourslash/findAllRefsDefaultImportThroughNamespace.ts +++ b/tests/cases/fourslash/findAllRefsDefaultImportThroughNamespace.ts @@ -1,7 +1,7 @@ /// // @Filename: /a.ts -////export [|{| "isWriteAccess": true, "isDefinition": true |}default|] function [|{| "isWriteAccess": true, "isDefinition": true |}f|]() {} +////[|export [|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 0 |}default|] function [|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 0 |}f|]() {}|] // @Filename: /b.ts ////export import a = require("./a"); @@ -10,10 +10,10 @@ ////import { a } from "./b"; ////a.[|default|](); //// -////declare const x: { [|{| "isWriteAccess": true, "isDefinition": true |}default|]: number }; +////declare const x: { [|[|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 4 |}default|]: number|] }; ////x.[|default|]; -const [r0, r1, r2, r3, r4] = test.ranges(); +const [r0Def, r0, r1, r2, r3Def, r3, r4] = test.ranges(); verify.referenceGroups([r0], [{ definition: "function f(): void", ranges: [r0, r2] }]); verify.singleReferenceGroup("function f(): void", [r1, r2]); diff --git a/tests/cases/fourslash/findAllRefsDefinition.ts b/tests/cases/fourslash/findAllRefsDefinition.ts index 7b7016e7049..4d9d50a618a 100644 --- a/tests/cases/fourslash/findAllRefsDefinition.ts +++ b/tests/cases/fourslash/findAllRefsDefinition.ts @@ -1,9 +1,9 @@ /// -////const [|{| "isWriteAccess": true, "isDefinition": true |}x|] = 0; +////[|const [|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 0 |}x|] = 0;|] ////[|x|]; -const ranges = test.ranges(); +const ranges = test.rangesByText().get("x"); verify.referenceGroups(ranges, [ { definition: { text: "const x: 0", range: ranges[0] }, diff --git a/tests/cases/fourslash/findAllRefsDestructureGeneric.ts b/tests/cases/fourslash/findAllRefsDestructureGeneric.ts index 3d7a84cb35a..d6e96155ec7 100644 --- a/tests/cases/fourslash/findAllRefsDestructureGeneric.ts +++ b/tests/cases/fourslash/findAllRefsDestructureGeneric.ts @@ -1,12 +1,12 @@ /// ////interface I { -//// [|{| "isDefinition": true |}x|]: boolean; +//// [|[|{| "isDefinition": true, "declarationRangeIndex": 0 |}x|]: boolean;|] ////} ////declare const i: I; -////const { [|{| "isWriteAccess": true, "isDefinition": true |}x|] } = i; +////[|const { [|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 2 |}x|] } = i;|] -const [r0, r1] = test.ranges(); +const [r0Def, r0, r1Def, r1] = test.ranges(); verify.referenceGroups(r0, [{ definition: "(property) I.x: boolean", ranges: [r0, r1] }]); verify.referenceGroups(r1, [ diff --git a/tests/cases/fourslash/findAllRefsDestructureGetter.ts b/tests/cases/fourslash/findAllRefsDestructureGetter.ts index 763d3cfb0e5..ed4a74d5d2b 100644 --- a/tests/cases/fourslash/findAllRefsDestructureGetter.ts +++ b/tests/cases/fourslash/findAllRefsDestructureGetter.ts @@ -1,14 +1,14 @@ /// ////class Test { -//// get [|{| "isDefinition": true, "isWriteAccess": true |}x|]() { return 0; } +//// [|get [|{| "isDefinition": true, "isWriteAccess": true, "declarationRangeIndex": 0 |}x|]() { return 0; }|] //// -//// set [|{| "isDefinition": true, "isWriteAccess": true |}y|](a: number) {} +//// [|set [|{| "isDefinition": true, "isWriteAccess": true, "declarationRangeIndex": 2 |}y|](a: number) {}|] ////} -////const { [|{| "isDefinition": true, "isWriteAccess": true |}x|], [|{| "isDefinition": true, "isWriteAccess": true |}y|] } = new Test(); +////[|const { [|{| "isDefinition": true, "isWriteAccess": true, "declarationRangeIndex": 4 |}x|], [|{| "isDefinition": true, "isWriteAccess": true, "declarationRangeIndex": 4 |}y|] } = new Test();|] ////[|x|]; [|y|]; -const [x0, y0, x1, y1, x2, y2] = test.ranges(); +const [x0Def, x0, y0Def, y0, xy1Def, x1, y1, x2, y2] = test.ranges(); verify.referenceGroups(x0, [{ definition: "(property) Test.x: number", ranges: [x0, x1] }]); verify.referenceGroups(x1, [ { definition: "(property) Test.x: number", ranges: [x0] }, diff --git a/tests/cases/fourslash/findAllRefsDestructureGetter2.ts b/tests/cases/fourslash/findAllRefsDestructureGetter2.ts index d26983a1091..8d6300e976f 100644 --- a/tests/cases/fourslash/findAllRefsDestructureGetter2.ts +++ b/tests/cases/fourslash/findAllRefsDestructureGetter2.ts @@ -4,13 +4,13 @@ // @Filename: /a.ts ////class C { -//// get [|{| "isWriteAccess": true, "isDefinition": true |}g|](): number { return 0; } +//// [|get [|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 0 |}g|](): number { return 0; }|] //// -//// set [|{| "isWriteAccess": true, "isDefinition": true |}s|](value: number) {} +//// [|set [|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 2 |}s|](value: number) {}|] ////} -////const { [|{| "isWriteAccess": true, "isDefinition": true |}g|], [|{| "isWriteAccess": true, "isDefinition": true |}s|] } = new C(); +////[|const { [|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 4 |}g|], [|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 4 |}s|] } = new C();|] -const [g0, s0, g1, s1] = test.ranges(); +const [g0Def, g0, s0Def, s0, gs1Def, g1, s1] = test.ranges(); verify.quickInfoAt(g0, "(property) C.g: number"); verify.referenceGroups(g0, [{ definition: "(property) C.g: number", ranges: [g0, g1] }]); verify.referenceGroups(g1, [ diff --git a/tests/cases/fourslash/shims-pp/getReferencesAtPosition.ts b/tests/cases/fourslash/shims-pp/getReferencesAtPosition.ts index 7189738435f..fabe77c53ac 100644 --- a/tests/cases/fourslash/shims-pp/getReferencesAtPosition.ts +++ b/tests/cases/fourslash/shims-pp/getReferencesAtPosition.ts @@ -7,9 +7,9 @@ //// //// } //// -//// public [|{| "isWriteAccess": true, "isDefinition": true |}start|](){ +//// [|public [|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 0 |}start|](){ //// return this; -//// } +//// }|] //// //// public stop(){ //// return this; @@ -23,4 +23,4 @@ ////second.[|start|](); ////second.stop(); -verify.singleReferenceGroup("(method) Test.start(): this"); +verify.singleReferenceGroup("(method) Test.start(): this", "start"); diff --git a/tests/cases/fourslash/shims-pp/getRenameInfo.ts b/tests/cases/fourslash/shims-pp/getRenameInfo.ts index aa04d69962a..2595a523f16 100644 --- a/tests/cases/fourslash/shims-pp/getRenameInfo.ts +++ b/tests/cases/fourslash/shims-pp/getRenameInfo.ts @@ -2,9 +2,9 @@ /////// -////function [|Bar|]() { +////[|function [|{| "declarationRangeIndex": 0 |}Bar|]() { //// // This is a reference to Bar in a comment. //// "this is a reference to Bar in a string" -////} +////}|] -verify.rangesAreRenameLocations(); +verify.rangesWithSameTextAreRenameLocations("Bar"); diff --git a/tests/cases/fourslash/shims/getReferencesAtPosition.ts b/tests/cases/fourslash/shims/getReferencesAtPosition.ts index 7189738435f..fabe77c53ac 100644 --- a/tests/cases/fourslash/shims/getReferencesAtPosition.ts +++ b/tests/cases/fourslash/shims/getReferencesAtPosition.ts @@ -7,9 +7,9 @@ //// //// } //// -//// public [|{| "isWriteAccess": true, "isDefinition": true |}start|](){ +//// [|public [|{| "isWriteAccess": true, "isDefinition": true, "declarationRangeIndex": 0 |}start|](){ //// return this; -//// } +//// }|] //// //// public stop(){ //// return this; @@ -23,4 +23,4 @@ ////second.[|start|](); ////second.stop(); -verify.singleReferenceGroup("(method) Test.start(): this"); +verify.singleReferenceGroup("(method) Test.start(): this", "start"); diff --git a/tests/cases/fourslash/shims/getRenameInfo.ts b/tests/cases/fourslash/shims/getRenameInfo.ts index aa04d69962a..2595a523f16 100644 --- a/tests/cases/fourslash/shims/getRenameInfo.ts +++ b/tests/cases/fourslash/shims/getRenameInfo.ts @@ -2,9 +2,9 @@ /////// -////function [|Bar|]() { +////[|function [|{| "declarationRangeIndex": 0 |}Bar|]() { //// // This is a reference to Bar in a comment. //// "this is a reference to Bar in a string" -////} +////}|] -verify.rangesAreRenameLocations(); +verify.rangesWithSameTextAreRenameLocations("Bar");