mirror of
https://github.com/microsoft/TypeScript.git
synced 2026-05-16 07:13:45 -05:00
renamed getNodeAtPosition to getExactTokenAtPosition, added predicate parameter that will determine if token with end === position should be returned
This commit is contained in:
42
tests/cases/fourslash/getOccurrencesIfElse5.ts
Normal file
42
tests/cases/fourslash/getOccurrencesIfElse5.ts
Normal file
@@ -0,0 +1,42 @@
|
||||
/// <reference path='fourslash.ts' />
|
||||
|
||||
////if/*1*/ (true) {
|
||||
//// if/*2*/ (false) {
|
||||
//// }
|
||||
//// else/*3*/ {
|
||||
//// }
|
||||
//// if/*4*/ (true) {
|
||||
//// }
|
||||
//// else/*5*/ {
|
||||
//// if/*6*/ (false)
|
||||
//// if/*7*/ (true)
|
||||
//// var x = undefined;
|
||||
//// }
|
||||
////}
|
||||
////else/*8*/ if (null) {
|
||||
////}
|
||||
////else/*9*/ /* whar garbl */ if/*10*/ (undefined) {
|
||||
////}
|
||||
////else/*11*/
|
||||
////if/*12*/ (false) {
|
||||
////}
|
||||
////else/*13*/ { }
|
||||
|
||||
function verifyOccurencesAtMarker(marker: string, count: number) {
|
||||
goTo.marker(marker);
|
||||
verify.occurrencesAtPositionCount(count);
|
||||
}
|
||||
|
||||
verifyOccurencesAtMarker("1", 7);
|
||||
verifyOccurencesAtMarker("2", 2);
|
||||
verifyOccurencesAtMarker("3", 2);
|
||||
verifyOccurencesAtMarker("4", 2);
|
||||
verifyOccurencesAtMarker("5", 2);
|
||||
verifyOccurencesAtMarker("6", 1);
|
||||
verifyOccurencesAtMarker("7", 1);
|
||||
verifyOccurencesAtMarker("8", 7);
|
||||
verifyOccurencesAtMarker("9", 7);
|
||||
verifyOccurencesAtMarker("10", 7);
|
||||
verifyOccurencesAtMarker("11", 7);
|
||||
verifyOccurencesAtMarker("12", 7);
|
||||
verifyOccurencesAtMarker("13", 7);
|
||||
@@ -1,29 +0,0 @@
|
||||
/// <reference path='fourslash.ts' />
|
||||
|
||||
////if/*1*/ (true) {
|
||||
//// if/*2*/ (false) {
|
||||
//// }
|
||||
//// else/*3*/ {
|
||||
//// }
|
||||
//// if/*4*/ (true) {
|
||||
//// }
|
||||
//// else/*5*/ {
|
||||
//// if/*6*/ (false)
|
||||
//// if/*7*/ (true)
|
||||
//// var x = undefined;
|
||||
//// }
|
||||
////}
|
||||
////else/*8*/ if (null) {
|
||||
////}
|
||||
////else/*9*/ /* whar garbl */ if/*10*/ (undefined) {
|
||||
////}
|
||||
////else/*11*/
|
||||
////if/*12*/ (false) {
|
||||
////}
|
||||
////else/*13*/ { }
|
||||
|
||||
|
||||
test.markers().forEach(m => {
|
||||
goTo.position(m.position, m.fileName)
|
||||
verify.occurrencesAtPositionCount(0);
|
||||
});
|
||||
70
tests/cases/fourslash/getOccurrencesLoopBreakContinue6.ts
Normal file
70
tests/cases/fourslash/getOccurrencesLoopBreakContinue6.ts
Normal file
@@ -0,0 +1,70 @@
|
||||
/// <reference path='fourslash.ts' />
|
||||
|
||||
////var arr = [1, 2, 3, 4];
|
||||
////label1: for (var n in arr) {
|
||||
//// break;
|
||||
//// continue;
|
||||
//// break label1;
|
||||
//// continue label1;
|
||||
////
|
||||
//// label2: for (var i = 0; i < arr[n]; i++) {
|
||||
//// break label1;
|
||||
//// continue label1;
|
||||
////
|
||||
//// break;
|
||||
//// continue;
|
||||
//// break label2;
|
||||
//// continue label2;
|
||||
////
|
||||
//// function foo() {
|
||||
//// label3: while (true) {
|
||||
//// break;
|
||||
//// continue;
|
||||
//// break label3;
|
||||
//// continue label3;
|
||||
////
|
||||
//// // these cross function boundaries
|
||||
//// br/*1*/eak label1;
|
||||
//// cont/*2*/inue label1;
|
||||
//// bre/*3*/ak label2;
|
||||
//// c/*4*/ontinue label2;
|
||||
////
|
||||
//// label4: do {
|
||||
//// break;
|
||||
//// continue;
|
||||
//// break label4;
|
||||
//// continue label4;
|
||||
////
|
||||
//// break label3;
|
||||
//// continue label3;
|
||||
////
|
||||
//// switch (10) {
|
||||
//// case 1:
|
||||
//// case 2:
|
||||
//// break;
|
||||
//// break label4;
|
||||
//// default:
|
||||
//// continue;
|
||||
//// }
|
||||
////
|
||||
//// // these cross function boundaries
|
||||
//// br/*5*/eak label1;
|
||||
//// co/*6*/ntinue label1;
|
||||
//// br/*7*/eak label2;
|
||||
//// con/*8*/tinue label2;
|
||||
//// () => { b/*9*/reak; }
|
||||
//// } while (true)
|
||||
//// }
|
||||
//// }
|
||||
//// }
|
||||
////}
|
||||
////
|
||||
////label5: while (true) break label5;
|
||||
////
|
||||
////label7: while (true) co/*10*/ntinue label5;
|
||||
|
||||
test.markers().forEach(m => {
|
||||
goTo.position(m.position);
|
||||
|
||||
verify.occurrencesAtPositionCount(0);
|
||||
});
|
||||
@@ -19,7 +19,15 @@
|
||||
//// return/*7*/ true;
|
||||
////}
|
||||
|
||||
test.markers().forEach(m => {
|
||||
goTo.position(m.position, m.fileName)
|
||||
verify.occurrencesAtPositionCount(0);
|
||||
});
|
||||
function verifyOccurencesAtMarker(marker: string, count: number) {
|
||||
goTo.marker(marker);
|
||||
verify.occurrencesAtPositionCount(count);
|
||||
}
|
||||
|
||||
verifyOccurencesAtMarker("1", 4);
|
||||
verifyOccurencesAtMarker("2", 4);
|
||||
verifyOccurencesAtMarker("3", 4);
|
||||
verifyOccurencesAtMarker("4", 4);
|
||||
verifyOccurencesAtMarker("5", 1);
|
||||
verifyOccurencesAtMarker("6", 3);
|
||||
verifyOccurencesAtMarker("7", 3);
|
||||
40
tests/cases/fourslash/getOccurrencesSwitchCaseDefault5.ts
Normal file
40
tests/cases/fourslash/getOccurrencesSwitchCaseDefault5.ts
Normal file
@@ -0,0 +1,40 @@
|
||||
/// <reference path='fourslash.ts' />
|
||||
|
||||
////switch/*1*/ (10) {
|
||||
//// case/*2*/ 1:
|
||||
//// case/*3*/ 2:
|
||||
//// case/*4*/ 4:
|
||||
//// case/*5*/ 8:
|
||||
//// foo: switch/*6*/ (20) {
|
||||
//// case/*7*/ 1:
|
||||
//// case/*8*/ 2:
|
||||
//// break/*9*/;
|
||||
//// default/*10*/:
|
||||
//// break foo;
|
||||
//// }
|
||||
//// case/*11*/ 0xBEEF:
|
||||
//// default/*12*/:
|
||||
//// break/*13*/;
|
||||
//// case 16/*14*/:
|
||||
////}
|
||||
|
||||
function verifyOccurencesAtMarker(marker: string, count: number) {
|
||||
goTo.marker(marker);
|
||||
verify.occurrencesAtPositionCount(count);
|
||||
}
|
||||
|
||||
verifyOccurencesAtMarker("1", 9);
|
||||
verifyOccurencesAtMarker("2", 9);
|
||||
verifyOccurencesAtMarker("3", 9);
|
||||
verifyOccurencesAtMarker("4", 9);
|
||||
verifyOccurencesAtMarker("5", 9);
|
||||
verifyOccurencesAtMarker("6", 6);
|
||||
verifyOccurencesAtMarker("7", 6);
|
||||
verifyOccurencesAtMarker("8", 6);
|
||||
verifyOccurencesAtMarker("9", 6);
|
||||
verifyOccurencesAtMarker("10", 6);
|
||||
verifyOccurencesAtMarker("11", 9);
|
||||
verifyOccurencesAtMarker("12", 9);
|
||||
verifyOccurencesAtMarker("13", 9);
|
||||
verifyOccurencesAtMarker("14", 0);
|
||||
|
||||
@@ -1,25 +0,0 @@
|
||||
/// <reference path='fourslash.ts' />
|
||||
|
||||
////switch/*1*/ (10) {
|
||||
//// case/*2*/ 1:
|
||||
//// case/*3*/ 2:
|
||||
//// case/*4*/ 4:
|
||||
//// case/*5*/ 8:
|
||||
//// foo: switch/*6*/ (20) {
|
||||
//// case/*7*/ 1:
|
||||
//// case/*8*/ 2:
|
||||
//// break/*9*/;
|
||||
//// default/*10*/:
|
||||
//// break foo;
|
||||
//// }
|
||||
//// case/*11*/ 0xBEEF:
|
||||
//// default/*12*/:
|
||||
//// break/*13*/;
|
||||
//// case 16/*14*/:
|
||||
////}
|
||||
|
||||
|
||||
for (var i = 1; i <= test.markers().length; i++) {
|
||||
goTo.marker("" + i);
|
||||
verify.occurrencesAtPositionCount(0);
|
||||
}
|
||||
@@ -142,8 +142,14 @@
|
||||
////}
|
||||
|
||||
|
||||
test.markers().forEach(m => {
|
||||
goTo.position(m.position, m.fileName)
|
||||
function verifyOccurencesAtMarker(marker: string, count: number) {
|
||||
goTo.marker(marker);
|
||||
verify.occurrencesAtPositionCount(count);
|
||||
}
|
||||
|
||||
verify.occurrencesAtPositionCount(0);
|
||||
});
|
||||
verifyOccurencesAtMarker("1", 2);
|
||||
verifyOccurencesAtMarker("2", 6);
|
||||
verifyOccurencesAtMarker("3", 1);
|
||||
verifyOccurencesAtMarker("4", 1);
|
||||
verifyOccurencesAtMarker("5", 1);
|
||||
verifyOccurencesAtMarker("6", 0);
|
||||
30
tests/cases/fourslash/getOccurrencesTryCatchFinally4.ts
Normal file
30
tests/cases/fourslash/getOccurrencesTryCatchFinally4.ts
Normal file
@@ -0,0 +1,30 @@
|
||||
/// <reference path='fourslash.ts' />
|
||||
|
||||
////try/*1*/ {
|
||||
//// try/*2*/ {
|
||||
//// }
|
||||
//// catch/*3*/ (x) {
|
||||
//// }
|
||||
////
|
||||
//// try/*4*/ {
|
||||
//// }
|
||||
//// finally/*5*/ {/*8*/
|
||||
//// }
|
||||
////}
|
||||
////catch/*6*/ (e) {
|
||||
////}
|
||||
////finally/*7*/ {
|
||||
////}
|
||||
function verifyOccurencesAtMarker(marker: string, count: number) {
|
||||
goTo.marker(marker);
|
||||
verify.occurrencesAtPositionCount(count);
|
||||
}
|
||||
|
||||
verifyOccurencesAtMarker("1", 3);
|
||||
verifyOccurencesAtMarker("2", 2);
|
||||
verifyOccurencesAtMarker("3", 2);
|
||||
verifyOccurencesAtMarker("4", 2);
|
||||
verifyOccurencesAtMarker("5", 2);
|
||||
verifyOccurencesAtMarker("6", 3);
|
||||
verifyOccurencesAtMarker("7", 3);
|
||||
verifyOccurencesAtMarker("8", 0);
|
||||
@@ -1,23 +0,0 @@
|
||||
/// <reference path='fourslash.ts' />
|
||||
|
||||
////try/*1*/ {
|
||||
//// try/*2*/ {
|
||||
//// }
|
||||
//// catch/*3*/ (x) {
|
||||
//// }
|
||||
////
|
||||
//// try/*4*/ {
|
||||
//// }
|
||||
//// finally/*5*/ {/*8*/
|
||||
//// }
|
||||
////}
|
||||
////catch/*6*/ (e) {
|
||||
////}
|
||||
////finally/*7*/ {
|
||||
////}
|
||||
|
||||
|
||||
for (var i = 1; i <= test.markers().length; i++) {
|
||||
goTo.marker("" + i);
|
||||
verify.occurrencesAtPositionCount(0);
|
||||
}
|
||||
@@ -5,7 +5,12 @@
|
||||
|
||||
// @Filename: Consumption.ts
|
||||
//// var n = new /*1*/c();
|
||||
//// var n = new c/*3*/();
|
||||
|
||||
goTo.marker('1');
|
||||
goTo.definition();
|
||||
verify.caretAtMarker('2');
|
||||
|
||||
goTo.marker('3');
|
||||
goTo.definition();
|
||||
verify.caretAtMarker('2');
|
||||
|
||||
Reference in New Issue
Block a user