Tests for signature help on tagged templates with no overloads.

This commit is contained in:
Daniel Rosenwasser
2014-11-18 13:48:24 -08:00
parent 69f7d39d43
commit 4e18efd25c
16 changed files with 233 additions and 0 deletions

View File

@@ -0,0 +1,15 @@
/// <reference path='fourslash.ts' />
//// function f(templateStrings, x, y, z) { return 10; }
//// function g(templateStrings, x, y, z) { return ""; }
////
//// f `/*1*/ qwe/*2*/rty /*3*/$/*4*/{ 123 }/*5*/ as/*6*/df /*7*/$/*8*/{ 41234 }/*9*/ zxc/*10*/vb /*11*/$/*12*/{ g ` ` }/*13*/ /*14*/ /*15*/`
test.markers().forEach(m => {
goTo.position(m.position);
verify.signatureHelpCountIs(1);
verify.currentSignatureParamterCountIs(4);
verify.currentSignatureHelpIs('f(templateStrings: any, x: any, y: any, z: any): number');
verify.currentParameterHelpArgumentNameIs("templateStrings");
verify.currentParameterSpanIs("templateStrings: any");
});

View File

@@ -0,0 +1,15 @@
/// <reference path='fourslash.ts' />
//// function f(templateStrings, x, y, z) { return 10; }
//// function g(templateStrings, x, y, z) { return ""; }
////
//// f `/*1*/ qwe/*2*/rty /*3*/$/*4*/{ 123 }/*5*/ as/*6*/df /*7*/$/*8*/{ 41234 }/*9*/ zxc/*10*/vb /*11*/$/*12*/{ g ` ` }/*13*/ /*14*/ /*15*/
test.markers().forEach(m => {
goTo.position(m.position);
verify.signatureHelpCountIs(1);
verify.currentSignatureParamterCountIs(4);
verify.currentSignatureHelpIs('f(templateStrings: any, x: any, y: any, z: any): number');
verify.currentParameterHelpArgumentNameIs("templateStrings");
verify.currentParameterSpanIs("templateStrings: any");
});

View File

@@ -0,0 +1,15 @@
/// <reference path='fourslash.ts' />
//// function f(templateStrings, x, y, z) { return 10; }
//// function g(templateStrings, x, y, z) { return ""; }
////
//// f ` qwerty ${/*1*/ /*2*/123/*3*/ /*4*/} asdf ${ 41234 } zxcvb ${ g ` ` } `
test.markers().forEach(m => {
goTo.position(m.position);
verify.signatureHelpCountIs(1);
verify.currentSignatureParamterCountIs(4);
verify.currentSignatureHelpIs('f(templateStrings: any, x: any, y: any, z: any): number');
verify.currentParameterHelpArgumentNameIs("x");
verify.currentParameterSpanIs("x: any");
});

View File

@@ -0,0 +1,15 @@
/// <reference path='fourslash.ts' />
//// function f(templateStrings, x, y, z) { return 10; }
//// function g(templateStrings, x, y, z) { return ""; }
////
//// f ` qwerty ${ 123 } asdf ${/*1*/ /*2*/ /*3*/41/*4*/234/*5*/ /*6*/} zxcvb ${ g ` ` } `
test.markers().forEach(m => {
goTo.position(m.position);
verify.signatureHelpCountIs(1);
verify.currentSignatureParamterCountIs(4);
verify.currentSignatureHelpIs('f(templateStrings: any, x: any, y: any, z: any): number');
verify.currentParameterHelpArgumentNameIs("y");
verify.currentParameterSpanIs("y: any");
});

View File

@@ -0,0 +1,15 @@
/// <reference path='fourslash.ts' />
//// function f(templateStrings, x, y, z) { return 10; }
//// function g(templateStrings, x, y, z) { return ""; }
////
//// f ` qwerty ${ 123 } asdf ${ 41234 } zxcvb ${/*1*/ /*2*/g/*3*/ /*4*/` `/*5*/ /*6*/} `
test.markers().forEach(m => {
goTo.position(m.position);
verify.signatureHelpCountIs(1);
verify.currentSignatureParamterCountIs(4);
verify.currentSignatureHelpIs('f(templateStrings: any, x: any, y: any, z: any): number');
verify.currentParameterHelpArgumentNameIs("z");
verify.currentParameterSpanIs("z: any");
});

View File

@@ -0,0 +1,15 @@
/// <reference path='fourslash.ts' />
//// function f(templateStrings, x, y, z) { return 10; }
//// function g(templateStrings, x, y, z) { return ""; }
////
//// f ` qwerty ${ 123 } asdf ${ 41234 } zxcvb ${ g `/*1*/ /*2*/ /*3*/` } `
test.markers().forEach(m => {
goTo.position(m.position);
verify.signatureHelpCountIs(1);
verify.currentSignatureParamterCountIs(4);
verify.currentSignatureHelpIs('g(templateStrings: any, x: any, y: any, z: any): string');
verify.currentParameterHelpArgumentNameIs("templateStrings");
verify.currentParameterSpanIs("templateStrings: any");
});

View File

@@ -0,0 +1,15 @@
/// <reference path='fourslash.ts' />
//// function f(templateStrings, x, y, z) { return 10; }
//// function g(templateStrings, x, y, z) { return ""; }
////
//// f `/*1*/ /*2*/
test.markers().forEach(m => {
goTo.position(m.position);
verify.signatureHelpCountIs(1);
verify.currentSignatureParamterCountIs(4);
verify.currentSignatureHelpIs('f(templateStrings: any, x: any, y: any, z: any): number');
verify.currentParameterHelpArgumentNameIs("templateStrings");
verify.currentParameterSpanIs("templateStrings: any");
});

View File

@@ -0,0 +1,15 @@
/// <reference path='fourslash.ts' />
//// function f(templateStrings, x, y, z) { return 10; }
//// function g(templateStrings, x, y, z) { return ""; }
////
//// f `/*1*/ /*2*/${
test.markers().forEach(m => {
goTo.position(m.position);
verify.signatureHelpCountIs(1);
verify.currentSignatureParamterCountIs(4);
verify.currentSignatureHelpIs('f(templateStrings: any, x: any, y: any, z: any): number');
verify.currentParameterHelpArgumentNameIs("templateStrings");
verify.currentParameterSpanIs("templateStrings: any");
});

View File

@@ -0,0 +1,15 @@
/// <reference path='fourslash.ts' />
//// function f(templateStrings, x, y, z) { return 10; }
//// function g(templateStrings, x, y, z) { return ""; }
////
//// f ` ${/*1*/ /*2*/
test.markers().forEach(m => {
goTo.position(m.position);
verify.signatureHelpCountIs(1);
verify.currentSignatureParamterCountIs(4);
verify.currentSignatureHelpIs('f(templateStrings: any, x: any, y: any, z: any): number');
verify.currentParameterHelpArgumentNameIs("x");
verify.currentParameterSpanIs("x: any");
});

View File

@@ -0,0 +1,15 @@
/// <reference path='fourslash.ts' />
//// function f(templateStrings, x, y, z) { return 10; }
//// function g(templateStrings, x, y, z) { return ""; }
////
//// f ` ${ }/*1*/ /*2*/
test.markers().forEach(m => {
goTo.position(m.position);
verify.signatureHelpCountIs(1);
verify.currentSignatureParamterCountIs(4);
verify.currentSignatureHelpIs('f(templateStrings: any, x: any, y: any, z: any): number');
verify.currentParameterHelpArgumentNameIs("templateStrings");
verify.currentParameterSpanIs("templateStrings: any");
});

View File

@@ -0,0 +1,15 @@
/// <reference path='fourslash.ts' />
//// function f(templateStrings, x, y, z) { return 10; }
//// function g(templateStrings, x, y, z) { return ""; }
////
//// f ` ${ } ${/*1*/ /*2*/
test.markers().forEach(m => {
goTo.position(m.position);
verify.signatureHelpCountIs(1);
verify.currentSignatureParamterCountIs(4);
verify.currentSignatureHelpIs('f(templateStrings: any, x: any, y: any, z: any): number');
verify.currentParameterHelpArgumentNameIs("y");
verify.currentParameterSpanIs("y: any");
});

View File

@@ -0,0 +1,15 @@
/// <reference path='fourslash.ts' />
//// function f(templateStrings, x, y, z) { return 10; }
//// function g(templateStrings, x, y, z) { return ""; }
////
//// f ` ${ } ${ }/*1*/ /*2*/
test.markers().forEach(m => {
goTo.position(m.position);
verify.signatureHelpCountIs(1);
verify.currentSignatureParamterCountIs(4);
verify.currentSignatureHelpIs('f(templateStrings: any, x: any, y: any, z: any): number');
verify.currentParameterHelpArgumentNameIs("templateStrings");
verify.currentParameterSpanIs("templateStrings: any");
});

View File

@@ -0,0 +1,15 @@
/// <reference path='fourslash.ts' />
//// function f(templateStrings, x, y, z) { return 10; }
//// function g(templateStrings, x, y, z) { return ""; }
////
//// f ` ${ 123 } ${/*1*/ } `
test.markers().forEach(m => {
goTo.position(m.position);
verify.signatureHelpCountIs(1);
verify.currentSignatureParamterCountIs(4);
verify.currentSignatureHelpIs('f(templateStrings: any, x: any, y: any, z: any): number');
verify.currentParameterHelpArgumentNameIs("y");
verify.currentParameterSpanIs("y: any");
});

View File

@@ -0,0 +1,11 @@
/// <reference path='fourslash.ts' />
//// function f(templateStrings, x, y, z) { return 10; }
//// function g(templateStrings, x, y, z) { return ""; }
////
//// /*1*/f/*2*/ /*3*/` qwerty ${ 123 } asdf ${ 41234 } zxcvb ${ g ` ` } `/*4*/
test.markers().forEach(m => {
goTo.position(m.position);
verify.not.signatureHelpPresent();
});

View File

@@ -0,0 +1,13 @@
/// <reference path='fourslash.ts' />
//// function f(templateStrings, x, y, z) { return 10; }
//// function g(templateStrings, x, y, z) { return ""; }
////
//// f `a ${ g `/*1*/alpha/*2*/ ${/*3*/ 12/*4*/3 /*5*/} beta /*6*/${ /*7*/456 /*8*/} gamma/*9*/` } b ${ g `/*10*/txt/*11*/` } c ${ g `/*12*/aleph /*13*/$/*14*/{ 12/*15*/3 } beit/*16*/` } d`;
test.markers().forEach(m => {
goTo.position(m.position);
verify.signatureHelpCountIs(1);
verify.currentSignatureParamterCountIs(4);
verify.currentSignatureHelpIs('g(templateStrings: any, x: any, y: any, z: any): string');
});

View File

@@ -0,0 +1,14 @@
/// <reference path="./fourslash.ts"/>
//// function f(templateStrings, x, y, z) { return 10; }
//// function g(templateStrings, x, y, z) { return ""; }
////
//// f `/*1*/a $/*2*/{ /*3*/g /*4*/`alpha ${ 123 } beta ${ 456 } gamma`/*5*/ }/*6*/ b $/*7*/{ /*8*/g /*9*/`txt`/*10*/ } /*11*/c ${ /*12*/g /*13*/`aleph ${ 123 } beit`/*14*/ } d/*15*/`;
debugger;
test.markers().forEach(m => {
goTo.position(m.position);
verify.signatureHelpCountIs(1);
verify.currentSignatureParamterCountIs(4);
verify.currentSignatureHelpIs('f(templateStrings: any, x: any, y: any, z: any): number');
});