Merge remote-tracking branch 'origin/master' into go_to_implementation_pr

Refactored goToImplementation out of services
This commit is contained in:
Richard Knoll
2016-09-14 17:25:56 -07:00
2832 changed files with 81839 additions and 28415 deletions
@@ -0,0 +1,37 @@
// @target: es5
// @lib: es6
// @noEmitHelpers: true
async function fn1() {
let ar = [];
for (let i = 0; i < 1; i++) {
await 1;
ar.push(() => i);
}
}
async function fn2() {
let ar = [];
for (let i = 0; i < 1; i++) {
await 1;
ar.push(() => i);
break;
}
}
async function fn3() {
let ar = [];
for (let i = 0; i < 1; i++) {
await 1;
ar.push(() => i);
continue;
}
}
async function fn4(): Promise<number> {
let ar = [];
for (let i = 0; i < 1; i++) {
await 1;
ar.push(() => i);
return 1;
}
}
@@ -0,0 +1,52 @@
var xx: any;
var yy: any;
function fn() {
let arr: any[] = [];
switch(arr.length) {
// Should error
case 0, 1:
return 'zero or one';
default:
return 'more than one';
}
}
// Should error
let x = Math.pow((3, 5), 2);
// Should error
let a = [(3 + 4), ((1 + 1, 8) * 4)];
// Error cases
xx = (1, 2);
xx = ('', xx);
xx = (/323/, 5);
xx = (`wat`, 'ok'),
xx = (true, false);
xx = (false, true);
xx = (null, xx);
xx = (undefined, 10);
xx = (() => {}, 'no');
xx = (function() { }, 100);
xx = ({}, {});
xx = (typeof xx, 'unused');
xx = ([1, 2, x++], xx);
xx = (xx!, xx);
xx = (xx ? 3 : 4, 10);
xx = (3 + 4, 10);
xx = (!xx, 10);
xx = (~xx, 10);
xx = (-xx, 10);
xx = (+xx, 10);
// OK cases
xx = (xx ? x++ : 4, 10);
xx = (--xx, 3);
xx = (xx = 3, 1);
xx = ((xx = 3), 5);
xx = (xx+= 4, xx);
xx = ((xx+= 4), xx);
xx = (Math.pow(3, 2), 4);
xx = (void xx, 10);
xx = (xx as any, 100);
@@ -0,0 +1,558 @@
// Repro from #10869
/**
* This file is generated by the Angular 2 template compiler.
* Do not edit.
*/
/* tslint:disable */
// import * as import0 from '@angular/core/src/linker/ng_module_factory';
// import * as import1 from '../../app';
// import * as import2 from '@angular/common/src/common_module';
// import * as import3 from '@angular/core/src/application_module';
// import * as import4 from '@angular/platform-browser/src/browser';
// import * as import5 from '@angular/forms/src/directives';
// import * as import6 from '@angular/forms/src/form_providers';
// import * as import7 from '@angular/common/src/localization';
// import * as import8 from '@angular/core/src/application_init';
// import * as import9 from '@angular/core/src/testability/testability';
// import * as import10 from '@angular/core/src/application_ref';
// import * as import11 from '@angular/core/src/linker/compiler';
// import * as import12 from '@angular/platform-browser/src/dom/events/hammer_gestures';
// import * as import13 from '@angular/platform-browser/src/dom/events/event_manager';
// import * as import14 from '@angular/platform-browser/src/dom/shared_styles_host';
// import * as import15 from '@angular/platform-browser/src/dom/dom_renderer';
// import * as import16 from '@angular/platform-browser/src/security/dom_sanitization_service';
// import * as import17 from '@angular/core/src/linker/view_utils';
// import * as import18 from '@angular/forms/src/form_builder';
// import * as import19 from '@angular/forms/src/directives/radio_control_value_accessor';
// import * as import20 from '@angular/core/src/di/injector';
// import * as import21 from '@angular/core/src/application_tokens';
// import * as import22 from '@angular/platform-browser/src/dom/events/dom_events';
// import * as import23 from '@angular/platform-browser/src/dom/events/key_events';
// import * as import24 from '@angular/core/src/zone/ng_zone';
// import * as import25 from '@angular/platform-browser/src/dom/debug/ng_probe';
// import * as import26 from '@angular/core/src/console';
// import * as import27 from '@angular/core/src/i18n/tokens';
// import * as import28 from '@angular/core/src/error_handler';
// import * as import29 from '@angular/platform-browser/src/dom/dom_tokens';
// import * as import30 from '@angular/platform-browser/src/dom/animation_driver';
// import * as import31 from '@angular/core/src/render/api';
// import * as import32 from '@angular/core/src/security';
// import * as import33 from '@angular/core/src/change_detection/differs/iterable_differs';
// import * as import34 from '@angular/core/src/change_detection/differs/keyvalue_differs';
// import * as import35 from '@angular/core/src/i18n/tokens';
// import * as import36 from '@angular/core/src/render/api';
// import * as import37 from '@angular/core/src/linker/view';
// import * as import38 from '@angular/core/src/linker/element';
// import * as import39 from '@angular/core/src/linker/view_utils';
// import * as import40 from '@angular/core/src/linker/view_type';
// import * as import41 from '@angular/core/src/change_detection/change_detection';
// import * as import42 from '@angular/core/src/metadata/view';
// import * as import43 from '@angular/core/src/linker/component_factory';
// import * as import44 from '@angular/forms/src/directives/reactive_directives/form_group_directive';
// import * as import45 from '@angular/forms/src/directives/ng_control_status';
// import * as import46 from '@angular/forms/src/directives/default_value_accessor';
// import * as import47 from '@angular/forms/src/directives/reactive_directives/form_control_name';
// import * as import48 from '@angular/core/src/linker/element_ref';
// import * as import49 from '@angular/forms/src/directives/control_value_accessor';
// import * as import50 from '@angular/forms/src/directives/ng_control';
// import * as import51 from '@angular/forms/src/directives/control_container';
//stubbed out imports
namespace import44 {
export class FormGroupDirective {
constructor(any){}
}
}
namespace import45 {
export class NgControlStatus {
constructor(any){}
}
export class NgControlStatusGroup {
constructor(any){}
}
}
namespace import46 {
export class DefaultValueAccessor {
constructor(any){}
}
}
namespace import47 {
export class FormControlName {
constructor(any){}
}
}
namespace import48 {
export class FormControlName {
constructor(any){}
}
}
//HERE BE DRAGONS
//Using a value here - 65+ seconds to typecheck
namespace import49 {
//real code uses an opaque token, using new String() to simulate.
//export var NG_VALUE_ACCESSOR = new OpaqueToken('ngValueAccessor')
export var NG_VALUE_ACCESSOR = new String('foo')
}
//using a class - < 1 sec typecheck
// namespace import49 {
// export class NG_VALUE_ACCESSOR {
// constructor(any){}
// }
// }
//END DRAGONS
namespace import50 {
export class NgControl {
constructor(any){}
}
}
namespace import51 {
export class ControlContainer {
constructor(any){}
}
}
class _View_AppComponent0 {
_text_0:any;
_el_1:any;
_FormGroupDirective_1_3:import44.FormGroupDirective;
_ControlContainer_1_4:any;
_NgControlStatusGroup_1_5:import45.NgControlStatusGroup;
_text_2:any;
_el_3:any;
_DefaultValueAccessor_3_3:import46.DefaultValueAccessor;
_NG_VALUE_ACCESSOR_3_4:any[];
_FormControlName_3_5:import47.FormControlName;
_NgControl_3_6:any;
_NgControlStatus_3_7:import45.NgControlStatus;
_el_4:any;
_text_5:any;
_el_6:any;
_DefaultValueAccessor_6_3:import46.DefaultValueAccessor;
_NG_VALUE_ACCESSOR_6_4:any[];
_FormControlName_6_5:import47.FormControlName;
_NgControl_6_6:any;
_NgControlStatus_6_7:import45.NgControlStatus;
_el_7:any;
_text_8:any;
_el_9:any;
_DefaultValueAccessor_9_3:import46.DefaultValueAccessor;
_NG_VALUE_ACCESSOR_9_4:any[];
_FormControlName_9_5:import47.FormControlName;
_NgControl_9_6:any;
_NgControlStatus_9_7:import45.NgControlStatus;
_el_10:any;
_text_11:any;
_el_12:any;
_DefaultValueAccessor_12_3:import46.DefaultValueAccessor;
_NG_VALUE_ACCESSOR_12_4:any[];
_FormControlName_12_5:import47.FormControlName;
_NgControl_12_6:any;
_NgControlStatus_12_7:import45.NgControlStatus;
_el_13:any;
_text_14:any;
_el_15:any;
_DefaultValueAccessor_15_3:import46.DefaultValueAccessor;
_NG_VALUE_ACCESSOR_15_4:any[];
_FormControlName_15_5:import47.FormControlName;
_NgControl_15_6:any;
_NgControlStatus_15_7:import45.NgControlStatus;
_el_16:any;
_text_17:any;
_el_18:any;
_DefaultValueAccessor_18_3:import46.DefaultValueAccessor;
_NG_VALUE_ACCESSOR_18_4:any[];
_FormControlName_18_5:import47.FormControlName;
_NgControl_18_6:any;
_NgControlStatus_18_7:import45.NgControlStatus;
_el_19:any;
_text_20:any;
_el_21:any;
_DefaultValueAccessor_21_3:import46.DefaultValueAccessor;
_NG_VALUE_ACCESSOR_21_4:any[];
_FormControlName_21_5:import47.FormControlName;
_NgControl_21_6:any;
_NgControlStatus_21_7:import45.NgControlStatus;
_el_22:any;
_text_23:any;
_el_24:any;
_DefaultValueAccessor_24_3:import46.DefaultValueAccessor;
_NG_VALUE_ACCESSOR_24_4:any[];
_FormControlName_24_5:import47.FormControlName;
_NgControl_24_6:any;
_NgControlStatus_24_7:import45.NgControlStatus;
_el_25:any;
_text_26:any;
_el_27:any;
_DefaultValueAccessor_27_3:import46.DefaultValueAccessor;
_NG_VALUE_ACCESSOR_27_4:any[];
_FormControlName_27_5:import47.FormControlName;
_NgControl_27_6:any;
_NgControlStatus_27_7:import45.NgControlStatus;
_el_28:any;
_text_29:any;
_el_30:any;
_DefaultValueAccessor_30_3:import46.DefaultValueAccessor;
_NG_VALUE_ACCESSOR_30_4:any[];
_FormControlName_30_5:import47.FormControlName;
_NgControl_30_6:any;
_NgControlStatus_30_7:import45.NgControlStatus;
_el_31:any;
_text_32:any;
_el_33:any;
_DefaultValueAccessor_33_3:import46.DefaultValueAccessor;
_NG_VALUE_ACCESSOR_33_4:any[];
_FormControlName_33_5:import47.FormControlName;
_NgControl_33_6:any;
_NgControlStatus_33_7:import45.NgControlStatus;
_el_34:any;
_text_35:any;
_el_36:any;
_DefaultValueAccessor_36_3:import46.DefaultValueAccessor;
_NG_VALUE_ACCESSOR_36_4:any[];
_FormControlName_36_5:import47.FormControlName;
_NgControl_36_6:any;
_NgControlStatus_36_7:import45.NgControlStatus;
_el_37:any;
_text_38:any;
_el_39:any;
_DefaultValueAccessor_39_3:import46.DefaultValueAccessor;
_NG_VALUE_ACCESSOR_39_4:any[];
_FormControlName_39_5:import47.FormControlName;
_NgControl_39_6:any;
_NgControlStatus_39_7:import45.NgControlStatus;
_el_40:any;
_text_41:any;
_el_42:any;
_DefaultValueAccessor_42_3:import46.DefaultValueAccessor;
_NG_VALUE_ACCESSOR_42_4:any[];
_FormControlName_42_5:import47.FormControlName;
_NgControl_42_6:any;
_NgControlStatus_42_7:import45.NgControlStatus;
_el_43:any;
_text_44:any;
_el_45:any;
_DefaultValueAccessor_45_3:import46.DefaultValueAccessor;
_NG_VALUE_ACCESSOR_45_4:any[];
_FormControlName_45_5:import47.FormControlName;
_NgControl_45_6:any;
_NgControlStatus_45_7:import45.NgControlStatus;
_el_46:any;
_text_47:any;
_el_48:any;
_DefaultValueAccessor_48_3:import46.DefaultValueAccessor;
_NG_VALUE_ACCESSOR_48_4:any[];
_FormControlName_48_5:import47.FormControlName;
_NgControl_48_6:any;
_NgControlStatus_48_7:import45.NgControlStatus;
_el_49:any;
_text_50:any;
_el_51:any;
_DefaultValueAccessor_51_3:import46.DefaultValueAccessor;
_NG_VALUE_ACCESSOR_51_4:any[];
_FormControlName_51_5:import47.FormControlName;
_NgControl_51_6:any;
_NgControlStatus_51_7:import45.NgControlStatus;
_el_52:any;
_text_53:any;
_el_54:any;
_DefaultValueAccessor_54_3:import46.DefaultValueAccessor;
_NG_VALUE_ACCESSOR_54_4:any[];
_FormControlName_54_5:import47.FormControlName;
_NgControl_54_6:any;
_NgControlStatus_54_7:import45.NgControlStatus;
_el_55:any;
_text_56:any;
_el_57:any;
_DefaultValueAccessor_57_3:import46.DefaultValueAccessor;
_NG_VALUE_ACCESSOR_57_4:any[];
_FormControlName_57_5:import47.FormControlName;
_NgControl_57_6:any;
_NgControlStatus_57_7:import45.NgControlStatus;
_el_58:any;
_text_59:any;
_el_60:any;
_DefaultValueAccessor_60_3:import46.DefaultValueAccessor;
_NG_VALUE_ACCESSOR_60_4:any[];
_FormControlName_60_5:import47.FormControlName;
_NgControl_60_6:any;
_NgControlStatus_60_7:import45.NgControlStatus;
_el_61:any;
_text_62:any;
_text_63:any;
/*private*/ _expr_2:any;
/*private*/ _expr_3:any;
/*private*/ _expr_4:any;
/*private*/ _expr_5:any;
/*private*/ _expr_6:any;
/*private*/ _expr_7:any;
/*private*/ _expr_8:any;
/*private*/ _expr_11:any;
/*private*/ _expr_12:any;
/*private*/ _expr_13:any;
/*private*/ _expr_14:any;
/*private*/ _expr_15:any;
/*private*/ _expr_16:any;
/*private*/ _expr_17:any;
/*private*/ _expr_20:any;
/*private*/ _expr_21:any;
/*private*/ _expr_22:any;
/*private*/ _expr_23:any;
/*private*/ _expr_24:any;
/*private*/ _expr_25:any;
/*private*/ _expr_26:any;
/*private*/ _expr_29:any;
/*private*/ _expr_30:any;
/*private*/ _expr_31:any;
/*private*/ _expr_32:any;
/*private*/ _expr_33:any;
/*private*/ _expr_34:any;
/*private*/ _expr_35:any;
/*private*/ _expr_38:any;
/*private*/ _expr_39:any;
/*private*/ _expr_40:any;
/*private*/ _expr_41:any;
/*private*/ _expr_42:any;
/*private*/ _expr_43:any;
/*private*/ _expr_44:any;
/*private*/ _expr_47:any;
/*private*/ _expr_48:any;
/*private*/ _expr_49:any;
/*private*/ _expr_50:any;
/*private*/ _expr_51:any;
/*private*/ _expr_52:any;
/*private*/ _expr_53:any;
/*private*/ _expr_56:any;
/*private*/ _expr_57:any;
/*private*/ _expr_58:any;
/*private*/ _expr_59:any;
/*private*/ _expr_60:any;
/*private*/ _expr_61:any;
/*private*/ _expr_62:any;
/*private*/ _expr_65:any;
/*private*/ _expr_66:any;
/*private*/ _expr_67:any;
/*private*/ _expr_68:any;
/*private*/ _expr_69:any;
/*private*/ _expr_70:any;
/*private*/ _expr_71:any;
/*private*/ _expr_74:any;
/*private*/ _expr_75:any;
/*private*/ _expr_76:any;
/*private*/ _expr_77:any;
/*private*/ _expr_78:any;
/*private*/ _expr_79:any;
/*private*/ _expr_80:any;
/*private*/ _expr_83:any;
/*private*/ _expr_84:any;
/*private*/ _expr_85:any;
/*private*/ _expr_86:any;
/*private*/ _expr_87:any;
/*private*/ _expr_88:any;
/*private*/ _expr_89:any;
/*private*/ _expr_92:any;
/*private*/ _expr_93:any;
/*private*/ _expr_94:any;
/*private*/ _expr_95:any;
/*private*/ _expr_96:any;
/*private*/ _expr_97:any;
/*private*/ _expr_98:any;
/*private*/ _expr_101:any;
/*private*/ _expr_102:any;
/*private*/ _expr_103:any;
/*private*/ _expr_104:any;
/*private*/ _expr_105:any;
/*private*/ _expr_106:any;
/*private*/ _expr_107:any;
/*private*/ _expr_110:any;
/*private*/ _expr_111:any;
/*private*/ _expr_112:any;
/*private*/ _expr_113:any;
/*private*/ _expr_114:any;
/*private*/ _expr_115:any;
/*private*/ _expr_116:any;
/*private*/ _expr_119:any;
/*private*/ _expr_120:any;
/*private*/ _expr_121:any;
/*private*/ _expr_122:any;
/*private*/ _expr_123:any;
/*private*/ _expr_124:any;
/*private*/ _expr_125:any;
/*private*/ _expr_128:any;
/*private*/ _expr_129:any;
/*private*/ _expr_130:any;
/*private*/ _expr_131:any;
/*private*/ _expr_132:any;
/*private*/ _expr_133:any;
/*private*/ _expr_134:any;
/*private*/ _expr_137:any;
/*private*/ _expr_138:any;
/*private*/ _expr_139:any;
/*private*/ _expr_140:any;
/*private*/ _expr_141:any;
/*private*/ _expr_142:any;
/*private*/ _expr_143:any;
/*private*/ _expr_146:any;
/*private*/ _expr_147:any;
/*private*/ _expr_148:any;
/*private*/ _expr_149:any;
/*private*/ _expr_150:any;
/*private*/ _expr_151:any;
/*private*/ _expr_152:any;
/*private*/ _expr_155:any;
/*private*/ _expr_156:any;
/*private*/ _expr_157:any;
/*private*/ _expr_158:any;
/*private*/ _expr_159:any;
/*private*/ _expr_160:any;
/*private*/ _expr_161:any;
/*private*/ _expr_164:any;
/*private*/ _expr_165:any;
/*private*/ _expr_166:any;
/*private*/ _expr_167:any;
/*private*/ _expr_168:any;
/*private*/ _expr_169:any;
/*private*/ _expr_170:any;
/*private*/ _expr_173:any;
/*private*/ _expr_174:any;
/*private*/ _expr_175:any;
/*private*/ _expr_176:any;
/*private*/ _expr_177:any;
/*private*/ _expr_178:any;
/*private*/ _expr_179:any;
/*private*/ _expr_182:any;
/*private*/ _expr_183:any;
/*private*/ _expr_184:any;
/*private*/ _expr_185:any;
/*private*/ _expr_186:any;
/*private*/ _expr_187:any;
/*private*/ _expr_188:any;
constructor(viewUtils:any,parentInjector:any,declarationEl:any) {
}
injectorGetInternal(token:any,requestNodeIndex:number,notFoundResult:any):any {
if (((token === import46.DefaultValueAccessor) && (3 === requestNodeIndex))) { return this._DefaultValueAccessor_3_3; }
if (((token === import49.NG_VALUE_ACCESSOR) && (3 === requestNodeIndex))) { return this._NG_VALUE_ACCESSOR_3_4; }
if (((token === import47.FormControlName) && (3 === requestNodeIndex))) { return this._FormControlName_3_5; }
if (((token === import50.NgControl) && (3 === requestNodeIndex))) { return this._NgControl_3_6; }
if (((token === import45.NgControlStatus) && (3 === requestNodeIndex))) { return this._NgControlStatus_3_7; }
if (((token === import46.DefaultValueAccessor) && (6 === requestNodeIndex))) { return this._DefaultValueAccessor_6_3; }
if (((token === import49.NG_VALUE_ACCESSOR) && (6 === requestNodeIndex))) { return this._NG_VALUE_ACCESSOR_6_4; }
if (((token === import47.FormControlName) && (6 === requestNodeIndex))) { return this._FormControlName_6_5; }
if (((token === import50.NgControl) && (6 === requestNodeIndex))) { return this._NgControl_6_6; }
if (((token === import45.NgControlStatus) && (6 === requestNodeIndex))) { return this._NgControlStatus_6_7; }
if (((token === import46.DefaultValueAccessor) && (9 === requestNodeIndex))) { return this._DefaultValueAccessor_9_3; }
if (((token === import49.NG_VALUE_ACCESSOR) && (9 === requestNodeIndex))) { return this._NG_VALUE_ACCESSOR_9_4; }
if (((token === import47.FormControlName) && (9 === requestNodeIndex))) { return this._FormControlName_9_5; }
if (((token === import50.NgControl) && (9 === requestNodeIndex))) { return this._NgControl_9_6; }
if (((token === import45.NgControlStatus) && (9 === requestNodeIndex))) { return this._NgControlStatus_9_7; }
if (((token === import46.DefaultValueAccessor) && (12 === requestNodeIndex))) { return this._DefaultValueAccessor_12_3; }
if (((token === import49.NG_VALUE_ACCESSOR) && (12 === requestNodeIndex))) { return this._NG_VALUE_ACCESSOR_12_4; }
if (((token === import47.FormControlName) && (12 === requestNodeIndex))) { return this._FormControlName_12_5; }
if (((token === import50.NgControl) && (12 === requestNodeIndex))) { return this._NgControl_12_6; }
if (((token === import45.NgControlStatus) && (12 === requestNodeIndex))) { return this._NgControlStatus_12_7; }
if (((token === import46.DefaultValueAccessor) && (15 === requestNodeIndex))) { return this._DefaultValueAccessor_15_3; }
if (((token === import49.NG_VALUE_ACCESSOR) && (15 === requestNodeIndex))) { return this._NG_VALUE_ACCESSOR_15_4; }
if (((token === import47.FormControlName) && (15 === requestNodeIndex))) { return this._FormControlName_15_5; }
if (((token === import50.NgControl) && (15 === requestNodeIndex))) { return this._NgControl_15_6; }
if (((token === import45.NgControlStatus) && (15 === requestNodeIndex))) { return this._NgControlStatus_15_7; }
if (((token === import46.DefaultValueAccessor) && (18 === requestNodeIndex))) { return this._DefaultValueAccessor_18_3; }
if (((token === import49.NG_VALUE_ACCESSOR) && (18 === requestNodeIndex))) { return this._NG_VALUE_ACCESSOR_18_4; }
if (((token === import47.FormControlName) && (18 === requestNodeIndex))) { return this._FormControlName_18_5; }
if (((token === import50.NgControl) && (18 === requestNodeIndex))) { return this._NgControl_18_6; }
if (((token === import45.NgControlStatus) && (18 === requestNodeIndex))) { return this._NgControlStatus_18_7; }
if (((token === import46.DefaultValueAccessor) && (21 === requestNodeIndex))) { return this._DefaultValueAccessor_21_3; }
if (((token === import49.NG_VALUE_ACCESSOR) && (21 === requestNodeIndex))) { return this._NG_VALUE_ACCESSOR_21_4; }
if (((token === import47.FormControlName) && (21 === requestNodeIndex))) { return this._FormControlName_21_5; }
if (((token === import50.NgControl) && (21 === requestNodeIndex))) { return this._NgControl_21_6; }
if (((token === import45.NgControlStatus) && (21 === requestNodeIndex))) { return this._NgControlStatus_21_7; }
if (((token === import46.DefaultValueAccessor) && (24 === requestNodeIndex))) { return this._DefaultValueAccessor_24_3; }
if (((token === import49.NG_VALUE_ACCESSOR) && (24 === requestNodeIndex))) { return this._NG_VALUE_ACCESSOR_24_4; }
if (((token === import47.FormControlName) && (24 === requestNodeIndex))) { return this._FormControlName_24_5; }
if (((token === import50.NgControl) && (24 === requestNodeIndex))) { return this._NgControl_24_6; }
if (((token === import45.NgControlStatus) && (24 === requestNodeIndex))) { return this._NgControlStatus_24_7; }
if (((token === import46.DefaultValueAccessor) && (27 === requestNodeIndex))) { return this._DefaultValueAccessor_27_3; }
if (((token === import49.NG_VALUE_ACCESSOR) && (27 === requestNodeIndex))) { return this._NG_VALUE_ACCESSOR_27_4; }
if (((token === import47.FormControlName) && (27 === requestNodeIndex))) { return this._FormControlName_27_5; }
if (((token === import50.NgControl) && (27 === requestNodeIndex))) { return this._NgControl_27_6; }
if (((token === import45.NgControlStatus) && (27 === requestNodeIndex))) { return this._NgControlStatus_27_7; }
if (((token === import46.DefaultValueAccessor) && (30 === requestNodeIndex))) { return this._DefaultValueAccessor_30_3; }
if (((token === import49.NG_VALUE_ACCESSOR) && (30 === requestNodeIndex))) { return this._NG_VALUE_ACCESSOR_30_4; }
if (((token === import47.FormControlName) && (30 === requestNodeIndex))) { return this._FormControlName_30_5; }
if (((token === import50.NgControl) && (30 === requestNodeIndex))) { return this._NgControl_30_6; }
if (((token === import45.NgControlStatus) && (30 === requestNodeIndex))) { return this._NgControlStatus_30_7; }
if (((token === import46.DefaultValueAccessor) && (33 === requestNodeIndex))) { return this._DefaultValueAccessor_33_3; }
if (((token === import49.NG_VALUE_ACCESSOR) && (33 === requestNodeIndex))) { return this._NG_VALUE_ACCESSOR_33_4; }
if (((token === import47.FormControlName) && (33 === requestNodeIndex))) { return this._FormControlName_33_5; }
if (((token === import50.NgControl) && (33 === requestNodeIndex))) { return this._NgControl_33_6; }
if (((token === import45.NgControlStatus) && (33 === requestNodeIndex))) { return this._NgControlStatus_33_7; }
if (((token === import46.DefaultValueAccessor) && (36 === requestNodeIndex))) { return this._DefaultValueAccessor_36_3; }
if (((token === import49.NG_VALUE_ACCESSOR) && (36 === requestNodeIndex))) { return this._NG_VALUE_ACCESSOR_36_4; }
if (((token === import47.FormControlName) && (36 === requestNodeIndex))) { return this._FormControlName_36_5; }
if (((token === import50.NgControl) && (36 === requestNodeIndex))) { return this._NgControl_36_6; }
if (((token === import45.NgControlStatus) && (36 === requestNodeIndex))) { return this._NgControlStatus_36_7; }
if (((token === import46.DefaultValueAccessor) && (39 === requestNodeIndex))) { return this._DefaultValueAccessor_39_3; }
if (((token === import49.NG_VALUE_ACCESSOR) && (39 === requestNodeIndex))) { return this._NG_VALUE_ACCESSOR_39_4; }
if (((token === import47.FormControlName) && (39 === requestNodeIndex))) { return this._FormControlName_39_5; }
if (((token === import50.NgControl) && (39 === requestNodeIndex))) { return this._NgControl_39_6; }
if (((token === import45.NgControlStatus) && (39 === requestNodeIndex))) { return this._NgControlStatus_39_7; }
if (((token === import46.DefaultValueAccessor) && (42 === requestNodeIndex))) { return this._DefaultValueAccessor_42_3; }
if (((token === import49.NG_VALUE_ACCESSOR) && (42 === requestNodeIndex))) { return this._NG_VALUE_ACCESSOR_42_4; }
if (((token === import47.FormControlName) && (42 === requestNodeIndex))) { return this._FormControlName_42_5; }
if (((token === import50.NgControl) && (42 === requestNodeIndex))) { return this._NgControl_42_6; }
if (((token === import45.NgControlStatus) && (42 === requestNodeIndex))) { return this._NgControlStatus_42_7; }
if (((token === import46.DefaultValueAccessor) && (45 === requestNodeIndex))) { return this._DefaultValueAccessor_45_3; }
if (((token === import49.NG_VALUE_ACCESSOR) && (45 === requestNodeIndex))) { return this._NG_VALUE_ACCESSOR_45_4; }
if (((token === import47.FormControlName) && (45 === requestNodeIndex))) { return this._FormControlName_45_5; }
if (((token === import50.NgControl) && (45 === requestNodeIndex))) { return this._NgControl_45_6; }
if (((token === import45.NgControlStatus) && (45 === requestNodeIndex))) { return this._NgControlStatus_45_7; }
if (((token === import46.DefaultValueAccessor) && (48 === requestNodeIndex))) { return this._DefaultValueAccessor_48_3; }
if (((token === import49.NG_VALUE_ACCESSOR) && (48 === requestNodeIndex))) { return this._NG_VALUE_ACCESSOR_48_4; }
if (((token === import47.FormControlName) && (48 === requestNodeIndex))) { return this._FormControlName_48_5; }
if (((token === import50.NgControl) && (48 === requestNodeIndex))) { return this._NgControl_48_6; }
if (((token === import45.NgControlStatus) && (48 === requestNodeIndex))) { return this._NgControlStatus_48_7; }
if (((token === import46.DefaultValueAccessor) && (51 === requestNodeIndex))) { return this._DefaultValueAccessor_51_3; }
if (((token === import49.NG_VALUE_ACCESSOR) && (51 === requestNodeIndex))) { return this._NG_VALUE_ACCESSOR_51_4; }
if (((token === import47.FormControlName) && (51 === requestNodeIndex))) { return this._FormControlName_51_5; }
if (((token === import50.NgControl) && (51 === requestNodeIndex))) { return this._NgControl_51_6; }
if (((token === import45.NgControlStatus) && (51 === requestNodeIndex))) { return this._NgControlStatus_51_7; }
if (((token === import46.DefaultValueAccessor) && (54 === requestNodeIndex))) { return this._DefaultValueAccessor_54_3; }
if (((token === import49.NG_VALUE_ACCESSOR) && (54 === requestNodeIndex))) { return this._NG_VALUE_ACCESSOR_54_4; }
if (((token === import47.FormControlName) && (54 === requestNodeIndex))) { return this._FormControlName_54_5; }
if (((token === import50.NgControl) && (54 === requestNodeIndex))) { return this._NgControl_54_6; }
if (((token === import45.NgControlStatus) && (54 === requestNodeIndex))) { return this._NgControlStatus_54_7; }
if (((token === import46.DefaultValueAccessor) && (57 === requestNodeIndex))) { return this._DefaultValueAccessor_57_3; }
if (((token === import49.NG_VALUE_ACCESSOR) && (57 === requestNodeIndex))) { return this._NG_VALUE_ACCESSOR_57_4; }
if (((token === import47.FormControlName) && (57 === requestNodeIndex))) { return this._FormControlName_57_5; }
if (((token === import50.NgControl) && (57 === requestNodeIndex))) { return this._NgControl_57_6; }
if (((token === import45.NgControlStatus) && (57 === requestNodeIndex))) { return this._NgControlStatus_57_7; }
if (((token === import46.DefaultValueAccessor) && (60 === requestNodeIndex))) { return this._DefaultValueAccessor_60_3; }
if (((token === import49.NG_VALUE_ACCESSOR) && (60 === requestNodeIndex))) { return this._NG_VALUE_ACCESSOR_60_4; }
if (((token === import47.FormControlName) && (60 === requestNodeIndex))) { return this._FormControlName_60_5; }
if (((token === import50.NgControl) && (60 === requestNodeIndex))) { return this._NgControl_60_6; }
if (((token === import45.NgControlStatus) && (60 === requestNodeIndex))) { return this._NgControlStatus_60_7; }
if (((token === import44.FormGroupDirective) && ((1 <= requestNodeIndex) && (requestNodeIndex <= 62)))) { return this._FormGroupDirective_1_3; }
if (((token === import51.ControlContainer) && ((1 <= requestNodeIndex) && (requestNodeIndex <= 62)))) { return this._ControlContainer_1_4; }
if (((token === import45.NgControlStatusGroup) && ((1 <= requestNodeIndex) && (requestNodeIndex <= 62)))) { return this._NgControlStatusGroup_1_5; }
return notFoundResult;
}
}
export function viewFactory_AppComponent0(viewUtils:any,parentInjector:any,declarationEl:any):any {
return new _View_AppComponent0(viewUtils,parentInjector,declarationEl);
}
@@ -0,0 +1,14 @@
// @strictNullChecks: true
// Repros from #10641
const CONFIG = {
foo: '',
setFoo: function(foo: string) {
CONFIG.foo = foo;
}
};
const helper = function<T>(t: T[]) {
helper(t.slice(1));
}
@@ -0,0 +1,23 @@
enum E {
A, B, C
}
enum Computed {
A = 1 << 1,
B = 1 << 2,
C = 1 << 3,
}
let n: number;
let e: E = n; // ok because it's too inconvenient otherwise
e = 0; // ok, in range
e = 4; // ok, out of range, but allowed computed enums don't have all members
let a: E.A = 0; // ok, A === 0
a = 2; // error, 2 !== 0
a = n; // ok
let c: Computed = n; // ok
c = n; // ok
c = 4; // ok
let ca: Computed.A = 1; // error, Computed.A isn't a literal type because Computed has no enum literals
@@ -0,0 +1,28 @@
module X {
export enum Foo {
A, B
}
}
module Y {
export enum Foo {
A, B
}
}
module Z {
export enum Foo {
A = 1 << 1,
B = 1 << 2,
}
}
module Ka {
export enum Foo {
A = 1 << 10,
B = 1 << 11,
}
}
const e0: X.Foo | boolean = Y.Foo.A; // ok
const e1: X.Foo | boolean = Z.Foo.A; // not legal, Z is computed
const e2: X.Foo.A | X.Foo.B | boolean = Z.Foo.A; // still not legal
const e3: X.Foo.B | boolean = Z.Foo.A; // not legal
const e4: X.Foo.A | boolean = Z.Foo.A; // not legal either because Z.Foo is computed and Z.Foo.A is not necessarily assignable to X.Foo.A
const e5: Ka.Foo | boolean = Z.Foo.A; // ok
@@ -0,0 +1,3 @@
enum A {
Infinity = 1
}
@@ -0,0 +1,3 @@
enum A {
NaN = 1
}
@@ -0,0 +1,3 @@
enum A {
"-Infinity" = 1
}
@@ -1,5 +1,6 @@
// @lib: es5,es2015.promise
// @noEmitHelpers: true
// @allowUnreachableCode: true
// @target: ES5
declare var x, y, z, a, b, c;
@@ -0,0 +1,4 @@
// @module: commonjs
// issue: https://github.com/Microsoft/TypeScript/issues/10778
const [a, , b] = [1, 2, 3];
export { a, b };
@@ -0,0 +1,5 @@
// @target: es6
// @module: amd
export function* foo() {
yield
}
@@ -0,0 +1,11 @@
// @target: es5
// @lib: es5,es6
// @noEmitHelpers: true
async function test(skip: boolean) {
if (!skip) {
await 1
}
else {
throw Error('test')
}
}
@@ -11,10 +11,10 @@ export default { aIndex: 0 };
import a from ".";
import aIndex from "./";
a.a;
aIndex.a; //aIndex.aIndex; See GH#9690
aIndex.aIndex;
// @Filename: /a/b/test.ts
import a from "..";
import aIndex from "../";
a.a;
aIndex.a; //aIndex.aIndex;
aIndex.aIndex;
@@ -0,0 +1,5 @@
// @traceResolution: true
// @moduleResolution: node
// @Filename: /a.ts
import foo from "./foo/";
@@ -1,3 +1,5 @@
// @allowUnreachableCode: true
declare function map<T, U>(array: T, func: (x: T) => U): U;
declare function identity<V>(y: V): V;
var s: string;
@@ -0,0 +1,16 @@
// @declaration: true
namespace N {
function S() {}
}
module M {
function F() {}
}
declare namespace ns {
let f: number;
}
var foge: N.S;
var foo: M.F;
let x: ns.A;
@@ -0,0 +1,18 @@
// @strictNullChecks: true
// Repro from #10811
interface Pet {
name: string;
}
function isPet(pet: any): pet is Pet {
return typeof pet.name === "string";
}
export function speak<TPet extends Pet>(pet: TPet, voice: (pet: TPet) => string): string {
if (!isPet(pet)) {
throw new Error("Expected \"pet\" to be a Pet");
}
return voice(pet);
}
@@ -0,0 +1,3 @@
enum E { A, B }
let n: number;
let z: E | boolean = n;
+63 -1
View File
@@ -91,4 +91,66 @@ async function I() {
catch (e) {
return Promise.reject(Error());
}
}
}
// addresses github issue #4903:
const p00 = p.catch();
const p01 = p.catch(undefined);
const p07 = p.catch(null);
const p02 = p.catch(() => 1);
const p03 = p.catch(() => {});
const p04 = p.catch(() => {throw 1});
const p05 = p.catch(() => Promise.reject(1));
const p06 = p.catch(() => Promise.resolve(1));
const p10 = p.then();
const p20 = p.then(undefined);
const p21 = p.then(() => 1);
const p22 = p.then(() => {});
const p23 = p.then(() => {throw 1});
const p24 = p.then(() => Promise.resolve(1));
const p25 = p.then(() => Promise.reject(1));
const p30 = p.then(undefined, undefined);
const p31 = p.then(undefined, () => 1);
const p32 = p.then(undefined, () => {});
const p33 = p.then(undefined, () => {throw 1});
const p34 = p.then(undefined, () => Promise.resolve(1));
const p35 = p.then(undefined, () => Promise.reject(1));
const p40 = p.then(() => "1", undefined);
const p41 = p.then(() => "1", () => 1);
const p42 = p.then(() => "1", () => {});
const p43 = p.then(() => "1", () => {throw 1});
const p44 = p.then(() => "1", () => Promise.resolve(1));
const p45 = p.then(() => "1", () => Promise.reject(1));
const p50 = p.then(() => {}, undefined);
const p51 = p.then(() => {}, () => 1);
const p52 = p.then(() => {}, () => {});
const p53 = p.then(() => {}, () => {throw 1});
const p54 = p.then(() => {}, () => Promise.resolve(1));
const p55 = p.then(() => {}, () => Promise.reject(1));
const p60 = p.then(() => {throw 1}, undefined);
const p61 = p.then(() => {throw 1}, () => 1);
const p62 = p.then(() => {throw 1}, () => {});
const p63 = p.then(() => {throw 1}, () => {throw 1});
const p64 = p.then(() => {throw 1}, () => Promise.resolve(1));
const p65 = p.then(() => {throw 1}, () => Promise.reject(1));
const p70 = p.then(() => Promise.resolve("1"), undefined);
const p71 = p.then(() => Promise.resolve("1"), () => 1);
const p72 = p.then(() => Promise.resolve("1"), () => {});
const p73 = p.then(() => Promise.resolve("1"), () => {throw 1});
const p74 = p.then(() => Promise.resolve("1"), () => Promise.resolve(1));
const p75 = p.then(() => Promise.resolve("1"), () => Promise.reject(1));
const p80 = p.then(() => Promise.reject(1), undefined);
const p81 = p.then(() => Promise.reject(1), () => 1);
const p82 = p.then(() => Promise.reject(1), () => {});
const p83 = p.then(() => Promise.reject(1), () => {throw 1});
const p84 = p.then(() => Promise.reject(1), () => Promise.resolve(1));
const p85 = p.then(() => Promise.reject(1), () => Promise.reject(1));
@@ -0,0 +1,157 @@
// @target: es6
// @strictNullChecks: true
declare var p: Promise<boolean>;
const a = p.then();
const b = p.then(b => 1);
const c = p.then(b => 1, e => 'error');
const d = p.then(b => 1, e => { });
const e = p.then(b => 1, e => { throw Error(); });
const f = p.then(b => 1, e => Promise.reject(Error()));
const g = p.catch(e => 'error');
const h = p.catch(e => { });
const i = p.catch(e => { throw Error(); });
const j = p.catch(e => Promise.reject(Error()));
async function A() {
const a = await p;
return a;
}
async function B() {
const a = await p;
return 1;
}
// NOTE: This reports a "No best comment type exists among return expressions." error, and is
// ignored to get the types result for the test.
// async function C() {
// try {
// const a = await p;
// return 1;
// }
// catch (e) {
// return 'error';
// }
// }
async function D() {
try {
const a = await p;
return 1;
}
catch (e) {
}
}
async function E() {
try {
const a = await p;
return 1;
}
catch (e) {
throw Error();
}
}
async function F() {
try {
const a = await p;
return 1;
}
catch (e) {
return Promise.reject(Error());
}
}
async function G() {
try {
const a = await p;
return a;
}
catch (e) {
return;
}
}
async function H() {
try {
const a = await p;
return a;
}
catch (e) {
throw Error();
}
}
async function I() {
try {
const a = await p;
return a;
}
catch (e) {
return Promise.reject(Error());
}
}
// addresses github issue #4903:
const p00 = p.catch();
const p01 = p.catch(undefined);
const p07 = p.catch(null);
const p02 = p.catch(() => 1);
const p03 = p.catch(() => {});
const p04 = p.catch(() => {throw 1});
const p05 = p.catch(() => Promise.reject(1));
const p06 = p.catch(() => Promise.resolve(1));
const p10 = p.then();
const p20 = p.then(undefined);
const p21 = p.then(() => 1);
const p22 = p.then(() => {});
const p23 = p.then(() => {throw 1});
const p24 = p.then(() => Promise.resolve(1));
const p25 = p.then(() => Promise.reject(1));
const p30 = p.then(undefined, undefined);
const p31 = p.then(undefined, () => 1);
const p32 = p.then(undefined, () => {});
const p33 = p.then(undefined, () => {throw 1});
const p34 = p.then(undefined, () => Promise.resolve(1));
const p35 = p.then(undefined, () => Promise.reject(1));
const p40 = p.then(() => "1", undefined);
const p41 = p.then(() => "1", () => 1);
const p42 = p.then(() => "1", () => {});
const p43 = p.then(() => "1", () => {throw 1});
const p44 = p.then(() => "1", () => Promise.resolve(1));
const p45 = p.then(() => "1", () => Promise.reject(1));
const p50 = p.then(() => {}, undefined);
const p51 = p.then(() => {}, () => 1);
const p52 = p.then(() => {}, () => {});
const p53 = p.then(() => {}, () => {throw 1});
const p54 = p.then(() => {}, () => Promise.resolve(1));
const p55 = p.then(() => {}, () => Promise.reject(1));
const p60 = p.then(() => {throw 1}, undefined);
const p61 = p.then(() => {throw 1}, () => 1);
const p62 = p.then(() => {throw 1}, () => {});
const p63 = p.then(() => {throw 1}, () => {throw 1});
const p64 = p.then(() => {throw 1}, () => Promise.resolve(1));
const p65 = p.then(() => {throw 1}, () => Promise.reject(1));
const p70 = p.then(() => Promise.resolve("1"), undefined);
const p71 = p.then(() => Promise.resolve("1"), () => 1);
const p72 = p.then(() => Promise.resolve("1"), () => {});
const p73 = p.then(() => Promise.resolve("1"), () => {throw 1});
const p74 = p.then(() => Promise.resolve("1"), () => Promise.resolve(1));
const p75 = p.then(() => Promise.resolve("1"), () => Promise.reject(1));
const p80 = p.then(() => Promise.reject(1), undefined);
const p81 = p.then(() => Promise.reject(1), () => 1);
const p82 = p.then(() => Promise.reject(1), () => {});
const p83 = p.then(() => Promise.reject(1), () => {throw 1});
const p84 = p.then(() => Promise.reject(1), () => Promise.resolve(1));
const p85 = p.then(() => Promise.reject(1), () => Promise.reject(1));
@@ -0,0 +1,23 @@
interface Interface {
}
class SomeClass {
}
type TypeAliasForSomeClass = SomeClass;
type someType = { x: number };
function acceptsSomeType(a: someType) {
}
let one = Interface;
let two = InterfaceNotFound;
let three = TypeAliasForSomeClass;
let four = new TypeAliasForSomeClass();
let five = new TypeAliasForSomeClassNotFound();
let six = someType;
acceptsSomeType(someType);
acceptsSomeType(someTypeNotFound);
@@ -0,0 +1,21 @@
// @module: amd
// @filename: helloInterface.ts
interface HelloInterface {
world: any;
}
export = HelloInterface;
// @filename: helloNamespace.ts
namespace HelloNamespace {
export type world = any;
}
export = HelloNamespace;
// @filename: world.ts
import HelloInterface = require("helloInterface");
import HelloNamespace = require("helloNamespace");
HelloInterface.world;
HelloNamespace.world;
@@ -0,0 +1,40 @@
interface A {
inAll: string;
notInB: string;
notInC: string;
}
interface B {
inAll: boolean;
onlyInB: number;
notInC: string;
}
interface C {
inAll: number;
notInB: string;
}
type AB = A | B;
type ABC = C | AB;
var ab: AB;
var abc: ABC;
declare const x: "foo" | "bar";
declare const bFoo: B | "foo";
x.nope();
bFoo.onlyInB;
x.length; // Ok
bFoo.length;
ab.onlyInB;
ab.notInC; // Ok
abc.notInC;
ab.notInB;
abc.notInB;
abc.inAll; // Ok
abc.inNone;
@@ -1,3 +1,5 @@
// @allowUnreachableCode: true
let x: string | number | boolean | RegExp;
let cond: boolean;
@@ -1,3 +1,5 @@
// @allowUnreachableCode: true
var BOOLEAN: boolean;
var NUMBER: number;
var STRING: string;
@@ -1,3 +1,5 @@
// @allowUnreachableCode: true
//Expect to have compiler errors
//Comma operator in fuction arguments and return
function foo(x: number, y: string) {
@@ -1,3 +1,5 @@
// @allowUnreachableCode: true
//Comma operator in for loop
for (var i = 0, j = 10; i < j; i++, j--)
{
@@ -1,3 +1,5 @@
// @allowUnreachableCode: true
var ANY: any;
var BOOLEAN: boolean;
var NUMBER: number;
@@ -1,3 +1,5 @@
// @allowUnreachableCode: true
var ANY: any;
var BOOLEAN: boolean;
var NUMBER: number;
@@ -1,3 +1,5 @@
// @allowUnreachableCode: true
var ANY: any;
var BOOLEAN: boolean;
var NUMBER: number;
@@ -1,3 +1,5 @@
// @allowUnreachableCode: true
var ANY: any;
var BOOLEAN: boolean;
var NUMBER: number;
@@ -1,3 +1,5 @@
// @allowUnreachableCode: true
var ANY: any;
var BOOLEAN: boolean;
var NUMBER: number;
@@ -1,3 +1,5 @@
// @allowUnreachableCode: true
var ANY: any;
var BOOLEAN: boolean;
var NUMBER: number;
@@ -1,3 +1,5 @@
// @allowUnreachableCode: true
// ~ operator on any type
var ANY: any;
@@ -1,3 +1,5 @@
// @allowUnreachableCode: true
// ~ operator on boolean type
var BOOLEAN: boolean;
@@ -1,3 +1,5 @@
// @allowUnreachableCode: true
// ~ operator on enum type
enum ENUM1 { A, B, "" };
@@ -1,3 +1,5 @@
// @allowUnreachableCode: true
// ~ operator on number type
var NUMBER: number;
var NUMBER1: number[] = [1, 2];
@@ -1,3 +1,5 @@
// @allowUnreachableCode: true
// ~ operator on string type
var STRING: string;
var STRING1: string[] = ["", "abc"];
@@ -10,3 +10,13 @@ declare var React: any;
<div>Dot goes here: &middot; &notAnEntity; </div>;
<div>Be careful of &quot;-ed strings!</div>;
<div>&#0123;&#123;braces&#x7d;&#x7D;</div>;
// Escapes do nothing
<div>\n</div>;
// Also works in string literal attributes
<div attr="&#0123;&hellip;&#x7D;\"></div>;
// Does not happen for a string literal that happens to be inside an attribute (and escapes then work)
<div attr={"&#0123;&hellip;&#x7D;\""}></div>;
// Preserves single quotes
<div attr='"'></div>
@@ -1,3 +1,4 @@
// @allowUnreachableCode: true
// @noImplicitAny: true
let x: (a: string) => string;
@@ -1,3 +1,4 @@
// @allowUnreachableCode: true
// @noImplicitAny: true
let x: (a: string) => string;
@@ -1,3 +1,4 @@
// @allowUnreachableCode: true
// @noImplicitAny: true
let x: (a: string) => string;
@@ -0,0 +1,178 @@
enum E {
A, B, C
}
let cond: boolean;
function f1(p1 = 1, p2 = "abc", p3 = true, p4 = E.A) {
var v1 = 1;
var v2 = -123;
var v3 = 3 + 4;
var v4 = "abc";
var v5 = "";
var v6 = "abc" + "def";
var v7 = true;
var v8 = E.A;
let x1 = 1;
let x2 = -123;
let x3 = 3 + 4;
let x4 = "abc";
let x5 = "";
let x6 = "abc" + "def";
let x7 = true;
var x8 = E.A;
const c1 = 1;
const c2 = -123;
const c3 = 3 + 4;
const c4 = "abc";
const c5 = "";
const c6 = "abc" + "def";
const c7 = true;
const c8 = E.A;
}
function f2(p1: 1 = 1, p2: "abc" = "abc", p3: true = true, p4: E.A = E.A) {
var v1: 1 = 1;
var v2: -123 = -123;
var v3: "abc" = "abc";
var v4: true = true;
var v5: E.A = E.A;
let x1: 1 = 1;
let x2: -123 = -123;
let x3: "abc" = "abc";
let x4: true = true;
let x5: E.A = E.A;
}
function f3() {
const c1 = cond ? 1 : 2;
const c2 = cond ? 1 : "two";
const c3 = cond ? E.A : cond ? true : 123;
const c4 = cond ? "abc" : null;
const c5 = cond ? 456 : undefined;
const c6: { kind: 123 } = { kind: 123 };
const c7: [1 | 2, "foo" | "bar"] = [1, "bar"];
const c8 = cond ? c6 : cond ? c7 : "hello";
let x1 = c1;
let x2 = c2;
let x3 = c3;
let x4 = c4;
let x5 = c5;
let x6 = c6;
let x7 = c7;
let x8 = c8;
}
class C1 {
x1 = 1;
x2 = -123;
x3 = 3 + 4;
x4 = "abc";
x5 = "";
x6 = "abc" + "def";
x7 = true;
x8 = E.A;
readonly c1 = 1;
readonly c2 = -123;
readonly c3 = 3 + 4;
readonly c4 = "abc";
readonly c5 = "";
readonly c6 = "abc" + "def";
readonly c7 = true;
readonly c8 = E.A;
}
function f4() {
const c1 = { a: 1, b: "foo" };
const c2: { a : 0 | 1, b: "foo" | "bar" } = { a: 1, b: "foo" };
let x1 = { a: 1, b: "foo" };
let x2: { a : 0 | 1, b: "foo" | "bar" } = { a: 1, b: "foo" };
}
function f5() {
const c1 = [1, "foo"];
const c2: (1 | "foo")[] = [1, "foo"];
const c3: [1, "foo"] = [1, "foo"];
let x1 = [1, "foo"];
let x2: (1 | "foo")[] = [1, "foo"];
let x3: [1, "foo"] = [1, "foo"];
}
function f6() {
const { c1 = true, c2 = 0, c3 = "foo" } = { c1: false, c2: 1, c3: "bar" };
let { x1 = true, x2 = 0, x3 = "foo" } = { x1: false, x2: 1, x3: "bar" };
}
function f10() {
return "hello";
}
function f11() {
return cond ? 1 : "two";
}
function f12() {
if (cond) {
return 1;
}
else {
return "two";
}
}
class C2 {
foo() {
return 0;
}
bar() {
return cond ? 0 : 1;
}
}
function f20() {
const f1 = () => 0;
const f2 = () => "hello";
const f3 = () => true;
const f4 = () => E.C;
const f5 = (): "foo" => "foo";
const f6: () => "foo" | "bar" = () => "bar";
const f7: (() => "foo") | (() => "bar") = () => "bar";
}
declare function g1<T>(x: T): T;
declare function g2<T>(x: T, y: T): T;
declare function g3<T, U>(x: T, y: U): T | U;
declare function g4<T>(x: T): T[];
declare function g5<T extends number>(x: T, y: T): T[];
declare function g6<T>(x: T[]): T;
declare function g7<T>(x: T[]): T[];
declare function g8<T>(x: T, f: (p: T) => T): T;
const a: (1 | 2)[] = [1, 2];
const x1 = g1(1); // Type 1
const x2 = g2(1, 1); // Type 1
const x3 = g2(1, 2); // Type 1 | 2
const x4 = g3(1, "two"); // Type 1 | "two"
const x5 = g4(1); // Type number[]
const x6 = g5(1, 2); // Type (1 | 2)[]
const x7 = g6([1, 2]); // Type number
const x8 = g6(a); // Type 1 | 2
const x9 = g7(a); // Type (1 | 2)[]
const x10 = g8(1, x => x); // Type number
const x11 = g8(1, x => x + 1); // Type number
function makeArray<T>(x: T): T[] {
return [x];
}
function append<T>(a: T[], x: T): T[] {
let result = a.slice();
result.push(x);
return result;
}
type Bit = 0 | 1;
let aa = makeArray<Bit>(0);
aa = append(aa, 1);
@@ -0,0 +1,13 @@
const obj = {
a: "foo" as "foo",
b: <"foo">"foo",
c: "foo"
};
let x1 = 1 as (0 | 1);
let x2 = 1;
let { a = "foo" } = { a: "foo" };
let { b = "foo" as "foo" } = { b: "bar" };
let { c = "foo" } = { c: "bar" as "bar" };
let { d = "foo" as "foo" } = { d: "bar" as "bar" };
@@ -7,7 +7,7 @@ function getFalsyPrimitive(x: "boolean" | "string"): boolean | string;
function getFalsyPrimitive(x: "boolean" | "number"): boolean | number;
function getFalsyPrimitive(x: "number" | "string"): number | string;
function getFalsyPrimitive(x: "number" | "string" | "boolean"): number | string | boolean;
function getFalsyPrimitive(x: string) {
function getFalsyPrimitive(x: string): string | number | boolean {
if (x === "string") {
return "";
}
@@ -28,9 +28,9 @@ namespace Consts1 {
const FALSE = getFalsyPrimitive("boolean");
}
const string: "string" = "string"
const number: "number" = "number"
const boolean: "boolean" = "boolean"
const string = "string"
const number = "number"
const boolean = "boolean"
const stringOrNumber = string || number;
const stringOrBoolean = string || boolean;
@@ -3,6 +3,6 @@
declare function f(x: (p: "foo" | "bar") => "foo");
f(y => {
let z = y = "foo";
const z = y = "foo";
return z;
})
@@ -10,12 +10,9 @@
//// }
//// }
goTo.marker('className');
verify.quickInfoIs('class Sphere');
verify.quickInfoAt("className", "class Sphere");
goTo.marker('insertHere');
edit.insert("ray: Ray;");
goTo.marker('className');
verify.quickInfoIs('class Sphere');
verify.quickInfoAt("className", "class Sphere");
@@ -10,11 +10,9 @@
edit.disableFormatting();
goTo.marker('check');
verify.quickInfoIs('namespace Mod');
verify.quickInfoAt("check", "namespace Mod");
goTo.marker('insert');
edit.insert("x: number;\n");
goTo.marker('check');
verify.quickInfoIs('namespace Mod');
verify.quickInfoAt("check", "namespace Mod");
@@ -3,7 +3,6 @@
////namespace bar { }
////import bar = bar/**/;
goTo.marker();
verify.quickInfoIs(
verify.quickInfoAt("",
`namespace bar
import bar = bar`);
import bar = bar`);
@@ -10,26 +10,22 @@
/////*importBang*/import /*idBang*/bang = require("jquery");
////foo/*useFoo*/(bar/*useBar*/, baz/*useBaz*/, bang/*useBang*/);
goTo.marker("useFoo");
verify.quickInfoIs("import foo");
verify.quickInfoAt("useFoo", "import foo");
verify.goToDefinition({
useFoo: "importFoo",
importFoo: "module"
});
goTo.marker("useBar");
verify.quickInfoIs("import bar");
verify.quickInfoAt("useBar", "import bar");
verify.goToDefinition("useBar", "module");
goTo.marker("useBaz");
verify.quickInfoIs("import baz");
verify.quickInfoAt("useBaz", "import baz");
verify.goToDefinition({
useBaz: "importBaz",
idBaz: "module"
});
goTo.marker("useBang");
verify.quickInfoIs("import bang = require(\"jquery\")");
verify.quickInfoAt("useBang", "import bang = require(\"jquery\")");
verify.goToDefinition({
useBang: "importBang",
idBang: "module"
@@ -11,33 +11,15 @@
////var a/*9*/9 = Array<boolean>(1);
////var a/*10*/10 = Array("s");
goTo.marker('1');
verify.quickInfoIs('var a1: any[]');
goTo.marker('2');
verify.quickInfoIs('var a2: any[]');
goTo.marker('3');
verify.quickInfoIs('var a3: boolean[]');
goTo.marker('4');
verify.quickInfoIs('var a4: boolean[]');
goTo.marker('5');
verify.quickInfoIs('var a5: string[]');
goTo.marker('6');
verify.quickInfoIs('var a6: any[]');
goTo.marker('7');
verify.quickInfoIs('var a7: any[]');
goTo.marker('8');
verify.quickInfoIs('var a8: boolean[]');
goTo.marker('9');
verify.quickInfoIs('var a9: boolean[]');
goTo.marker('10');
verify.quickInfoIs('var a10: string[]');
verify.quickInfos({
1: "var a1: any[]",
2: "var a2: any[]",
3: "var a3: boolean[]",
4: "var a4: boolean[]",
5: "var a5: string[]",
6: "var a6: any[]",
7: "var a7: any[]",
8: "var a8: boolean[]",
9: "var a9: boolean[]",
10: "var a10: string[]"
});
@@ -2,5 +2,4 @@
////<(aa: number) =>void >(function myFn(b/**/b) { });
goTo.marker();
verify.quickInfoIs('(parameter) bb: number');
verify.quickInfoAt("", "(parameter) bb: number");
@@ -4,11 +4,10 @@
////namespace c/*2*/5b { export var y = 2; } // should be ok
/////*3*/
goTo.marker('1');
verify.quickInfoIs("class c5b\nnamespace c5b");
goTo.marker('2');
verify.quickInfoIs("class c5b\nnamespace c5b");
verify.quickInfos({
1: "class c5b\nnamespace c5b",
2: "class c5b\nnamespace c5b"
});
goTo.marker('3');
verify.completionListContains("c5b", "class c5b\nnamespace c5b");
@@ -11,5 +11,4 @@ goTo.marker('1');
verify.completionListContains('I');
verify.not.completionListContains('foo');
goTo.marker('2');
verify.quickInfoIs('var r: number');
verify.quickInfoAt("2", "var r: number");
@@ -5,8 +5,7 @@
////var x: m2f./*1*/
////var /*2*/r = m2f/*3*/;
goTo.marker('11');
verify.quickInfoIs('function m2f(x: number): void\nnamespace m2f');
verify.quickInfoAt("11", "function m2f(x: number): void\nnamespace m2f");
goTo.marker('1');
verify.completionListContains('I');
@@ -15,8 +14,7 @@ edit.insert('I.');
verify.not.completionListContains('foo');
edit.backspace(1);
goTo.marker('2');
verify.quickInfoIs('var r: (x: number) => void');
verify.quickInfoAt("2", "var r: (x: number) => void");
goTo.marker('3');
edit.insert('(');
@@ -12,8 +12,7 @@ edit.insert('C.');
verify.not.completionListContains('foo');
edit.backspace(1);
goTo.marker('2');
verify.quickInfoIs("var r: typeof m2g");
verify.quickInfoAt("2", "var r: typeof m2g");
goTo.marker('3');
edit.insert('(');
@@ -6,8 +6,7 @@
////r./*2*/
////var /*4*/r2 = m3d./*3*/
goTo.marker('1');
verify.quickInfoIs('var r: m3d');
verify.quickInfoAt("1", "var r: m3d");
goTo.marker('2');
verify.completionListContains('foo');
@@ -17,5 +16,4 @@ goTo.marker('3');
verify.completionListContains('y');
edit.insert('y;');
goTo.marker('4');
verify.quickInfoIs('var r2: number');
verify.quickInfoAt("4", "var r2: number");
@@ -6,8 +6,7 @@
////r./*2*/
////var /*4*/r2 = m3e./*3*/
goTo.marker('1');
verify.quickInfoIs('var r: m3e');
verify.quickInfoAt("1", "var r: m3e");
goTo.marker('2');
verify.completionListContains('foo');
@@ -18,5 +17,4 @@ goTo.marker('3');
verify.completionListContains('y');
edit.insert('y;');
goTo.marker('4');
verify.quickInfoIs('var r2: number');
verify.quickInfoAt("4", "var r2: number");
@@ -19,8 +19,7 @@ verify.completionListContains('m3f');
goTo.marker('3');
verify.currentSignatureHelpIs('m3f(): m3f');
goTo.marker('4');
verify.quickInfoIs('var r: m3f');
verify.quickInfoAt("4", "var r: m3f");
goTo.marker('5');
verify.completionListContains('foo');
@@ -16,42 +16,27 @@ var C = 'C';
var D = 'D'
goTo.marker(B);
edit.insert('constructor(val: T) { }');
goTo.marker('Asig');
verify.quickInfoIs("constructor A<string>(): A<string>");
goTo.marker('Bsig');
verify.quickInfoIs("constructor B<string>(val: string): B<string>");
goTo.marker('Csig');
verify.quickInfoIs("constructor C<string>(val: string): C<string>");
goTo.marker('Dsig');
verify.quickInfoIs("constructor D<T>(val: T): D<T>"); // Cannot resolve signature
verify.quickInfos({
Asig: "constructor A<string>(): A<string>",
Bsig: "constructor B<string>(val: string): B<string>",
Csig: "constructor C<string>(val: string): C<string>",
Dsig: "constructor D<T>(val: T): D<T>" // Cannot resolve signature
});
goTo.marker(C);
edit.deleteAtCaret('constructor(val: T) { }'.length);
goTo.marker('Asig');
verify.quickInfoIs("constructor A<string>(): A<string>");
goTo.marker('Bsig');
verify.quickInfoIs("constructor B<string>(val: string): B<string>");
goTo.marker('Csig');
verify.quickInfoIs("constructor C<T>(): C<T>"); // Cannot resolve signature
goTo.marker('Dsig');
verify.quickInfoIs("constructor D<T>(val: T): D<T>"); // Cannot resolve signature
verify.quickInfos({
Asig: "constructor A<string>(): A<string>",
Bsig: "constructor B<string>(val: string): B<string>",
Csig: "constructor C<T>(): C<T>", // Cannot resolve signature
Dsig: "constructor D<T>(val: T): D<T>" // Cannot resolve signature
});
goTo.marker(D);
edit.deleteAtCaret("val: T".length);
goTo.marker('Asig');
verify.quickInfoIs("constructor A<string>(): A<string>");
goTo.marker('Bsig');
verify.quickInfoIs("constructor B<string>(val: string): B<string>");
goTo.marker('Csig');
verify.quickInfoIs("constructor C<T>(): C<T>"); // Cannot resolve signature
goTo.marker('Dsig');
verify.quickInfoIs("constructor D<string>(): D<string>");
verify.quickInfos({
Asig: "constructor A<string>(): A<string>",
Bsig: "constructor B<string>(val: string): B<string>",
Csig: "constructor C<T>(): C<T>", // Cannot resolve signature
Dsig: "constructor D<string>(): D<string>"
});
@@ -20,23 +20,18 @@
////var i: I;
////var /*4*/c3 = [i, a];
goTo.marker('1');
verify.quickInfoIs('var c: {\n name: string;\n age: number;\n}[]');
goTo.marker('2');
verify.quickInfoIs('var c1: {\n name: string;\n age: number;\n}[]');
goTo.marker('3');
verify.quickInfoIs('var c2: ({\n\
name: string;\n\
age: number;\n\
address: string;\n\
} | {\n\
name: string;\n\
age: number;\n\
dob: Date;\n\
})[]');
goTo.marker('4');
verify.quickInfoIs('var c3: I[]');
verify.quickInfos({
1: "var c: {\n name: string;\n age: number;\n}[]",
2: "var c1: {\n name: string;\n age: number;\n}[]",
3:
`var c2: ({
name: string;
age: number;
address: string;
} | {
name: string;
age: number;
dob: Date;
})[]`,
4: "var c3: I[]"
});
@@ -9,11 +9,9 @@
//// }
//// }
goTo.marker('className');
verify.quickInfoIs('class Sphere');
verify.quickInfoAt("className", "class Sphere");
goTo.marker('interfaceGoesHere');
edit.insert("\r\ninterface Surface {\r\n reflect: () => number;\r\n}\r\n");
goTo.marker('className');
verify.quickInfoIs('class Sphere');
verify.quickInfoAt("className", "class Sphere");
+2 -4
View File
@@ -22,14 +22,12 @@ edit.insert('foo(1);');
goTo.marker('2');
verify.completionListContains('x');
goTo.marker('3');
verify.quickInfoIs('(local var) r: C<number>');
verify.quickInfoAt("3", "(local var) r: C<number>");
goTo.marker('4');
verify.completionListContains('x');
edit.insert('x;');
goTo.marker('5');
verify.quickInfoIs('(local var) r2: number');
verify.quickInfoAt("5", "(local var) r2: number");
verify.numberOfErrorsInCurrentFile(0);
@@ -9,6 +9,5 @@
//// }
////}
goTo.marker();
verify.quickInfoIs('var M.C.C: typeof M.C');
verify.quickInfoAt("", "var M.C.C: typeof M.C");
verify.numberOfErrorsInCurrentFile(0);
+40 -71
View File
@@ -58,80 +58,58 @@
////}
////var myVar = new m.m2.c/*33*/1();
goTo.marker('1');
verify.quickInfoIs("class c2", "This is class c2 without constuctor");
goTo.marker('2');
verify.quickInfoIs("var i2: c2", "");
verify.quickInfos({
1: ["class c2", "This is class c2 without constuctor"],
2: "var i2: c2"
});
goTo.marker('3');
verify.currentSignatureHelpDocCommentIs("");
goTo.marker('4');
verify.quickInfoIs("var i2_c: typeof c2", "");
goTo.marker('5');
verify.quickInfoIs("class c2", "This is class c2 without constuctor");
goTo.marker('6');
verify.quickInfoIs("class c3", "");
goTo.marker('7');
verify.quickInfoIs("var i3: c3", "");
verify.quickInfos({
4: "var i2_c: typeof c2",
5: ["class c2", "This is class c2 without constuctor"],
6: "class c3",
7: "var i3: c3"
});
goTo.marker('8');
verify.currentSignatureHelpDocCommentIs("Constructor comment");
goTo.marker('9');
verify.quickInfoIs("var i3_c: typeof c3", "");
goTo.marker('10');
verify.quickInfoIs("class c3", "");
goTo.marker('11');
verify.quickInfoIs("class c4", "Class comment");
goTo.marker('12');
verify.quickInfoIs("var i4: c4", "");
verify.quickInfos({
9: "var i3_c: typeof c3",
10: "class c3",
11: ["class c4", "Class comment"],
12: "var i4: c4"
});
goTo.marker('13');
verify.currentSignatureHelpDocCommentIs("Constructor comment");
goTo.marker('14');
verify.quickInfoIs("var i4_c: typeof c4", "");
goTo.marker('15');
verify.quickInfoIs("class c4", "Class comment");
goTo.marker('16');
verify.quickInfoIs("class c5", "Class with statics");
goTo.marker('17');
verify.quickInfoIs("var i5: c5", "");
verify.quickInfos({
14: "var i4_c: typeof c4",
15: ["class c4", "Class comment"],
16: ["class c5", "Class with statics"],
17: "var i5: c5"
});
goTo.marker('18');
verify.currentSignatureHelpDocCommentIs("");
goTo.marker('19');
verify.quickInfoIs("var i5_c: typeof c5", "");
goTo.marker('20');
verify.quickInfoIs("class c5", "Class with statics");
goTo.marker('21');
verify.quickInfoIs("class c6", "class with statics and constructor");
goTo.marker('22');
verify.quickInfoIs("var i6: c6", "");
verify.quickInfos({
19: "var i5_c: typeof c5",
20: ["class c5", "Class with statics"],
21: ["class c6", "class with statics and constructor"],
22: "var i6: c6"
});
goTo.marker('23');
verify.currentSignatureHelpDocCommentIs("constructor comment");
goTo.marker('24');
verify.quickInfoIs("var i6_c: typeof c6", "");
goTo.marker('25');
verify.quickInfoIs("class c6", "class with statics and constructor");
verify.quickInfos({
24: "var i6_c: typeof c6",
25: ["class c6", "class with statics and constructor"]
});
goTo.marker('26');
verify.completionListContains("c2", "class c2", "This is class c2 without constuctor");
@@ -154,20 +132,11 @@ goTo.marker('27');
verify.currentSignatureHelpDocCommentIs("constructor for a");
verify.currentParameterHelpArgumentDocCommentIs("this is my a");
goTo.marker('28');
verify.quickInfoIs("constructor c2(): c2", "");
goTo.marker('29');
verify.quickInfoIs("constructor c3(): c3", "Constructor comment");
goTo.marker('30');
verify.quickInfoIs("constructor c4(): c4", "Constructor comment");
goTo.marker('31');
verify.quickInfoIs("constructor c5(): c5", "");
goTo.marker('32');
verify.quickInfoIs("constructor c6(): c6", "constructor comment");
goTo.marker('33');
verify.quickInfoIs("constructor m.m2.c1(): m.m2.c1", "constructor comment");
verify.quickInfos({
28: "constructor c2(): c2",
29: ["constructor c3(): c3", "Constructor comment"],
30: ["constructor c4(): c4", "Constructor comment"],
31: "constructor c5(): c5",
32: ["constructor c6(): c6", "constructor comment"],
33: ["constructor m.m2.c1(): m.m2.c1", "constructor comment"]
});
+129 -212
View File
@@ -132,14 +132,11 @@
//// }
////}
goTo.marker('1');
verify.quickInfoIs("class c1", "This is comment for c1");
goTo.marker('2');
verify.quickInfoIs("(property) c1.p1: number", "p1 is property of c1");
goTo.marker('3');
verify.quickInfoIs("(method) c1.p2(b: number): number", "sum with property");
verify.quickInfos({
1: ["class c1", "This is comment for c1"],
2: ["(property) c1.p1: number", "p1 is property of c1"],
3: ["(method) c1.p2(b: number): number", "sum with property"]
});
goTo.marker('4');
verify.memberListContains("p1", "(property) c1.p1: number", "p1 is property of c1");
@@ -158,8 +155,7 @@ verify.memberListContains("nc_pp3", "(property) c1.nc_pp3: number", "");
goTo.marker('5');
verify.completionListContains("b", "(parameter) b: number", "number to add");
goTo.marker('6');
verify.quickInfoIs("(property) c1.p3: number", "getter property\nsetter property");
verify.quickInfoAt("6", "(property) c1.p3: number", "getter property\nsetter property");
goTo.marker('7');
verify.memberListContains("p1", "(property) c1.p1: number", "p1 is property of c1");
@@ -178,8 +174,7 @@ verify.memberListContains("nc_pp3", "(property) c1.nc_pp3: number", "");
goTo.marker('8');
verify.currentSignatureHelpDocCommentIs("sum with property");
verify.currentParameterHelpArgumentDocCommentIs("number to add");
goTo.marker('8q');
verify.quickInfoIs("(method) c1.p2(b: number): number", "sum with property");
verify.quickInfoAt("8q", "(method) c1.p2(b: number): number", "sum with property");
goTo.marker('9');
verify.memberListContains("p1", "(property) c1.p1: number", "p1 is property of c1");
@@ -195,8 +190,7 @@ verify.memberListContains("nc_pp1", "(property) c1.nc_pp1: number", "");
verify.memberListContains("nc_pp2", "(method) c1.nc_pp2(b: number): number", "");
verify.memberListContains("nc_pp3", "(property) c1.nc_pp3: number", "");
goTo.marker('10');
verify.quickInfoIs("(property) c1.p3: number", "getter property\nsetter property");
verify.quickInfoAt("10", "(property) c1.p3: number", "getter property\nsetter property");
goTo.marker('11');
verify.memberListContains("p1", "(property) c1.p1: number", "p1 is property of c1");
@@ -230,14 +224,12 @@ goTo.marker('13');
verify.currentSignatureHelpDocCommentIs("sum with property");
verify.currentParameterHelpArgumentDocCommentIs("number to add");
verify.completionListContains("value", "(parameter) value: number", "this is value");
goTo.marker('13q');
verify.quickInfoIs("(method) c1.p2(b: number): number", "sum with property");
goTo.marker('14');
verify.quickInfoIs("(property) c1.pp1: number", "pp1 is property of c1");
goTo.marker('15');
verify.quickInfoIs("(method) c1.pp2(b: number): number", "sum with property");
verify.quickInfos({
"13q": ["(method) c1.p2(b: number): number", "sum with property"],
14: ["(property) c1.pp1: number", "pp1 is property of c1"],
15: ["(method) c1.pp2(b: number): number", "sum with property"]
});
goTo.marker('16');
verify.memberListContains("p1", "(property) c1.p1: number", "p1 is property of c1");
@@ -256,8 +248,7 @@ verify.memberListContains("nc_pp3", "(property) c1.nc_pp3: number", "");
goTo.marker('17');
verify.completionListContains("b", "(parameter) b: number", "number to add");
goTo.marker('18');
verify.quickInfoIs("(property) c1.pp3: number", "getter property\nsetter property");
verify.quickInfoAt("18", "(property) c1.pp3: number", "getter property\nsetter property");
goTo.marker('19');
verify.memberListContains("p1", "(property) c1.p1: number", "p1 is property of c1");
@@ -276,8 +267,7 @@ verify.memberListContains("nc_pp3", "(property) c1.nc_pp3: number", "");
goTo.marker('20');
verify.currentSignatureHelpDocCommentIs("sum with property");
verify.currentParameterHelpArgumentDocCommentIs("number to add");
goTo.marker('20q');
verify.quickInfoIs("(method) c1.pp2(b: number): number", "sum with property");
verify.quickInfoAt("20q", "(method) c1.pp2(b: number): number", "sum with property");
goTo.marker('21');
verify.memberListContains("p1", "(property) c1.p1: number", "p1 is property of c1");
@@ -293,8 +283,7 @@ verify.memberListContains("nc_pp1", "(property) c1.nc_pp1: number", "");
verify.memberListContains("nc_pp2", "(method) c1.nc_pp2(b: number): number", "");
verify.memberListContains("nc_pp3", "(property) c1.nc_pp3: number", "");
goTo.marker('22');
verify.quickInfoIs("(property) c1.pp3: number", "getter property\nsetter property");
verify.quickInfoAt("22", "(property) c1.pp3: number", "getter property\nsetter property");
goTo.marker('23');
verify.memberListContains("p1", "(property) c1.p1: number", "p1 is property of c1");
@@ -328,17 +317,13 @@ goTo.marker('25');
verify.currentSignatureHelpDocCommentIs("sum with property");
verify.currentParameterHelpArgumentDocCommentIs("number to add");
verify.completionListContains("value", "(parameter) value: number", "this is value");
goTo.marker('25q');
verify.quickInfoIs("(method) c1.pp2(b: number): number", "sum with property");
goTo.marker('26');
verify.quickInfoIs("constructor c1(): c1", "Constructor method");
goTo.marker('27');
verify.quickInfoIs("(property) c1.s1: number", "s1 is static property of c1");
goTo.marker('28');
verify.quickInfoIs("(method) c1.s2(b: number): number", "static sum with property");
verify.quickInfos({
"25q": ["(method) c1.pp2(b: number): number", "sum with property"],
26: ["constructor c1(): c1", "Constructor method"],
27: ["(property) c1.s1: number", "s1 is static property of c1"],
28: ["(method) c1.s2(b: number): number", "static sum with property"]
});
goTo.marker('29');
verify.completionListContains("c1", "class c1", "This is comment for c1");
@@ -354,8 +339,7 @@ verify.memberListContains("nc_s3", "(property) c1.nc_s3: number", "");
goTo.marker('31');
verify.completionListContains("b", "(parameter) b: number", "number to add");
goTo.marker('32');
verify.quickInfoIs("(property) c1.s3: number", "static getter property\nsetter property");
verify.quickInfoAt("32", "(property) c1.s3: number", "static getter property\nsetter property");
goTo.marker('33');
verify.completionListContains("c1", "class c1", "This is comment for c1");
@@ -372,8 +356,7 @@ goTo.marker('35');
verify.currentSignatureHelpDocCommentIs("static sum with property");
verify.currentParameterHelpArgumentDocCommentIs("number to add");
verify.completionListContains("c1", "class c1", "This is comment for c1");
goTo.marker('35q');
verify.quickInfoIs("(method) c1.s2(b: number): number", "static sum with property");
verify.quickInfoAt("35q", "(method) c1.s2(b: number): number", "static sum with property");
goTo.marker('36');
verify.memberListContains("s1", "(property) c1.s1: number", "s1 is static property of c1");
@@ -383,8 +366,7 @@ verify.memberListContains("nc_s1", "(property) c1.nc_s1: number", "");
verify.memberListContains("nc_s2", "(method) c1.nc_s2(b: number): number", "");
verify.memberListContains("nc_s3", "(property) c1.nc_s3: number", "");
goTo.marker('37');
verify.quickInfoIs("(property) c1.s3: number", "static getter property\nsetter property");
verify.quickInfoAt("37", "(property) c1.s3: number", "static getter property\nsetter property");
goTo.marker('38');
verify.completionListContains("c1", "class c1", "This is comment for c1");
@@ -412,105 +394,88 @@ goTo.marker('42');
verify.currentSignatureHelpDocCommentIs("static sum with property");
verify.currentParameterHelpArgumentDocCommentIs("number to add");
verify.completionListContains("value", "(parameter) value: number", "this is value");
goTo.marker('42q');
verify.quickInfoIs("(method) c1.s2(b: number): number", "static sum with property");
goTo.marker('43');
verify.quickInfoIs("(property) c1.nc_p1: number", "");
goTo.marker('44');
verify.quickInfoIs("(method) c1.nc_p2(b: number): number", "");
verify.quickInfos({
"42q": ["(method) c1.s2(b: number): number", "static sum with property"],
43: "(property) c1.nc_p1: number",
44: "(method) c1.nc_p2(b: number): number"
});
goTo.marker('45');
verify.completionListContains("b", "(parameter) b: number", "");
goTo.marker('46');
verify.quickInfoIs("(property) c1.nc_p3: number", "");
verify.quickInfoAt("46", "(property) c1.nc_p3: number");
goTo.marker('47');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('47q');
verify.quickInfoIs("(method) c1.nc_p2(b: number): number", "");
goTo.marker('48');
verify.quickInfoIs("(property) c1.nc_p3: number", "");
verify.quickInfos({
"47q": "(method) c1.nc_p2(b: number): number",
48: "(property) c1.nc_p3: number"
});
goTo.marker('49');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
verify.completionListContains("value", "(parameter) value: number", "");
goTo.marker('49q');
verify.quickInfoIs("(method) c1.nc_p2(b: number): number", "");
goTo.marker('50');
verify.quickInfoIs("(property) c1.nc_pp1: number", "");
goTo.marker('51');
verify.quickInfoIs("(method) c1.nc_pp2(b: number): number", "");
verify.quickInfos({
"49q": "(method) c1.nc_p2(b: number): number",
50: "(property) c1.nc_pp1: number",
51: "(method) c1.nc_pp2(b: number): number"
});
goTo.marker('52');
verify.completionListContains("b", "(parameter) b: number", "");
goTo.marker('53');
verify.quickInfoIs("(property) c1.nc_pp3: number", "");
verify.quickInfoAt("53", "(property) c1.nc_pp3: number");
goTo.marker('54');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('54q');
verify.quickInfoIs("(method) c1.nc_pp2(b: number): number", "");
goTo.marker('55');
verify.quickInfoIs("(property) c1.nc_pp3: number", "");
verify.quickInfos({
"54q": "(method) c1.nc_pp2(b: number): number",
55: "(property) c1.nc_pp3: number"
});
goTo.marker('56');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
verify.completionListContains("value", "(parameter) value: number", "");
goTo.marker('56q');
verify.quickInfoIs("(method) c1.nc_pp2(b: number): number", "");
goTo.marker('57');
verify.quickInfoIs("(property) c1.nc_s1: number", "");
goTo.marker('58');
verify.quickInfoIs("(method) c1.nc_s2(b: number): number", "");
verify.quickInfos({
"56q": "(method) c1.nc_pp2(b: number): number",
57: "(property) c1.nc_s1: number",
58: "(method) c1.nc_s2(b: number): number"
});
goTo.marker('59');
verify.completionListContains("b", "(parameter) b: number", "");
goTo.marker('60');
verify.quickInfoIs("(property) c1.nc_s3: number", "");
verify.quickInfoAt("60", "(property) c1.nc_s3: number");
goTo.marker('61');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('61q');
verify.quickInfoIs("(method) c1.nc_s2(b: number): number", "");
goTo.marker('62');
verify.quickInfoIs("(property) c1.nc_s3: number", "");
verify.quickInfos({
"61q": "(method) c1.nc_s2(b: number): number",
62: "(property) c1.nc_s3: number"
});
goTo.marker('63');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
verify.completionListContains("value", "(parameter) value: number", "");
goTo.marker('63q');
verify.quickInfoIs("(method) c1.nc_s2(b: number): number", "");
goTo.marker('64');
verify.quickInfoIs("var i1: c1", "");
verify.quickInfos({
"63q": "(method) c1.nc_s2(b: number): number",
64: "var i1: c1"
});
goTo.marker('65');
verify.currentSignatureHelpDocCommentIs("Constructor method");
goTo.marker('65q');
verify.quickInfoIs("constructor c1(): c1", "Constructor method");
verify.quickInfos({
"65q": ["constructor c1(): c1", "Constructor method"],
66: "var i1_p: number"
});
goTo.marker('66');
verify.quickInfoIs("var i1_p: number", "");
goTo.marker('67');
goTo.marker("67");
verify.quickInfoIs("(property) c1.p1: number", "p1 is property of c1");
verify.memberListContains("p1", "(property) c1.p1: number", "p1 is property of c1");
verify.memberListContains("p2", "(method) c1.p2(b: number): number", "sum with property");
@@ -519,62 +484,41 @@ verify.memberListContains("nc_p1", "(property) c1.nc_p1: number", "");
verify.memberListContains("nc_p2", "(method) c1.nc_p2(b: number): number", "");
verify.memberListContains("nc_p3", "(property) c1.nc_p3: number", "");
goTo.marker('68');
verify.quickInfoIs("var i1_f: (b: number) => number", "");
goTo.marker('69');
verify.quickInfoIs("(method) c1.p2(b: number): number", "sum with property");
goTo.marker('70');
verify.quickInfoIs("var i1_r: number", "");
verify.quickInfos({
68: "var i1_f: (b: number) => number",
69: ["(method) c1.p2(b: number): number", "sum with property"],
70: "var i1_r: number"
});
goTo.marker('71');
verify.currentSignatureHelpDocCommentIs("sum with property");
verify.currentParameterHelpArgumentDocCommentIs("number to add");
goTo.marker('71q');
verify.quickInfoIs("(method) c1.p2(b: number): number", "sum with property");
goTo.marker('72');
verify.quickInfoIs("var i1_prop: number", "");
goTo.marker('73');
verify.quickInfoIs("(property) c1.p3: number", "getter property\nsetter property");
goTo.marker('74');
verify.quickInfoIs("(property) c1.p3: number", "getter property\nsetter property");
goTo.marker('75');
verify.quickInfoIs("var i1_prop: number", "");
goTo.marker('76');
verify.quickInfoIs("var i1_nc_p: number", "");
goTo.marker('77');
verify.quickInfoIs("(property) c1.nc_p1: number", "");
goTo.marker('78');
verify.quickInfoIs("var i1_ncf: (b: number) => number", "");
goTo.marker('79');
verify.quickInfoIs("(method) c1.nc_p2(b: number): number", "");
goTo.marker('80');
verify.quickInfoIs("var i1_ncr: number", "");
verify.quickInfos({
"71q": ["(method) c1.p2(b: number): number", "sum with property"],
72: "var i1_prop: number",
73: ["(property) c1.p3: number", "getter property\nsetter property"],
74: ["(property) c1.p3: number", "getter property\nsetter property"],
75: "var i1_prop: number",
76: "var i1_nc_p: number",
77: "(property) c1.nc_p1: number",
78: "var i1_ncf: (b: number) => number",
79: "(method) c1.nc_p2(b: number): number",
80: "var i1_ncr: number"
});
goTo.marker('81');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('81q');
verify.quickInfoIs("(method) c1.nc_p2(b: number): number", "");
goTo.marker('82');
verify.quickInfoIs("var i1_ncprop: number", "");
goTo.marker('83');
verify.quickInfoIs("(property) c1.nc_p3: number", "");
goTo.marker('84');
verify.quickInfoIs("(property) c1.nc_p3: number", "");
goTo.marker('85');
verify.quickInfoIs("var i1_ncprop: number", "");
goTo.marker('86');
verify.quickInfoIs("var i1_s_p: number", "");
verify.quickInfos({
"81q": "(method) c1.nc_p2(b: number): number",
82: "var i1_ncprop: number",
83: "(property) c1.nc_p3: number",
84: "(property) c1.nc_p3: number",
85: "var i1_ncprop: number",
86: "var i1_s_p: number"
});
goTo.marker('87');
verify.quickInfoIs("class c1", "This is comment for c1");
@@ -589,65 +533,41 @@ verify.memberListContains("nc_s1", "(property) c1.nc_s1: number", "");
verify.memberListContains("nc_s2", "(method) c1.nc_s2(b: number): number", "");
verify.memberListContains("nc_s3", "(property) c1.nc_s3: number", "");
goTo.marker('89');
verify.quickInfoIs("var i1_s_f: (b: number) => number", "");
goTo.marker('90');
verify.quickInfoIs("(method) c1.s2(b: number): number", "static sum with property");
goTo.marker('91');
verify.quickInfoIs("var i1_s_r: number", "");
verify.quickInfos({
89: "var i1_s_f: (b: number) => number",
90: ["(method) c1.s2(b: number): number", "static sum with property"],
91: "var i1_s_r: number"
});
goTo.marker('92');
verify.currentSignatureHelpDocCommentIs("static sum with property");
verify.currentParameterHelpArgumentDocCommentIs("number to add");
goTo.marker('92q');
verify.quickInfoIs("(method) c1.s2(b: number): number", "static sum with property");
goTo.marker('93');
verify.quickInfoIs("var i1_s_prop: number", "");
goTo.marker('94');
verify.quickInfoIs("(property) c1.s3: number", "static getter property\nsetter property");
goTo.marker('95');
verify.quickInfoIs("(property) c1.s3: number", "static getter property\nsetter property");
goTo.marker('96');
verify.quickInfoIs("var i1_s_prop: number", "");
goTo.marker('97');
verify.quickInfoIs("var i1_s_nc_p: number", "");
goTo.marker('98');
verify.quickInfoIs("(property) c1.nc_s1: number", "");
goTo.marker('99');
verify.quickInfoIs("var i1_s_ncf: (b: number) => number", "");
goTo.marker('100');
verify.quickInfoIs("(method) c1.nc_s2(b: number): number", "");
goTo.marker('101');
verify.quickInfoIs("var i1_s_ncr: number", "");
verify.quickInfos({
"92q": ["(method) c1.s2(b: number): number", "static sum with property"],
93: "var i1_s_prop: number",
94: ["(property) c1.s3: number", "static getter property\nsetter property"],
95: ["(property) c1.s3: number", "static getter property\nsetter property"],
96: "var i1_s_prop: number",
97: "var i1_s_nc_p: number",
98: "(property) c1.nc_s1: number",
99: "var i1_s_ncf: (b: number) => number",
100: "(method) c1.nc_s2(b: number): number",
101: "var i1_s_ncr: number"
});
goTo.marker('102');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('102q');
verify.quickInfoIs("(method) c1.nc_s2(b: number): number", "");
goTo.marker('103');
verify.quickInfoIs("var i1_s_ncprop: number", "");
goTo.marker('104');
verify.quickInfoIs("(property) c1.nc_s3: number", "");
goTo.marker('105');
verify.quickInfoIs("(property) c1.nc_s3: number", "");
goTo.marker('106');
verify.quickInfoIs("var i1_s_ncprop: number", "");
goTo.marker('107');
verify.quickInfoIs("var i1_c: typeof c1", "");
goTo.marker('108');
verify.quickInfoIs("class c1", "This is comment for c1");
verify.quickInfos({
"102q": "(method) c1.nc_s2(b: number): number",
103: "var i1_s_ncprop: number",
104: "(property) c1.nc_s3: number",
105: "(property) c1.nc_s3: number",
106: "var i1_s_ncprop: number",
107: "var i1_c: typeof c1",
108: ["class c1", "This is comment for c1"]
});
goTo.marker('109');
verify.completionListContains("c1", "class c1", "This is comment for c1");
@@ -678,12 +598,11 @@ verify.memberListContains("p2", "(property) cProperties.p2: number", "setter onl
verify.memberListContains("nc_p1", "(property) cProperties.nc_p1: number", "");
verify.memberListContains("nc_p2", "(property) cProperties.nc_p2: number", "");
goTo.marker('111');
verify.quickInfoIs("(property) cProperties.p1: number", "getter only property");
goTo.marker('112');
verify.quickInfoIs("(property) cProperties.nc_p2: number", "");
goTo.marker('113');
verify.quickInfoIs("(property) cProperties.nc_p1: number", "");
verify.quickInfos({
111: ["(property) cProperties.p1: number", "getter only property"],
112: "(property) cProperties.nc_p2: number",
113: "(property) cProperties.nc_p1: number"
});
goTo.marker('114');
verify.memberListContains("a", "(property) cWithConstructorProperty.a: number", "more info about a");
@@ -693,14 +612,12 @@ goTo.marker('115');
verify.completionListContains("a", "(parameter) a: number", "this is first parameter a\nmore info about a");
verify.quickInfoIs("(parameter) a: number", "this is first parameter a\nmore info about a");
goTo.marker('116');
verify.quickInfoIs("this: this", "");
goTo.marker('117');
verify.quickInfoIs("(local var) bbbb: number", "");
goTo.marker('118');
verify.quickInfoIs("(local var) bbbb: number", "");
goTo.marker('119');
verify.quickInfoIs("constructor cWithConstructorProperty(a: number): cWithConstructorProperty", "this is class cWithConstructorProperty's constructor");
verify.quickInfos({
116: "this: this",
117: "(local var) bbbb: number",
118: "(local var) bbbb: number",
119: [
"constructor cWithConstructorProperty(a: number): cWithConstructorProperty",
"this is class cWithConstructorProperty's constructor"
]
});
+109 -109
View File
@@ -204,73 +204,59 @@
goTo.marker('1');
verify.currentSignatureHelpDocCommentIs("");
goTo.marker('1q');
verify.quickInfoIs("function simple(): void", "");
verify.quickInfoAt("1q", "function simple(): void");
goTo.marker('2');
verify.currentSignatureHelpDocCommentIs("");
goTo.marker('2q');
verify.quickInfoIs("function multiLine(): void", "");
verify.quickInfoAt("2q", "function multiLine(): void");
goTo.marker('3');
verify.currentSignatureHelpDocCommentIs("this is eg of single line jsdoc style comment ");
goTo.marker('3q');
verify.quickInfoIs("function jsDocSingleLine(): void", "this is eg of single line jsdoc style comment ");
verify.quickInfoAt("3q", "function jsDocSingleLine(): void", "this is eg of single line jsdoc style comment ");
goTo.marker('4');
verify.currentSignatureHelpDocCommentIs("this is multiple line jsdoc stule comment\nNew line1\nNew Line2");
goTo.marker('4q');
verify.quickInfoIs("function jsDocMultiLine(): void", "this is multiple line jsdoc stule comment\nNew line1\nNew Line2");
verify.quickInfoAt("4q", "function jsDocMultiLine(): void", "this is multiple line jsdoc stule comment\nNew line1\nNew Line2");
goTo.marker('5');
verify.currentSignatureHelpDocCommentIs("this is multiple line jsdoc stule comment\nNew line1\nNew Line2\nShoul mege this line as well\nand this too\nAnother this one too");
goTo.marker('5q');
verify.quickInfoIs("function jsDocMultiLineMerge(): void", "this is multiple line jsdoc stule comment\nNew line1\nNew Line2\nShoul mege this line as well\nand this too\nAnother this one too");
verify.quickInfoAt("5q", "function jsDocMultiLineMerge(): void", "this is multiple line jsdoc stule comment\nNew line1\nNew Line2\nShoul mege this line as well\nand this too\nAnother this one too");
goTo.marker('6');
verify.currentSignatureHelpDocCommentIs("jsdoc comment ");
goTo.marker('6q');
verify.quickInfoIs("function jsDocMixedComments1(): void", "jsdoc comment ");
verify.quickInfoAt("6q", "function jsDocMixedComments1(): void", "jsdoc comment ");
goTo.marker('7');
verify.currentSignatureHelpDocCommentIs("jsdoc comment \nanother jsDocComment");
goTo.marker('7q');
verify.quickInfoIs("function jsDocMixedComments2(): void", "jsdoc comment \nanother jsDocComment");
verify.quickInfoAt("7q", "function jsDocMixedComments2(): void", "jsdoc comment \nanother jsDocComment");
goTo.marker('8');
verify.currentSignatureHelpDocCommentIs("jsdoc comment \n* another jsDocComment");
goTo.marker('8q');
verify.quickInfoIs("function jsDocMixedComments3(): void", "jsdoc comment \n* another jsDocComment");
verify.quickInfoAt("8q", "function jsDocMixedComments3(): void", "jsdoc comment \n* another jsDocComment");
goTo.marker('9');
verify.currentSignatureHelpDocCommentIs("jsdoc comment \nanother jsDocComment");
goTo.marker('9q');
verify.quickInfoIs("function jsDocMixedComments4(): void", "jsdoc comment \nanother jsDocComment");
verify.quickInfoAt("9q", "function jsDocMixedComments4(): void", "jsdoc comment \nanother jsDocComment");
goTo.marker('10');
verify.currentSignatureHelpDocCommentIs("jsdoc comment \nanother jsDocComment");
goTo.marker('10q');
verify.quickInfoIs("function jsDocMixedComments5(): void", "jsdoc comment \nanother jsDocComment");
verify.quickInfoAt("10q", "function jsDocMixedComments5(): void", "jsdoc comment \nanother jsDocComment");
goTo.marker('11');
verify.currentSignatureHelpDocCommentIs("another jsDocComment\njsdoc comment ");
goTo.marker('11q');
verify.quickInfoIs("function jsDocMixedComments6(): void", "another jsDocComment\njsdoc comment ");
verify.quickInfoAt("11q", "function jsDocMixedComments6(): void", "another jsDocComment\njsdoc comment ");
goTo.marker('12');
verify.currentSignatureHelpDocCommentIs("");
goTo.marker('12q');
verify.quickInfoIs("function noHelpComment1(): void", "");
verify.quickInfoAt("12q", "function noHelpComment1(): void");
goTo.marker('13');
verify.currentSignatureHelpDocCommentIs("");
goTo.marker('13q');
verify.quickInfoIs("function noHelpComment2(): void", "");
verify.quickInfoAt("13q", "function noHelpComment2(): void");
goTo.marker('14');
verify.currentSignatureHelpDocCommentIs("");
goTo.marker('14q');
verify.quickInfoIs("function noHelpComment3(): void", "");
verify.quickInfoAt("14q", "function noHelpComment3(): void");
goTo.marker('15');
verify.completionListContains("sum", "function sum(a: number, b: number): number", "Adds two integers and returns the result");
@@ -278,16 +264,15 @@ verify.completionListContains("sum", "function sum(a: number, b: number): number
goTo.marker('16');
verify.currentSignatureHelpDocCommentIs("Adds two integers and returns the result");
verify.currentParameterHelpArgumentDocCommentIs("first number");
goTo.marker('16q');
verify.quickInfoIs("function sum(a: number, b: number): number", "Adds two integers and returns the result");
goTo.marker('16aq');
verify.quickInfoIs("(parameter) a: number", "first number");
verify.quickInfos({
"16q": ["function sum(a: number, b: number): number", "Adds two integers and returns the result"],
"16aq": ["(parameter) a: number", "first number"]
});
goTo.marker('17');
verify.currentSignatureHelpDocCommentIs("Adds two integers and returns the result");
verify.currentParameterHelpArgumentDocCommentIs("second number");
goTo.marker('17aq');
verify.quickInfoIs("(parameter) b: number", "second number");
verify.quickInfoAt("17aq", "(parameter) b: number", "second number");
goTo.marker('18');
verify.quickInfoIs("(parameter) a: number", "first number");
@@ -297,34 +282,33 @@ verify.completionListContains("b", "(parameter) b: number", "second number");
goTo.marker('19');
verify.currentSignatureHelpDocCommentIs("This is multiplication function\n@anotherTag\n@anotherTag");
verify.currentParameterHelpArgumentDocCommentIs("first number");
goTo.marker('19q');
verify.quickInfoIs("function multiply(a: number, b: number, c?: number, d?: any, e?: any): void", "This is multiplication function\n@anotherTag\n@anotherTag");
goTo.marker('19aq');
verify.quickInfoIs("(parameter) a: number", "first number");
verify.quickInfos({
"19q": [
"function multiply(a: number, b: number, c?: number, d?: any, e?: any): void",
"This is multiplication function\n@anotherTag\n@anotherTag"
],
"19aq": ["(parameter) a: number", "first number"]
});
goTo.marker('20');
verify.currentSignatureHelpDocCommentIs("This is multiplication function\n@anotherTag\n@anotherTag");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('20aq');
verify.quickInfoIs("(parameter) b: number", "");
verify.quickInfoAt("20aq", "(parameter) b: number");
goTo.marker('21');
verify.currentSignatureHelpDocCommentIs("This is multiplication function\n@anotherTag\n@anotherTag");
verify.currentParameterHelpArgumentDocCommentIs("{");
goTo.marker('21aq');
verify.quickInfoIs("(parameter) c: number", "{");
verify.quickInfoAt("21aq", "(parameter) c: number", "{");
goTo.marker('22');
verify.currentSignatureHelpDocCommentIs("This is multiplication function\n@anotherTag\n@anotherTag");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('22aq');
verify.quickInfoIs("(parameter) d: any", "");
verify.quickInfoAt("22aq", "(parameter) d: any");
goTo.marker('23');
verify.currentSignatureHelpDocCommentIs("This is multiplication function\n@anotherTag\n@anotherTag");
verify.currentParameterHelpArgumentDocCommentIs("LastParam ");
goTo.marker('23aq');
verify.quickInfoIs("(parameter) e: any", "LastParam ");
verify.quickInfoAt("23aq", "(parameter) e: any", "LastParam ");
goTo.marker('24');
verify.completionListContains("aOrb", "(parameter) aOrb: any", "");
@@ -333,18 +317,18 @@ verify.completionListContains("opt", "(parameter) opt: any", "optional parameter
goTo.marker('25');
verify.currentSignatureHelpDocCommentIs("fn f1 with number");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('25q');
verify.quickInfoIs("function f1(a: number): any (+1 overload)", "fn f1 with number");
goTo.marker('25aq');
verify.quickInfoIs("(parameter) a: number", "");
verify.quickInfos({
"25q": ["function f1(a: number): any (+1 overload)", "fn f1 with number"],
"25aq": "(parameter) a: number"
});
goTo.marker('26');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('26q');
verify.quickInfoIs("function f1(b: string): any (+1 overload)", "");
goTo.marker('26aq');
verify.quickInfoIs("(parameter) b: string", "");
verify.quickInfos({
"26q": "function f1(b: string): any (+1 overload)",
"26aq": "(parameter) b: string"
});
goTo.marker('27');
verify.completionListContains("multiply", "function multiply(a: number, b: number, c?: number, d?: any, e?: any): void", "This is multiplication function\n@anotherTag\n@anotherTag");
@@ -353,76 +337,84 @@ verify.completionListContains("f1", "function f1(a: number): any (+1 overload)",
goTo.marker('28');
verify.currentSignatureHelpDocCommentIs("This is subtract function");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('28q');
verify.quickInfoIs("function subtract(a: number, b: number, c?: () => string, d?: () => string, e?: () => string, f?: () => string): void", "This is subtract function");
goTo.marker('28aq');
verify.quickInfoIs("(parameter) a: number", "");
verify.quickInfos({
"28q": [
"function subtract(a: number, b: number, c?: () => string, d?: () => string, e?: () => string, f?: () => string): void",
"This is subtract function"
],
"28aq": "(parameter) a: number"
});
goTo.marker('29');
verify.currentSignatureHelpDocCommentIs("This is subtract function");
verify.currentParameterHelpArgumentDocCommentIs("this is about b");
goTo.marker('29aq');
verify.quickInfoIs("(parameter) b: number", "this is about b");
verify.quickInfoAt("29aq", "(parameter) b: number", "this is about b");
goTo.marker('30');
verify.currentSignatureHelpDocCommentIs("This is subtract function");
verify.currentParameterHelpArgumentDocCommentIs("this is optional param c");
goTo.marker('30aq');
verify.quickInfoIs("(parameter) c: () => string", "this is optional param c");
verify.quickInfoAt("30aq", "(parameter) c: () => string", "this is optional param c");
goTo.marker('31');
verify.currentSignatureHelpDocCommentIs("This is subtract function");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('31aq');
verify.quickInfoIs("(parameter) d: () => string", "");
verify.quickInfoAt("31aq", "(parameter) d: () => string");
goTo.marker('32');
verify.currentSignatureHelpDocCommentIs("This is subtract function");
verify.currentParameterHelpArgumentDocCommentIs("this is optional param e");
goTo.marker('32aq');
verify.quickInfoIs("(parameter) e: () => string", "this is optional param e");
verify.quickInfoAt("32aq", "(parameter) e: () => string", "this is optional param e");
goTo.marker('33');
verify.currentSignatureHelpDocCommentIs("This is subtract function");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('33aq');
verify.quickInfoIs("(parameter) f: () => string", "");
verify.quickInfoAt("33aq", "(parameter) f: () => string");
goTo.marker('34');
verify.currentSignatureHelpDocCommentIs("this is square function\n@paramTag { number } a this is input number of paramTag\n@returnType { number } it is return type");
verify.currentParameterHelpArgumentDocCommentIs("this is input number");
goTo.marker('34q');
verify.quickInfoIs("function square(a: number): number", "this is square function\n@paramTag { number } a this is input number of paramTag\n@returnType { number } it is return type");
goTo.marker('34aq');
verify.quickInfoIs("(parameter) a: number", "this is input number");
verify.quickInfos({
"34q": [
"function square(a: number): number",
"this is square function\n@paramTag { number } a this is input number of paramTag\n@returnType { number } it is return type"
],
"34aq": [
"(parameter) a: number",
"this is input number"
]
});
goTo.marker('35');
verify.currentSignatureHelpDocCommentIs("this is divide function\n@paramTag { number } g this is optional param g");
verify.currentParameterHelpArgumentDocCommentIs("this is a");
goTo.marker('35q');
verify.quickInfoIs("function divide(a: number, b: number): void", "this is divide function\n@paramTag { number } g this is optional param g");
goTo.marker('35aq');
verify.quickInfoIs("(parameter) a: number", "this is a");
verify.quickInfos({
"35q": [
"function divide(a: number, b: number): void",
"this is divide function\n@paramTag { number } g this is optional param g"
],
"35aq": [
"(parameter) a: number",
"this is a"
]
});
goTo.marker('36');
verify.currentSignatureHelpDocCommentIs("this is divide function\n@paramTag { number } g this is optional param g");
verify.currentParameterHelpArgumentDocCommentIs("this is b");
goTo.marker('36aq');
verify.quickInfoIs("(parameter) b: number", "this is b");
verify.quickInfoAt("36aq", "(parameter) b: number", "this is b");
goTo.marker('37');
verify.currentSignatureHelpDocCommentIs("Function returns string concat of foo and bar");
verify.currentParameterHelpArgumentDocCommentIs("is string");
goTo.marker('37q');
verify.quickInfoIs("function fooBar(foo: string, bar: string): string", "Function returns string concat of foo and bar");
goTo.marker('37aq');
verify.quickInfoIs("(parameter) foo: string", "is string");
verify.quickInfos({
"37q": ["function fooBar(foo: string, bar: string): string", "Function returns string concat of foo and bar"],
"37aq": ["(parameter) foo: string", "is string"]
});
goTo.marker('38');
verify.currentSignatureHelpDocCommentIs("Function returns string concat of foo and bar");
verify.currentParameterHelpArgumentDocCommentIs("is second string");
goTo.marker('38aq');
verify.quickInfoIs("(parameter) bar: string", "is second string");
verify.quickInfoAt("38aq", "(parameter) bar: string", "is second string");
goTo.marker('39');
verify.completionListContains("a", "(parameter) a: number", "it is first parameter\nthis is inline comment for a ");
@@ -433,28 +425,31 @@ verify.completionListContains("d", "(parameter) d: number", "");
goTo.marker('40');
verify.currentSignatureHelpDocCommentIs("this is jsdoc style function with param tag as well as inline parameter help");
verify.currentParameterHelpArgumentDocCommentIs("it is first parameter\nthis is inline comment for a ");
goTo.marker('40q');
verify.quickInfoIs("function jsDocParamTest(a: number, b: number, c: number, d: number): number", "this is jsdoc style function with param tag as well as inline parameter help");
goTo.marker('40aq');
verify.quickInfoIs("(parameter) a: number", "it is first parameter\nthis is inline comment for a ");
verify.quickInfos({
"40q": [
"function jsDocParamTest(a: number, b: number, c: number, d: number): number",
"this is jsdoc style function with param tag as well as inline parameter help"
],
"40aq": [
"(parameter) a: number",
"it is first parameter\nthis is inline comment for a "
]
});
goTo.marker('41');
verify.currentSignatureHelpDocCommentIs("this is jsdoc style function with param tag as well as inline parameter help");
verify.currentParameterHelpArgumentDocCommentIs("this is inline comment for b");
goTo.marker('41aq');
verify.quickInfoIs("(parameter) b: number", "this is inline comment for b");
verify.quickInfoAt("41aq", "(parameter) b: number", "this is inline comment for b");
goTo.marker('42');
verify.currentSignatureHelpDocCommentIs("this is jsdoc style function with param tag as well as inline parameter help");
verify.currentParameterHelpArgumentDocCommentIs("it is third parameter");
goTo.marker('42aq');
verify.quickInfoIs("(parameter) c: number", "it is third parameter");
verify.quickInfoAt("42aq", "(parameter) c: number", "it is third parameter");
goTo.marker('43');
verify.currentSignatureHelpDocCommentIs("this is jsdoc style function with param tag as well as inline parameter help");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('43aq');
verify.quickInfoIs("(parameter) d: number", "");
verify.quickInfoAt("43aq", "(parameter) d: number");
goTo.marker('44');
verify.completionListContains("jsDocParamTest", "function jsDocParamTest(a: number, b: number, c: number, d: number): number", "this is jsdoc style function with param tag as well as inline parameter help");
@@ -463,33 +458,38 @@ verify.completionListContains("y", "var y: any", "This is a comment ");
goTo.marker('45');
verify.currentSignatureHelpDocCommentIs("This is function comment\nAnd properly aligned comment ");
goTo.marker('45q');
verify.quickInfoIs("function jsDocCommentAlignmentTest1(): void", "This is function comment\nAnd properly aligned comment ");
verify.quickInfoAt("45q", "function jsDocCommentAlignmentTest1(): void", "This is function comment\nAnd properly aligned comment ");
goTo.marker('46');
verify.currentSignatureHelpDocCommentIs("This is function comment\n And aligned with 4 space char margin");
goTo.marker('46q');
verify.quickInfoIs("function jsDocCommentAlignmentTest2(): void", "This is function comment\n And aligned with 4 space char margin");
verify.quickInfoAt("46q", "function jsDocCommentAlignmentTest2(): void", "This is function comment\n And aligned with 4 space char margin");
goTo.marker('47');
verify.currentSignatureHelpDocCommentIs("This is function comment\n And aligned with 4 space char margin");
verify.currentParameterHelpArgumentDocCommentIs("this is info about a\nspanning on two lines and aligned perfectly");
goTo.marker('47q');
verify.quickInfoIs("function jsDocCommentAlignmentTest3(a: string, b: any, c: any): void", "This is function comment\n And aligned with 4 space char margin");
goTo.marker('47aq');
verify.quickInfoIs("(parameter) a: string", "this is info about a\nspanning on two lines and aligned perfectly");
verify.quickInfos({
"47q": [
"function jsDocCommentAlignmentTest3(a: string, b: any, c: any): void",
"This is function comment\n And aligned with 4 space char margin"
],
"47aq": [
"(parameter) a: string",
"this is info about a\nspanning on two lines and aligned perfectly"
]
});
goTo.marker('48');
verify.currentSignatureHelpDocCommentIs("This is function comment\n And aligned with 4 space char margin");
verify.currentParameterHelpArgumentDocCommentIs("this is info about b\nspanning on two lines and aligned perfectly\nspanning one more line alined perfectly\n spanning another line with more margin");
goTo.marker('48aq');
verify.quickInfoIs("(parameter) b: any", "this is info about b\nspanning on two lines and aligned perfectly\nspanning one more line alined perfectly\n spanning another line with more margin");
verify.quickInfoAt("48aq", "(parameter) b: any", "this is info about b\nspanning on two lines and aligned perfectly\nspanning one more line alined perfectly\n spanning another line with more margin");
goTo.marker('49');
verify.currentSignatureHelpDocCommentIs("This is function comment\n And aligned with 4 space char margin");
verify.currentParameterHelpArgumentDocCommentIs("this is info about b\nnot aligned text about parameter will eat only one space");
goTo.marker('49aq');
verify.quickInfoIs("(parameter) c: any", "this is info about b\nnot aligned text about parameter will eat only one space");
goTo.marker('50');
verify.quickInfoIs("class NoQuickInfoClass", "");
verify.quickInfos({
"49aq": [
"(parameter) c: any",
"this is info about b\nnot aligned text about parameter will eat only one space"
],
50: "class NoQuickInfoClass"
});
+6 -11
View File
@@ -10,17 +10,12 @@
////var /*4*/x = /*5*/Colors./*6*/Cornflower;
////x = Colors./*7*/FancyPink;
goTo.marker('1');
verify.quickInfoIs("enum Colors", "Enum of colors");
goTo.marker('2');
verify.quickInfoIs("(enum member) Colors.Cornflower = 0", "Fancy name for 'blue'");
goTo.marker('3');
verify.quickInfoIs("(enum member) Colors.FancyPink = 1", "Fancy name for 'pink'");
goTo.marker('4');
verify.quickInfoIs("var x: Colors", "");
verify.quickInfos({
1: ["enum Colors", "Enum of colors"],
2: ["(enum member) Colors.Cornflower = 0", "Fancy name for 'blue'"],
3: ["(enum member) Colors.FancyPink = 1", "Fancy name for 'pink'"],
4: "var x: Colors"
});
goTo.marker('5');
verify.completionListContains("Colors", "enum Colors", "Enum of colors");
@@ -32,8 +32,7 @@
////var new/*14*/Var = new extMod.m1.m2./*15*/c();
goTo.file("commentsExternalModules_file0.ts");
goTo.marker('1');
verify.quickInfoIs("namespace m1", "Namespace comment");
verify.quickInfoAt("1", "namespace m1", "Namespace comment");
goTo.marker('2');
verify.completionListContains("b", "var m1.b: number", "b's comment");
@@ -41,8 +40,7 @@ verify.completionListContains("foo", "function foo(): number", "foo's comment");
goTo.marker('3');
verify.currentSignatureHelpDocCommentIs("foo's comment");
goTo.marker('3q');
verify.quickInfoIs("function foo(): number", "foo's comment");
verify.quickInfoAt("3q", "function foo(): number", "foo's comment");
goTo.marker('4');
verify.completionListContains("m1", "namespace m1", "Namespace comment");
@@ -54,19 +52,16 @@ verify.memberListContains("m2", "namespace m1.m2");
goTo.marker('6');
verify.currentSignatureHelpDocCommentIs("exported function");
goTo.marker('6q');
verify.quickInfoIs("function m1.fooExport(): number", "exported function");
verify.quickInfoAt("6q", "function m1.fooExport(): number", "exported function");
goTo.marker('7');
verify.quickInfoIs("var myvar: m1.m2.c", "");
verify.quickInfoAt("7", "var myvar: m1.m2.c");
goTo.marker('8');
verify.memberListContains("c", "constructor m1.m2.c(): m1.m2.c", "");
verify.memberListContains("i", "var m1.m2.i: m1.m2.c", "i");
goTo.file("commentsExternalModules_file1.ts");
goTo.marker('9');
verify.quickInfoIs('import extMod = require("./commentsExternalModules_file0")', "This is on import declaration");
verify.quickInfoAt("9", 'import extMod = require("./commentsExternalModules_file0")', "This is on import declaration");
goTo.marker('10');
verify.completionListContains("extMod", 'import extMod = require("./commentsExternalModules_file0")', "This is on import declaration");
@@ -81,11 +76,9 @@ verify.memberListContains("m2", "namespace extMod.m1.m2");
goTo.marker('13');
verify.currentSignatureHelpDocCommentIs("exported function");
goTo.marker('13q');
verify.quickInfoIs("function extMod.m1.fooExport(): number", "exported function");
verify.quickInfoAt("13q", "function extMod.m1.fooExport(): number", "exported function");
goTo.marker('14');
verify.quickInfoIs("var newVar: extMod.m1.m2.c", "");
verify.quickInfoAt("14", "var newVar: extMod.m1.m2.c");
goTo.marker('15');
verify.memberListContains("c", "constructor extMod.m1.m2.c(): extMod.m1.m2.c", "");
@@ -20,11 +20,9 @@
////declare function fn(a: string);
////fn(/*12*/"hello");
goTo.marker('1');
verify.quickInfoIs("function foo(): void", "This comment should appear for foo");
verify.quickInfoAt("1", "function foo(): void", "This comment should appear for foo");
goTo.marker('2');
verify.quickInfoIs("function foo(): void", "This comment should appear for foo");
verify.quickInfoAt("2", "function foo(): void", "This comment should appear for foo");
goTo.marker('3');
verify.completionListContains('foo', 'function foo(): void', 'This comment should appear for foo');
@@ -32,18 +30,15 @@ verify.completionListContains('foo', 'function foo(): void', 'This comment shoul
goTo.marker('4');
verify.currentSignatureHelpDocCommentIs("This comment should appear for foo");
goTo.marker('5');
verify.quickInfoIs("function fooWithParameters(a: string, b: number): void", "This is comment for function signature");
verify.quickInfoAt("5", "function fooWithParameters(a: string, b: number): void", "This is comment for function signature");
goTo.marker('6');
verify.quickInfoIs('(local var) d: string', '');
verify.quickInfoAt("6", "(local var) d: string");
goTo.marker('7');
verify.completionListContains('a', '(parameter) a: string', 'this is comment about a');
verify.completionListContains('b', '(parameter) b: number', 'this is comment for b');
goTo.marker('8');
verify.quickInfoIs("function fooWithParameters(a: string, b: number): void", "This is comment for function signature");
verify.quickInfoAt("8", "function fooWithParameters(a: string, b: number): void", "This is comment for function signature");
goTo.marker('9');
verify.completionListContains('fooWithParameters', 'function fooWithParameters(a: string, b: number): void', 'This is comment for function signature');
@@ -34,16 +34,14 @@
goTo.marker('1');
verify.quickInfoIs("var lambdaFoo: (a: number, b: number) => number", "lamdaFoo var comment\nthis is lambda comment");
verify.quickInfoAt("1", "var lambdaFoo: (a: number, b: number) => number", "lamdaFoo var comment\nthis is lambda comment");
goTo.marker('2');
verify.completionListContains('a', '(parameter) a: number', 'param a');
verify.completionListContains('b', '(parameter) b: number', 'param b');
goTo.marker('3');
// pick up doccomments from the lambda itself
verify.quickInfoIs("var lambddaNoVarComment: (a: number, b: number) => number", "this is lambda multiplication");
verify.quickInfoAt("3", "var lambddaNoVarComment: (a: number, b: number) => number", "this is lambda multiplication");
goTo.marker('4');
verify.completionListContains('lambdaFoo', 'var lambdaFoo: (a: number, b: number) => number', 'lamdaFoo var comment\nthis is lambda comment');
@@ -58,28 +56,24 @@ verify.currentParameterHelpArgumentDocCommentIs("param b");
goTo.marker('7');
// no documentation from nested lambda
verify.quickInfoIs('function anotherFunc(a: number): string', '');
goTo.marker('8');
verify.quickInfoIs('(local var) lambdaVar: (b: string) => string', 'documentation\ninner docs ');
goTo.marker('9');
verify.quickInfoIs('(parameter) b: string', '{string} inner parameter ');
goTo.marker('10');
verify.quickInfoIs('(local var) localVar: string', '');
goTo.marker('11');
verify.quickInfoIs('(local var) localVar: string', '');
goTo.marker('12');
verify.quickInfoIs('(parameter) b: string', '{string} inner parameter ');
goTo.marker('13');
verify.quickInfoIs('(local var) lambdaVar: (b: string) => string', 'documentation\ninner docs ');
verify.quickInfos({
7: "function anotherFunc(a: number): string",
8: ["(local var) lambdaVar: (b: string) => string", "documentation\ninner docs "],
9: ["(parameter) b: string", "{string} inner parameter "],
10: "(local var) localVar: string",
11: "(local var) localVar: string",
12: ["(parameter) b: string", "{string} inner parameter "],
13: ["(local var) lambdaVar: (b: string) => string", "documentation\ninner docs "],
14: [
"var assigned: (s: string) => number",
"On variable\n@returns the parameter's length\nSummary on expression\n@returns return on expression"
]
});
goTo.marker('14');
verify.quickInfoIs("var assigned: (s: string) => number", "On variable\n@returns the parameter's length\nSummary on expression\n@returns return on expression");
goTo.marker('15');
verify.completionListContains('s', '(parameter) s: string', "the first parameter!\nparam on expression\nOn parameter ");
goTo.marker('16');
verify.quickInfoIs("var assigned: (s: string) => number", "On variable\n@returns the parameter's length\nSummary on expression\n@returns return on expression");
verify.quickInfoAt("16", "var assigned: (s: string) => number", "On variable\n@returns the parameter's length\nSummary on expression\n@returns return on expression");
goTo.marker('17');
verify.completionListContains("assigned", "var assigned: (s: string) => number", "On variable\n@returns the parameter's length\nSummary on expression\n@returns return on expression");
goTo.marker('18');
@@ -24,11 +24,10 @@
////extMod./*6*/m1./*7*/fooEx/*8q*/port(/*8*/);
////var new/*9*/Var = new extMod.m1.m2./*10*/c();
goTo.marker('2');
verify.quickInfoIs("namespace m1", "NamespaceComment");
goTo.marker('3');
verify.quickInfoIs('import extMod = require("./commentsImportDeclaration_file0")', "Import declaration");
verify.quickInfos({
2: ["namespace m1", "NamespaceComment"],
3: ['import extMod = require("./commentsImportDeclaration_file0")', "Import declaration"]
});
goTo.marker('6');
verify.memberListContains("m1", "namespace extMod.m1");
@@ -40,11 +39,10 @@ verify.memberListContains("m2", "namespace extMod.m1.m2");
goTo.marker('8');
verify.currentSignatureHelpDocCommentIs("exported function");
goTo.marker('8q');
verify.quickInfoIs("function extMod.m1.fooExport(): number", "exported function");
goTo.marker('9');
verify.quickInfoIs("var newVar: extMod.m1.m2.c", "");
verify.quickInfos({
"8q": ["function extMod.m1.fooExport(): number", "exported function"],
9: "var newVar: extMod.m1.m2.c"
});
goTo.marker('10');
verify.memberListContains("c", "constructor extMod.m1.m2.c(): extMod.m1.m2.c", "");
+106 -163
View File
@@ -250,24 +250,17 @@ verify.currentSignatureHelpDocCommentIs("");
goTo.marker('l5');
verify.currentSignatureHelpDocCommentIs("");
goTo.marker('1iq');
verify.quickInfoIs("var i1_i: i1", "");
goTo.marker('2q');
verify.quickInfoIs("(method) i1.i1_f1(): void", "i1_f1");
goTo.marker('3q');
verify.quickInfoIs("(method) i1.i1_nc_f1(): void", "");
goTo.marker('4q');
verify.quickInfoIs("(method) i1.f1(): void", "");
goTo.marker('5q');
verify.quickInfoIs("(method) i1.nc_f1(): void", "");
goTo.marker('l2q');
verify.quickInfoIs("(property) i1.i1_l1: () => void", "");
goTo.marker('l3q');
verify.quickInfoIs("(property) i1.i1_nc_l1: () => void", "");
goTo.marker('l4q');
verify.quickInfoIs("(property) i1.l1: () => void", "");
goTo.marker('l5q');
verify.quickInfoIs("(property) i1.nc_l1: () => void", "");
verify.quickInfos({
"1iq": "var i1_i: i1",
"2q": ["(method) i1.i1_f1(): void", "i1_f1"],
"3q": "(method) i1.i1_nc_f1(): void",
"4q": "(method) i1.f1(): void",
"5q": "(method) i1.nc_f1(): void",
l2q: "(property) i1.i1_l1: () => void",
l3q: "(property) i1.i1_nc_l1: () => void",
l4q: "(property) i1.l1: () => void",
l5q: "(property) i1.nc_l1: () => void"
});
goTo.marker('6');
verify.memberListContains("i1_p1", "(property) c1.i1_p1: number", "");
@@ -299,24 +292,17 @@ verify.currentSignatureHelpDocCommentIs("");
goTo.marker('l10');
verify.currentSignatureHelpDocCommentIs("");
goTo.marker('6iq');
verify.quickInfoIs("var c1_i: c1", "");
goTo.marker('7q');
verify.quickInfoIs("(method) c1.i1_f1(): void", "");
goTo.marker('8q');
verify.quickInfoIs("(method) c1.i1_nc_f1(): void", "");
goTo.marker('9q');
verify.quickInfoIs("(method) c1.f1(): void", "c1_f1");
goTo.marker('10q');
verify.quickInfoIs("(method) c1.nc_f1(): void", "c1_nc_f1");
goTo.marker('l7q');
verify.quickInfoIs("(property) c1.i1_l1: () => void", "");
goTo.marker('l8q');
verify.quickInfoIs("(property) c1.i1_nc_l1: () => void", "");
goTo.marker('l9q');
verify.quickInfoIs("(property) c1.l1: () => void", "");
goTo.marker('l10q');
verify.quickInfoIs("(property) c1.nc_l1: () => void", "");
verify.quickInfos({
"6iq": "var c1_i: c1",
"7q": "(method) c1.i1_f1(): void",
"8q": "(method) c1.i1_nc_f1(): void",
"9q": ["(method) c1.f1(): void", "c1_f1"],
"10q": ["(method) c1.nc_f1(): void", "c1_nc_f1"],
l7q: "(property) c1.i1_l1: () => void",
l8q: "(property) c1.i1_nc_l1: () => void",
l9q: "(property) c1.l1: () => void",
l10q: "(property) c1.nc_l1: () => void"
});
goTo.marker('11');
verify.memberListContains("i1_p1", "(property) i1.i1_p1: number", "i1_p1");
@@ -347,22 +333,17 @@ goTo.marker('l14');
verify.currentSignatureHelpDocCommentIs("");
goTo.marker('l15');
verify.currentSignatureHelpDocCommentIs("");
goTo.marker('12q');
verify.quickInfoIs("(method) i1.i1_f1(): void", "i1_f1");
goTo.marker('13q');
verify.quickInfoIs("(method) i1.i1_nc_f1(): void", "");
goTo.marker('14q');
verify.quickInfoIs("(method) i1.f1(): void", "");
goTo.marker('15q');
verify.quickInfoIs("(method) i1.nc_f1(): void", "");
goTo.marker('l12q');
verify.quickInfoIs("(property) i1.i1_l1: () => void", "");
goTo.marker('l13q');
verify.quickInfoIs("(property) i1.i1_nc_l1: () => void", "");
goTo.marker('l14q');
verify.quickInfoIs("(property) i1.l1: () => void", "");
goTo.marker('l15q');
verify.quickInfoIs("(property) i1.nc_l1: () => void", "");
verify.quickInfos({
"12q": ["(method) i1.i1_f1(): void", "i1_f1"],
"13q": "(method) i1.i1_nc_f1(): void",
"14q": "(method) i1.f1(): void",
"15q": "(method) i1.nc_f1(): void",
l12q: "(property) i1.i1_l1: () => void",
l13q: "(property) i1.i1_nc_l1: () => void",
l14q: "(property) i1.l1: () => void",
l15q: "(property) i1.nc_l1: () => void",
});
goTo.marker('16');
verify.completionListContains("i1", "interface i1", "i1 is interface with properties");
@@ -373,10 +354,10 @@ verify.completionListContains("c1_i", "var c1_i: c1", "");
goTo.marker('16i');
verify.completionListContains("i1", "interface i1", "i1 is interface with properties");
goTo.marker('17iq');
verify.quickInfoIs("var c2_i: c2", "");
goTo.marker('18iq');
verify.quickInfoIs("var c3_i: c3", "");
verify.quickInfos({
"17iq": "var c2_i: c2",
"18iq": "var c3_i: c3"
});
goTo.marker('17');
verify.currentSignatureHelpDocCommentIs("c2 constructor");
@@ -384,18 +365,15 @@ verify.currentSignatureHelpDocCommentIs("c2 constructor");
goTo.marker('18');
verify.currentSignatureHelpDocCommentIs("");
goTo.marker('18sq');
verify.quickInfoIs("constructor c2(a: number): c2", "c2 constructor");
verify.quickInfos({
"18sq": ["constructor c2(a: number): c2", "c2 constructor"],
goTo.marker('18spropq');
verify.quickInfoIs("class c2", "");
goTo.marker('18spropProp');
verify.quickInfoIs("(property) c2.c2_p1: number", "c2 c2_p1");
"18spropq": "class c2",
"18spropProp": ["(property) c2.c2_p1: number", "c2 c2_p1"],
goTo.marker('17q');
verify.quickInfoIs("constructor c2(a: number): c2", "c2 constructor");
goTo.marker('18q');
verify.quickInfoIs("constructor c3(): c3", "");
"17q": ["constructor c2(a: number): c2", "c2 constructor"],
"18q": "constructor c3(): c3"
});
goTo.marker('19');
verify.memberListContains("c2_p1", "(property) c2.c2_p1: number", "c2 c2_p1");
@@ -419,14 +397,12 @@ verify.currentSignatureHelpDocCommentIs("c2 f1");
goTo.marker('23');
verify.currentSignatureHelpDocCommentIs("");
goTo.marker('20q');
verify.quickInfoIs("(method) c2.c2_f1(): void", "c2 c2_f1");
goTo.marker('21q');
verify.quickInfoIs("(method) c2.c2_nc_f1(): void", "");
goTo.marker('22q');
verify.quickInfoIs("(method) c2.f1(): void", "c2 f1");
goTo.marker('23q');
verify.quickInfoIs("(method) c2.nc_f1(): void", "");
verify.quickInfos({
"20q": ["(method) c2.c2_f1(): void", "c2 c2_f1"],
"21q": "(method) c2.c2_nc_f1(): void",
"22q": ["(method) c2.f1(): void", "c2 f1"],
"23q": "(method) c2.nc_f1(): void"
});
goTo.marker('24');
verify.memberListContains("c2_p1", "(property) c2.c2_p1: number", "c2 c2_p1");
@@ -450,14 +426,12 @@ verify.currentSignatureHelpDocCommentIs("c3 f1");
goTo.marker('28');
verify.currentSignatureHelpDocCommentIs("");
goTo.marker('25q');
verify.quickInfoIs("(method) c2.c2_f1(): void", "c2 c2_f1");
goTo.marker('26q');
verify.quickInfoIs("(method) c2.c2_nc_f1(): void", "");
goTo.marker('27q');
verify.quickInfoIs("(method) c3.f1(): void", "c3 f1");
goTo.marker('28q');
verify.quickInfoIs("(method) c3.nc_f1(): void", "");
verify.quickInfos({
"25q": ["(method) c2.c2_f1(): void", "c2 c2_f1"],
"26q": "(method) c2.c2_nc_f1(): void",
"27q": ["(method) c3.f1(): void", "c3 f1"],
"28q": "(method) c3.nc_f1(): void"
});
goTo.marker('29');
verify.memberListContains("c2_p1", "(property) c2.c2_p1: number", "c2 c2_p1");
@@ -481,21 +455,19 @@ verify.currentSignatureHelpDocCommentIs("c2 f1");
goTo.marker('33');
verify.currentSignatureHelpDocCommentIs("");
goTo.marker('30q');
verify.quickInfoIs("(method) c2.c2_f1(): void", "c2 c2_f1");
goTo.marker('31q');
verify.quickInfoIs("(method) c2.c2_nc_f1(): void", "");
goTo.marker('32q');
verify.quickInfoIs("(method) c2.f1(): void", "c2 f1");
goTo.marker('33q');
verify.quickInfoIs("(method) c2.nc_f1(): void", "");
verify.quickInfos({
"30q": ["(method) c2.c2_f1(): void", "c2 c2_f1"],
"31q": "(method) c2.c2_nc_f1(): void",
"32q": ["(method) c2.f1(): void", "c2 f1"],
"33q": "(method) c2.nc_f1(): void"
});
goTo.marker('34');
verify.currentSignatureHelpDocCommentIs("c2 constructor");
goTo.marker('34iq');
verify.quickInfoIs("var c4_i: c4", "");
goTo.marker('34q');
verify.quickInfoIs("constructor c4(a: number): c4", "c2 constructor");
verify.quickInfos({
"34iq": "var c4_i: c4",
"34q": ["constructor c4(a: number): c4", "c2 constructor"]
});
goTo.marker('35');
verify.completionListContains("c2", "class c2", "");
@@ -535,26 +507,18 @@ verify.currentSignatureHelpDocCommentIs("");
goTo.marker('l40');
verify.currentSignatureHelpDocCommentIs("");
goTo.marker('36iq');
verify.quickInfoIs("var i2_i: i2", "");
goTo.marker('37iq');
verify.quickInfoIs("var i3_i: i3", "");
goTo.marker('37q');
verify.quickInfoIs("(method) i2.i2_f1(): void", "i2_f1");
goTo.marker('38q');
verify.quickInfoIs("(method) i2.i2_nc_f1(): void", "");
goTo.marker('39q');
verify.quickInfoIs("(method) i2.f1(): void", "i2 f1");
goTo.marker('40q');
verify.quickInfoIs("(method) i2.nc_f1(): void", "");
goTo.marker('l37q');
verify.quickInfoIs("(property) i2.i2_l1: () => void", "");
goTo.marker('l38q');
verify.quickInfoIs("(property) i2.i2_nc_l1: () => void", "");
goTo.marker('l39q');
verify.quickInfoIs("(property) i2.l1: () => void", "");
goTo.marker('l40q');
verify.quickInfoIs("(property) i2.nc_l1: () => void", "");
verify.quickInfos({
"36iq": "var i2_i: i2",
"37iq": "var i3_i: i3",
"37q": ["(method) i2.i2_f1(): void", "i2_f1"],
"38q": "(method) i2.i2_nc_f1(): void",
"39q": ["(method) i2.f1(): void", "i2 f1"],
"40q": "(method) i2.nc_f1(): void",
"l37q": "(property) i2.i2_l1: () => void",
"l38q": "(property) i2.i2_nc_l1: () => void",
"l39q": "(property) i2.l1: () => void",
"l40q": "(property) i2.nc_l1: () => void",
});
goTo.marker('41');
verify.memberListContains("i2_p1", "(property) i2.i2_p1: number", "i2_p1");
@@ -586,22 +550,16 @@ verify.currentSignatureHelpDocCommentIs("");
goTo.marker('l45');
verify.currentSignatureHelpDocCommentIs("");
goTo.marker('42q');
verify.quickInfoIs("(method) i2.i2_f1(): void", "i2_f1");
goTo.marker('43q');
verify.quickInfoIs("(method) i2.i2_nc_f1(): void", "");
goTo.marker('44q');
verify.quickInfoIs("(method) i3.f1(): void", "i3 f1");
goTo.marker('45q');
verify.quickInfoIs("(method) i3.nc_f1(): void", "");
goTo.marker('l42q');
verify.quickInfoIs("(property) i2.i2_l1: () => void", "");
goTo.marker('l43q');
verify.quickInfoIs("(property) i2.i2_nc_l1: () => void", "");
goTo.marker('l44q');
verify.quickInfoIs("(property) i3.l1: () => void", "");
goTo.marker('l45q');
verify.quickInfoIs("(property) i3.nc_l1: () => void", "");
verify.quickInfos({
"42q": ["(method) i2.i2_f1(): void", "i2_f1"],
"43q": "(method) i2.i2_nc_f1(): void",
"44q": ["(method) i3.f1(): void", "i3 f1"],
"45q": "(method) i3.nc_f1(): void",
l42q: "(property) i2.i2_l1: () => void",
l43q: "(property) i2.i2_nc_l1: () => void",
l44q: "(property) i3.l1: () => void",
l45q: "(property) i3.nc_l1: () => void"
});
goTo.marker('46');
verify.memberListContains("i2_p1", "(property) i2.i2_p1: number", "i2_p1");
@@ -633,22 +591,16 @@ verify.currentSignatureHelpDocCommentIs("");
goTo.marker('l50');
verify.currentSignatureHelpDocCommentIs("");
goTo.marker('47q');
verify.quickInfoIs("(method) i2.i2_f1(): void", "i2_f1");
goTo.marker('48q');
verify.quickInfoIs("(method) i2.i2_nc_f1(): void", "");
goTo.marker('49q');
verify.quickInfoIs("(method) i2.f1(): void", "i2 f1");
goTo.marker('50q');
verify.quickInfoIs("(method) i2.nc_f1(): void", "");
goTo.marker('l47q');
verify.quickInfoIs("(property) i2.i2_l1: () => void", "");
goTo.marker('l48q');
verify.quickInfoIs("(property) i2.i2_nc_l1: () => void", "");
goTo.marker('l49q');
verify.quickInfoIs("(property) i2.l1: () => void", "");
goTo.marker('l50q');
verify.quickInfoIs("(property) i2.nc_l1: () => void", "");
verify.quickInfos({
"47q": ["(method) i2.i2_f1(): void", "i2_f1"],
"48q": "(method) i2.i2_nc_f1(): void",
"49q": ["(method) i2.f1(): void", "i2 f1"],
"50q": "(method) i2.nc_f1(): void",
l47q: "(property) i2.i2_l1: () => void",
l48q: "(property) i2.i2_nc_l1: () => void",
l49q: "(property) i2.l1: () => void",
l40q: "(property) i2.nc_l1: () => void"
});
goTo.marker('51');
verify.completionListContains("i2", "interface i2", "");
@@ -660,20 +612,11 @@ goTo.marker('51i');
verify.completionListContains("i2", "interface i2", "");
verify.completionListContains("i3", "interface i3", "");
goTo.marker('52');
verify.quickInfoIs("constructor c5(): c5", "");
goTo.marker('53');
verify.quickInfoIs("class c5", "c5 class");
goTo.marker('54');
verify.quickInfoIs("(property) c5.b: number", "");
goTo.marker('55');
verify.quickInfoIs("constructor c2(a: number): c2", "c2 constructor");
goTo.marker('56');
verify.quickInfoIs("constructor c3(): c3", "");
goTo.marker('57');
verify.quickInfoIs("constructor c6(): c6", "");
verify.quickInfos({
52: "constructor c5(): c5",
53: ["class c5", "c5 class"],
54: "(property) c5.b: number",
55: ["constructor c2(a: number): c2", "c2 constructor"],
56: "constructor c3(): c3",
57: "constructor c6(): c6"
});
+52 -90
View File
@@ -68,26 +68,15 @@
////i3_i.nc_/*44q*/f(/*44*/10);
////i3_i.nc/*45q*/_l(/*45*/10);
goTo.marker('1');
verify.quickInfoIs("interface i1", "this is interface 1");
goTo.marker('2');
verify.quickInfoIs("var i1_i: i1", "");
goTo.marker('3');
verify.quickInfoIs("interface nc_i1", "");
goTo.marker('4');
verify.quickInfoIs("var nc_i1_i: nc_i1", "");
goTo.marker('5');
verify.quickInfoIs("interface i2", "this is interface 2 with memebers");
goTo.marker('6');
verify.quickInfoIs("var i2_i: i2", "");
goTo.marker('7');
verify.quickInfoIs("var i2_i_x: number", "");
verify.quickInfos({
1: ["interface i1", "this is interface 1"],
2: "var i1_i: i1",
3: "interface nc_i1",
4: "var nc_i1_i: nc_i1",
5: ["interface i2", "this is interface 2 with memebers"],
6: "var i2_i: i2",
7: "var i2_i_x: number"
});
goTo.marker('8');
verify.quickInfoIs("(property) i2.x: number", "this is x");
@@ -98,103 +87,80 @@ verify.memberListContains("nc_foo", "(property) i2.nc_foo: (b: number) => string
verify.memberListContains("fnfoo", "(method) i2.fnfoo(b: number): string", "this is fnfoo");
verify.memberListContains("nc_fnfoo", "(method) i2.nc_fnfoo(b: number): string", "");
goTo.marker('9');
verify.quickInfoIs("var i2_i_foo: (b: number) => string", "");
goTo.marker('10');
verify.quickInfoIs("(property) i2.foo: (b: number) => string", "this is foo");
goTo.marker('11');
verify.quickInfoIs("var i2_i_foo_r: string", "");
verify.quickInfos({
9: "var i2_i_foo: (b: number) => string",
10: ["(property) i2.foo: (b: number) => string", "this is foo"],
11: "var i2_i_foo_r: string"
});
goTo.marker('12');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("param help");
goTo.marker('12q');
verify.quickInfoIs("(property) i2.foo: (b: number) => string", "");
goTo.marker('13');
verify.quickInfoIs("var i2_i_i2_si: number", "");
goTo.marker('13q');
verify.quickInfoIs("var i2_i: i2", "");
verify.quickInfos({
"12q": "(property) i2.foo: (b: number) => string",
goTo.marker('14');
verify.quickInfoIs("var i2_i_i2_ii: number", "");
goTo.marker('14q');
verify.quickInfoIs("var i2_i: i2", "");
13: "var i2_i_i2_si: number",
"13q": "var i2_i: i2",
goTo.marker('15');
verify.quickInfoIs("var i2_i_n: any", "");
14: "var i2_i_i2_ii: number",
"14q": "var i2_i: i2",
15: "var i2_i_n: any"
});
goTo.marker('16');
verify.currentSignatureHelpDocCommentIs("new method");
verify.currentParameterHelpArgumentDocCommentIs("param");
goTo.marker('16q');
verify.quickInfoIs("var i2_i: new i2(i: i1) => any", "new method");
verify.quickInfos({
"16q": ["var i2_i: new i2(i: i1) => any", "new method"],
goTo.marker('17');
verify.quickInfoIs("var i2_i_nc_x: number", "");
goTo.marker('18');
verify.quickInfoIs("(property) i2.nc_x: number", "");
goTo.marker('19');
verify.quickInfoIs("var i2_i_nc_foo: (b: number) => string", "");
goTo.marker('20');
verify.quickInfoIs("(property) i2.nc_foo: (b: number) => string", "");
goTo.marker('21');
verify.quickInfoIs("var i2_i_nc_foo_r: string", "");
17: "var i2_i_nc_x: number",
18: "(property) i2.nc_x: number",
19: "var i2_i_nc_foo: (b: number) => string",
20: "(property) i2.nc_foo: (b: number) => string",
21: "var i2_i_nc_foo_r: string"
});
goTo.marker('22');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('22q');
verify.quickInfoIs("(property) i2.nc_foo: (b: number) => string", "");
goTo.marker('23');
verify.quickInfoIs("var i2_i_r: number", "");
verify.quickInfos({
"22q": "(property) i2.nc_foo: (b: number) => string",
23: "var i2_i_r: number"
});
goTo.marker('24');
verify.currentSignatureHelpDocCommentIs("this is call signature");
verify.currentParameterHelpArgumentDocCommentIs("paramhelp a");
goTo.marker('24q');
verify.quickInfoIs("var i2_i: i2(a: number, b: number) => number", "this is call signature");
verify.quickInfoAt("24q", "var i2_i: i2(a: number, b: number) => number", "this is call signature");
goTo.marker('25');
verify.currentSignatureHelpDocCommentIs("this is call signature");
verify.currentParameterHelpArgumentDocCommentIs("paramhelp b");
goTo.marker('26');
verify.quickInfoIs("var i2_i_fnfoo: (b: number) => string", "");
goTo.marker('27');
verify.quickInfoIs("(method) i2.fnfoo(b: number): string", "this is fnfoo");
goTo.marker('28');
verify.quickInfoIs("var i2_i_fnfoo_r: string", "");
verify.quickInfos({
26: "var i2_i_fnfoo: (b: number) => string",
27: ["(method) i2.fnfoo(b: number): string", "this is fnfoo"],
28: "var i2_i_fnfoo_r: string"
});
goTo.marker('29');
verify.currentSignatureHelpDocCommentIs("this is fnfoo");
verify.currentParameterHelpArgumentDocCommentIs("param help");
goTo.marker('29q');
verify.quickInfoIs("(method) i2.fnfoo(b: number): string", "this is fnfoo");
goTo.marker('30');
verify.quickInfoIs("var i2_i_nc_fnfoo: (b: number) => string", "");
verify.quickInfos({
"29q": ["(method) i2.fnfoo(b: number): string", "this is fnfoo"],
goTo.marker('31');
verify.quickInfoIs("(method) i2.nc_fnfoo(b: number): string", "");
goTo.marker('32');
verify.quickInfoIs("var i2_i_nc_fnfoo_r: string", "");
30: "var i2_i_nc_fnfoo: (b: number) => string",
31: "(method) i2.nc_fnfoo(b: number): string",
32: "var i2_i_nc_fnfoo_r: string"
});
goTo.marker('33');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('33q');
verify.quickInfoIs("(method) i2.nc_fnfoo(b: number): string", "");
verify.quickInfoAt("33q", "(method) i2.nc_fnfoo(b: number): string");
goTo.marker('34');
verify.completionListContains("i1", "interface i1", "this is interface 1");
@@ -226,8 +192,7 @@ verify.completionListContains("i2", "interface i2", "this is interface 2 with me
goTo.marker('36');
verify.completionListContains("a", "(parameter) a: number", "i3_i a");
goTo.marker('40q');
verify.quickInfoIs("var i3_i: i3", "");
verify.quickInfoAt("40q", "var i3_i: i3");
goTo.marker('40');
verify.completionListContains("i3", "interface i3", "");
verify.completionListContains("i3_i", "var i3_i: i3", "");
@@ -248,17 +213,14 @@ verify.currentParameterHelpArgumentDocCommentIs("number parameter");
goTo.marker('43');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("comment i3 l b");
goTo.marker('43q');
verify.quickInfoIs("(property) i3.l: (b: number) => string", "");
verify.quickInfoAt("43q", "(property) i3.l: (b: number) => string");
goTo.marker('44');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('44q');
verify.quickInfoIs("(method) i3.nc_f(a: number): string", "");
verify.quickInfoAt("44q", "(method) i3.nc_f(a: number): string");
goTo.marker('45');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('45q');
verify.quickInfoIs("(property) i3.nc_l: (b: number) => string", "");
verify.quickInfoAt("45q", "(property) i3.nc_l: (b: number) => string");
@@ -106,56 +106,35 @@
//// */
////function /*l*/l(param1: string) { /*9*/param1 = "hello"; }
goTo.marker('a');
verify.quickInfoIs(undefined, "This is firstLine\nThis is second Line\n\nThis is fourth Line");
verify.quickInfos({
a: ["var a: string", "This is firstLine\nThis is second Line\n\nThis is fourth Line"],
b: ["var b: string", "This is firstLine\nThis is second Line\n\nThis is fourth Line"],
c: ["var c: string", "This is firstLine\nThis is second Line\n\nThis is fourth Line"],
d: ["function d(param: string): void", "This is firstLine\nThis is second Line\n@random tag This should be third line"],
1: "(parameter) param: string",
goTo.marker('b');
verify.quickInfoIs(undefined, "This is firstLine\nThis is second Line\n\nThis is fourth Line");
e: ["function e(param: string): void", "This is firstLine\nThis is second Line"],
2: "(parameter) param: string",
goTo.marker('c');
verify.quickInfoIs(undefined, "This is firstLine\nThis is second Line\n\nThis is fourth Line");
f: ["function f(param1: string): void", "This is firstLine\nThis is second Line\n@random tag This should be third line"],
3: ["(parameter) param1: string", "first line of param\n\nparam information third line"],
goTo.marker('d');
verify.quickInfoIs(undefined, "This is firstLine\nThis is second Line\n@random tag This should be third line");
goTo.marker('1');
verify.quickInfoIs(undefined, "");
g: ["function g(param1: string): void", "This is firstLine\nThis is second Line\n@random tag This should be third line"],
4: ["(parameter) param1: string", "param information first line"],
goTo.marker('e');
verify.quickInfoIs(undefined, "This is firstLine\nThis is second Line");
goTo.marker('2');
verify.quickInfoIs(undefined, "");
h: ["function h(param1: string): void", "This is firstLine\nThis is second Line\n@random tag This should be third line"],
5: ["(parameter) param1: string", "param information first line\n\nparam information third line"],
goTo.marker('f');
verify.quickInfoIs(undefined, "This is firstLine\nThis is second Line\n@random tag This should be third line");
goTo.marker('3');
verify.quickInfoIs(undefined, "first line of param\n\nparam information third line");
i: ["function i(param1: string): void", "This is firstLine\nThis is second Line"],
6: ["(parameter) param1: string", "param information first line\n\nparam information third line"],
goTo.marker('g');
verify.quickInfoIs(undefined, "This is firstLine\nThis is second Line\n@random tag This should be third line");
goTo.marker('4');
verify.quickInfoIs(undefined, "param information first line");
j: ["function j(param1: string): void", "This is firstLine\nThis is second Line"],
7: ["(parameter) param1: string", "param information first line\n\nparam information third line"],
goTo.marker('h');
verify.quickInfoIs(undefined, "This is firstLine\nThis is second Line\n@random tag This should be third line");
goTo.marker('5');
verify.quickInfoIs(undefined, "param information first line\n\nparam information third line");
k: ["function k(param1: string): void", "This is firstLine\nThis is second Line\n@randomtag \n\n random information first line\n\n random information third line"],
8: ["(parameter) param1: string", "hello "],
goTo.marker('i');
verify.quickInfoIs(undefined, "This is firstLine\nThis is second Line");
goTo.marker('6');
verify.quickInfoIs(undefined, "param information first line\n\nparam information third line");
goTo.marker('j');
verify.quickInfoIs(undefined, "This is firstLine\nThis is second Line");
goTo.marker('7');
verify.quickInfoIs(undefined, "param information first line\n\nparam information third line");
goTo.marker('k');
verify.quickInfoIs(undefined, "This is firstLine\nThis is second Line\n@randomtag \n\n random information first line\n\n random information third line");
goTo.marker('8');
verify.quickInfoIs(undefined, "hello ");
goTo.marker('l');
verify.quickInfoIs(undefined, "This is firstLine\nThis is second Line");
goTo.marker('9');
verify.quickInfoIs(undefined, "first Line text\nblank line that shouldnt be shown when starting this \nsecond time information about the param again");
l: ["function l(param1: string): void", "This is firstLine\nThis is second Line"],
9: ["(parameter) param1: string", "first Line text\nblank line that shouldnt be shown when starting this \nsecond time information about the param again"]
});
+32 -44
View File
@@ -96,8 +96,7 @@
////}
////var myComp/*35*/lexVal = new compl/*36*/exM.m/*37*/2./*38*/c().f/*39*/oo2().f/*40*/oo();
goTo.marker('1');
verify.quickInfoIs("namespace m1", "Namespace comment");
verify.quickInfoAt("1", "namespace m1", "Namespace comment");
goTo.marker('2');
verify.completionListContains("b", "var m1.b: number", "b's comment");
@@ -105,8 +104,7 @@ verify.completionListContains("foo", "function foo(): number", "foo's comment");
goTo.marker('3');
verify.currentSignatureHelpDocCommentIs("foo's comment");
goTo.marker('3q');
verify.quickInfoIs("function foo(): number", "foo's comment");
verify.quickInfoAt("3q", "function foo(): number", "foo's comment");
goTo.marker('4');
verify.completionListContains("m1", "namespace m1", "Namespace comment");
@@ -120,49 +118,48 @@ verify.quickInfoIs("function m1.fooExport(): number", "exported function");
goTo.marker('6');
verify.currentSignatureHelpDocCommentIs("exported function");
goTo.marker('7');
verify.quickInfoIs("var myvar: m1.m2.c", "");
verify.quickInfoAt("7", "var myvar: m1.m2.c");
goTo.marker('8');
verify.quickInfoIs("constructor m1.m2.c(): m1.m2.c", "");
verify.quickInfoIs("constructor m1.m2.c(): m1.m2.c");
verify.memberListContains("c", "constructor m1.m2.c(): m1.m2.c", "");
verify.memberListContains("i", "var m1.m2.i: m1.m2.c", "i");
goTo.marker('9');
verify.completionListContains("m2", "namespace m2", "");
verify.quickInfoIs("namespace m2", "");
verify.quickInfoIs("namespace m2");
goTo.marker('10');
verify.memberListContains("m3", "namespace m2.m3");
verify.quickInfoIs("namespace m2.m3", "namespace comment of m2.m3");
goTo.marker('11');
verify.quickInfoIs("constructor m2.m3.c(): m2.m3.c", "");
verify.quickInfoIs("constructor m2.m3.c(): m2.m3.c");
verify.memberListContains("c", "constructor m2.m3.c(): m2.m3.c", "");
goTo.marker('12');
verify.completionListContains("m3", "namespace m3", "");
verify.quickInfoIs("namespace m3", "");
verify.quickInfoIs("namespace m3");
goTo.marker('13');
verify.memberListContains("m4", "namespace m3.m4", "");
verify.quickInfoIs("namespace m3.m4", "");
verify.quickInfoIs("namespace m3.m4");
goTo.marker('14');
verify.memberListContains("m5", "namespace m3.m4.m5");
verify.quickInfoIs("namespace m3.m4.m5", "namespace comment of m3.m4.m5");
goTo.marker('15');
verify.quickInfoIs("constructor m3.m4.m5.c(): m3.m4.m5.c", "");
verify.quickInfoIs("constructor m3.m4.m5.c(): m3.m4.m5.c");
verify.memberListContains("c", "constructor m3.m4.m5.c(): m3.m4.m5.c", "");
goTo.marker('16');
verify.completionListContains("m4", "namespace m4", "");
verify.quickInfoIs("namespace m4", "");
verify.quickInfoIs("namespace m4");
goTo.marker('17');
verify.memberListContains("m5", "namespace m4.m5", "");
verify.quickInfoIs("namespace m4.m5", "");
verify.quickInfoIs("namespace m4.m5");
goTo.marker('18');
verify.memberListContains("m6", "namespace m4.m5.m6");
@@ -170,19 +167,19 @@ verify.quickInfoIs("namespace m4.m5.m6", "namespace comment of m4.m5.m6");
goTo.marker('19');
verify.memberListContains("m7", "namespace m4.m5.m6.m7");
verify.quickInfoIs("namespace m4.m5.m6.m7", "");
verify.quickInfoIs("namespace m4.m5.m6.m7");
goTo.marker('20');
verify.memberListContains("c", "constructor m4.m5.m6.m7.c(): m4.m5.m6.m7.c", "");
verify.quickInfoIs("constructor m4.m5.m6.m7.c(): m4.m5.m6.m7.c", "");
verify.quickInfoIs("constructor m4.m5.m6.m7.c(): m4.m5.m6.m7.c");
goTo.marker('21');
verify.completionListContains("m5", "namespace m5");
verify.quickInfoIs("namespace m5", "");
verify.quickInfoIs("namespace m5");
goTo.marker('22');
verify.memberListContains("m6", "namespace m5.m6");
verify.quickInfoIs("namespace m5.m6", "");
verify.quickInfoIs("namespace m5.m6");
goTo.marker('23');
verify.memberListContains("m7", "namespace m5.m6.m7");
@@ -194,31 +191,31 @@ verify.quickInfoIs("namespace m5.m6.m7.m8", "namespace m8 comment");
goTo.marker('25');
verify.memberListContains("c", "constructor m5.m6.m7.m8.c(): m5.m6.m7.m8.c", "");
verify.quickInfoIs("constructor m5.m6.m7.m8.c(): m5.m6.m7.m8.c", "");
verify.quickInfoIs("constructor m5.m6.m7.m8.c(): m5.m6.m7.m8.c");
goTo.marker('26');
verify.completionListContains("m6", "namespace m6");
verify.quickInfoIs("namespace m6", "");
verify.quickInfoIs("namespace m6");
goTo.marker('27');
verify.memberListContains("m7", "namespace m6.m7");
verify.quickInfoIs("namespace m6.m7", "");
verify.quickInfoIs("namespace m6.m7");
goTo.marker('28');
verify.memberListContains("m8", "namespace m6.m7.m8");
verify.quickInfoIs("namespace m6.m7.m8", "");
verify.quickInfoIs("namespace m6.m7.m8");
goTo.marker('29');
verify.memberListContains("c", "constructor m6.m7.m8.c(): m6.m7.m8.c", "");
verify.quickInfoIs("constructor m6.m7.m8.c(): m6.m7.m8.c", "");
verify.quickInfoIs("constructor m6.m7.m8.c(): m6.m7.m8.c");
goTo.marker('30');
verify.completionListContains("m7", "namespace m7");
verify.quickInfoIs("namespace m7", "");
verify.quickInfoIs("namespace m7");
goTo.marker('31');
verify.memberListContains("m8", "namespace m7.m8");
verify.quickInfoIs("namespace m7.m8", "");
verify.quickInfoIs("namespace m7.m8");
goTo.marker('32');
verify.memberListContains("m9", "namespace m7.m8.m9");
@@ -226,26 +223,17 @@ verify.quickInfoIs("namespace m7.m8.m9", "namespace m9 comment");
goTo.marker('33');
verify.memberListContains("c", "constructor m7.m8.m9.c(): m7.m8.m9.c", "");
verify.quickInfoIs("constructor m7.m8.m9.c(): m7.m8.m9.c", "");
verify.quickInfoIs("constructor m7.m8.m9.c(): m7.m8.m9.c");
goTo.marker('34');
verify.completionListContains("c", 'class c', "");
verify.quickInfoIs('class c', "");
verify.quickInfoIs('class c');
goTo.marker('35');
verify.quickInfoIs("var myComplexVal: number", "");
goTo.marker('36');
verify.quickInfoIs("namespace complexM", "");
goTo.marker('37');
verify.quickInfoIs("namespace complexM.m2", "");
goTo.marker('38');
verify.quickInfoIs("constructor complexM.m2.c(): complexM.m2.c", "");
goTo.marker('39');
verify.quickInfoIs("(method) complexM.m2.c.foo2(): complexM.m1.c", "");
goTo.marker('40');
verify.quickInfoIs("(method) complexM.m1.c.foo(): number", "");
verify.quickInfos({
35: "var myComplexVal: number",
36: "namespace complexM",
37: "namespace complexM.m2",
38: "constructor complexM.m2.c(): complexM.m2.c",
39: "(method) complexM.m2.c.foo2(): complexM.m1.c",
40: "(method) complexM.m1.c.foo(): number",
});
@@ -26,26 +26,14 @@
////}
////new /*7*/mu/*8*/ltiM.d();
const comment = "this is multi declare namespace\nthi is multi namespace 2\nthis is multi namespace 3 comment";
goTo.marker('1');
verify.completionListContains("multiM", "namespace multiM", "this is multi declare namespace\nthi is multi namespace 2\nthis is multi namespace 3 comment");
verify.completionListContains("multiM", "namespace multiM", comment);
goTo.marker('2');
verify.quickInfoIs("namespace multiM", "this is multi declare namespace\nthi is multi namespace 2\nthis is multi namespace 3 comment");
goTo.marker('3');
verify.quickInfoIs("namespace multiM", "this is multi declare namespace\nthi is multi namespace 2\nthis is multi namespace 3 comment");
goTo.marker('4');
verify.quickInfoIs("namespace multiM", "this is multi declare namespace\nthi is multi namespace 2\nthis is multi namespace 3 comment");
goTo.marker('5');
verify.quickInfoIs("namespace multiM", "this is multi declare namespace\nthi is multi namespace 2\nthis is multi namespace 3 comment");
goTo.marker('6');
verify.quickInfoIs("namespace multiM", "this is multi declare namespace\nthi is multi namespace 2\nthis is multi namespace 3 comment");
for (const marker of ["2", "3", "4", "5", "6", "8"]) {
verify.quickInfoAt(marker, "namespace multiM", comment);
}
goTo.marker('7');
verify.completionListContains("multiM", "namespace multiM", "this is multi declare namespace\nthi is multi namespace 2\nthis is multi namespace 3 comment");
goTo.marker('8');
verify.quickInfoIs("namespace multiM", "this is multi declare namespace\nthi is multi namespace 2\nthis is multi namespace 3 comment");
verify.completionListContains("multiM", "namespace multiM", comment);
@@ -16,17 +16,11 @@
////new /*1*/mu/*4*/ltiM.b();
////new mu/*5*/ltiM.c();
const comment = "this is multi declare namespace\nthi is multi namespace 2";
goTo.marker('1');
verify.completionListContains("multiM", "namespace multiM", "this is multi declare namespace\nthi is multi namespace 2");
verify.completionListContains("multiM", "namespace multiM", comment);
goTo.marker('2');
verify.quickInfoIs("namespace multiM", "this is multi declare namespace\nthi is multi namespace 2");
goTo.marker('3');
verify.quickInfoIs("namespace multiM", "this is multi declare namespace\nthi is multi namespace 2");
goTo.marker('4');
verify.quickInfoIs("namespace multiM", "this is multi declare namespace\nthi is multi namespace 2");
goTo.marker('5');
verify.quickInfoIs("namespace multiM", "this is multi declare namespace\nthi is multi namespace 2");
for (const marker of ["2", "3", "4", "5"]) {
verify.quickInfoAt(marker, "namespace multiM", comment);
}
+116 -244
View File
@@ -225,16 +225,13 @@
////}
////foo(null);
goTo.marker('1');
verify.quickInfoIs("function f1(a: number): number (+1 overload)", "this is signature 1");
goTo.marker('2');
verify.quickInfoIs("function f1(b: string): number (+1 overload)", "");
goTo.marker('3');
verify.quickInfoIs("function f1(a: number): number (+1 overload)", "this is signature 1");
goTo.marker('4q');
verify.quickInfoIs("function f1(b: string): number (+1 overload)", "");
goTo.marker('o4q');
verify.quickInfoIs("function f1(a: number): number (+1 overload)", "this is signature 1");
verify.quickInfos({
1: ["function f1(a: number): number (+1 overload)", "this is signature 1"],
2: "function f1(b: string): number (+1 overload)",
3: ["function f1(a: number): number (+1 overload)", "this is signature 1"],
"4q": "function f1(b: string): number (+1 overload)",
o4q: ["function f1(a: number): number (+1 overload)", "this is signature 1"]
});
goTo.marker('4');
verify.currentSignatureHelpDocCommentIs("");
@@ -243,16 +240,13 @@ goTo.marker('o4');
verify.currentSignatureHelpDocCommentIs("this is signature 1");
verify.currentParameterHelpArgumentDocCommentIs("param a");
goTo.marker('5');
verify.quickInfoIs("function f2(a: number): number (+1 overload)", "");
goTo.marker('6');
verify.quickInfoIs("function f2(b: string): number (+1 overload)", "this is signature 2");
goTo.marker('7');
verify.quickInfoIs("function f2(a: number): number (+1 overload)", "");
goTo.marker('8q');
verify.quickInfoIs("function f2(b: string): number (+1 overload)", "this is signature 2");
goTo.marker('o8q');
verify.quickInfoIs("function f2(a: number): number (+1 overload)", "");
verify.quickInfos({
5: "function f2(a: number): number (+1 overload)",
6: ["function f2(b: string): number (+1 overload)", "this is signature 2"],
7: "function f2(a: number): number (+1 overload)",
"8q": ["function f2(b: string): number (+1 overload)", "this is signature 2"],
o8q: "function f2(a: number): number (+1 overload)"
});
goTo.marker('8');
verify.currentSignatureHelpDocCommentIs("this is signature 2");
@@ -262,16 +256,13 @@ goTo.marker('o8');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("param a");
goTo.marker('9');
verify.quickInfoIs("function f3(a: number): number (+1 overload)", "");
goTo.marker('10');
verify.quickInfoIs("function f3(b: string): number (+1 overload)", "");
goTo.marker('11');
verify.quickInfoIs("function f3(a: number): number (+1 overload)", "");
goTo.marker('12q');
verify.quickInfoIs("function f3(b: string): number (+1 overload)", "");
goTo.marker('o12q');
verify.quickInfoIs("function f3(a: number): number (+1 overload)", "");
verify.quickInfos({
9: "function f3(a: number): number (+1 overload)",
10: "function f3(b: string): number (+1 overload)",
11: "function f3(a: number): number (+1 overload)",
"12q": "function f3(b: string): number (+1 overload)",
o12q: "function f3(a: number): number (+1 overload)"
});
goTo.marker('12');
verify.currentSignatureHelpDocCommentIs("");
@@ -281,16 +272,13 @@ goTo.marker('o12');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('13');
verify.quickInfoIs("function f4(a: number): number (+1 overload)", "this is signature 4 - with number parameter");
goTo.marker('14');
verify.quickInfoIs("function f4(b: string): number (+1 overload)", "this is signature 4 - with string parameter");
goTo.marker('15');
verify.quickInfoIs("function f4(a: number): number (+1 overload)", "this is signature 4 - with number parameter");
goTo.marker('16q');
verify.quickInfoIs("function f4(b: string): number (+1 overload)", "this is signature 4 - with string parameter");
goTo.marker('o16q');
verify.quickInfoIs("function f4(a: number): number (+1 overload)", "this is signature 4 - with number parameter");
verify.quickInfos({
13: ["function f4(a: number): number (+1 overload)", "this is signature 4 - with number parameter"],
14: ["function f4(b: string): number (+1 overload)", "this is signature 4 - with string parameter"],
15: ["function f4(a: number): number (+1 overload)", "this is signature 4 - with number parameter"],
"16q": ["function f4(b: string): number (+1 overload)", "this is signature 4 - with string parameter"],
o16q: ["function f4(a: number): number (+1 overload)", "this is signature 4 - with number parameter"]
});
goTo.marker('16');
verify.currentSignatureHelpDocCommentIs("this is signature 4 - with string parameter");
@@ -319,26 +307,23 @@ verify.completionListContains('i4_i', 'var i4_i: new i4(a: string) => any (+1 ov
goTo.marker('19');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('19q');
verify.quickInfoIs("var i1_i: new i1(b: number) => any (+1 overload)", "");
verify.quickInfoAt("19q", "var i1_i: new i1(b: number) => any (+1 overload)");
goTo.marker('20');
verify.currentSignatureHelpDocCommentIs("new 1");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('20q');
verify.quickInfoIs("var i1_i: new i1(a: string) => any (+1 overload)", "new 1");
verify.quickInfoAt("20q", "var i1_i: new i1(a: string) => any (+1 overload)", "new 1");
goTo.marker('21');
verify.currentSignatureHelpDocCommentIs("this signature 1");
verify.currentParameterHelpArgumentDocCommentIs("param a");
goTo.marker('21q');
verify.quickInfoIs("var i1_i: i1(a: number) => number (+1 overload)", "this signature 1");
verify.quickInfoAt("21q", "var i1_i: i1(a: number) => number (+1 overload)", "this signature 1");
goTo.marker('22');
verify.currentSignatureHelpDocCommentIs("this is signature 2");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('22q');
verify.quickInfoIs("var i1_i: i1(b: string) => number (+1 overload)", "this is signature 2");
verify.quickInfoAt("22q", "var i1_i: i1(b: string) => number (+1 overload)", "this is signature 2");
goTo.marker('23');
verify.memberListContains('foo', '(method) i1.foo(a: number): number (+1 overload)', 'foo 1');
@@ -349,122 +334,102 @@ verify.memberListContains('foo4', '(method) i1.foo4(a: number): number (+1 overl
goTo.marker('24');
verify.currentSignatureHelpDocCommentIs("foo 1");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('24q');
verify.quickInfoIs("(method) i1.foo(a: number): number (+1 overload)", "foo 1");
verify.quickInfoAt("24q", "(method) i1.foo(a: number): number (+1 overload)", "foo 1");
goTo.marker('25');
verify.currentSignatureHelpDocCommentIs("foo 2");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('25q');
verify.quickInfoIs("(method) i1.foo(b: string): number (+1 overload)", "foo 2");
verify.quickInfoAt("25q", "(method) i1.foo(b: string): number (+1 overload)", "foo 2");
goTo.marker('26');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('26q');
verify.quickInfoIs("(method) i1.foo2(a: number): number (+1 overload)", "");
verify.quickInfoAt("26q", "(method) i1.foo2(a: number): number (+1 overload)");
goTo.marker('27');
verify.currentSignatureHelpDocCommentIs("foo2 2");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('27q');
verify.quickInfoIs("(method) i1.foo2(b: string): number (+1 overload)", "foo2 2");
verify.quickInfoAt("27q", "(method) i1.foo2(b: string): number (+1 overload)", "foo2 2");
goTo.marker('28');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('28q');
verify.quickInfoIs("(method) i1.foo3(a: number): number (+1 overload)", "");
verify.quickInfoAt("28q", "(method) i1.foo3(a: number): number (+1 overload)");
goTo.marker('29');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('29q');
verify.quickInfoIs("(method) i1.foo3(b: string): number (+1 overload)", "");
verify.quickInfoAt("29q", "(method) i1.foo3(b: string): number (+1 overload)");
goTo.marker('30');
verify.currentSignatureHelpDocCommentIs("foo4 1");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('30q');
verify.quickInfoIs("(method) i1.foo4(a: number): number (+1 overload)", "foo4 1");
verify.quickInfoAt("30q", "(method) i1.foo4(a: number): number (+1 overload)", "foo4 1");
goTo.marker('31');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('31q');
verify.quickInfoIs("(method) i1.foo4(b: string): number (+1 overload)", "");
verify.quickInfoAt("31q", "(method) i1.foo4(b: string): number (+1 overload)");
goTo.marker('32');
verify.currentSignatureHelpDocCommentIs("new 2");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('32q');
verify.quickInfoIs("var i2_i: new i2(b: number) => any (+1 overload)", "new 2");
verify.quickInfoAt("32q", "var i2_i: new i2(b: number) => any (+1 overload)", "new 2");
goTo.marker('33');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('33q');
verify.quickInfoIs("var i2_i: new i2(a: string) => any (+1 overload)", "");
verify.quickInfoAt("33q", "var i2_i: new i2(a: string) => any (+1 overload)");
goTo.marker('34');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('34q');
verify.quickInfoIs("var i2_i: i2(a: number) => number (+1 overload)", "");
verify.quickInfoAt("34q", "var i2_i: i2(a: number) => number (+1 overload)");
goTo.marker('35');
verify.currentSignatureHelpDocCommentIs("this is signature 2");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('35q');
verify.quickInfoIs("var i2_i: i2(b: string) => number (+1 overload)", "this is signature 2");
verify.quickInfoAt("35q", "var i2_i: i2(b: string) => number (+1 overload)", "this is signature 2");
goTo.marker('36');
verify.currentSignatureHelpDocCommentIs("new 2");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('36q');
verify.quickInfoIs("var i3_i: new i3(b: number) => any (+1 overload)", "new 2");
verify.quickInfoAt("36q", "var i3_i: new i3(b: number) => any (+1 overload)", "new 2");
goTo.marker('37');
verify.currentSignatureHelpDocCommentIs("new 1");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('37q');
verify.quickInfoIs("var i3_i: new i3(a: string) => any (+1 overload)", "new 1");
verify.quickInfoAt("37q", "var i3_i: new i3(a: string) => any (+1 overload)", "new 1");
goTo.marker('38');
verify.currentSignatureHelpDocCommentIs("this is signature 1");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('38q');
verify.quickInfoIs("var i3_i: i3(a: number) => number (+1 overload)", "this is signature 1");
verify.quickInfoAt("38q", "var i3_i: i3(a: number) => number (+1 overload)", "this is signature 1");
goTo.marker('39');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('39q');
verify.quickInfoIs("var i3_i: i3(b: string) => number (+1 overload)", "");
verify.quickInfoAt("39q", "var i3_i: i3(b: string) => number (+1 overload)");
goTo.marker('40');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('40q');
verify.quickInfoIs("var i4_i: new i4(b: number) => any (+1 overload)", "");
verify.quickInfoAt("40q", "var i4_i: new i4(b: number) => any (+1 overload)");
goTo.marker('41');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('41q');
verify.quickInfoIs("var i4_i: new i4(a: string) => any (+1 overload)", "");
verify.quickInfoAt("41q", "var i4_i: new i4(a: string) => any (+1 overload)");
goTo.marker('42');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('42q');
verify.quickInfoIs("var i4_i: i4(a: number) => number (+1 overload)", "");
verify.quickInfoAt("42q", "var i4_i: i4(a: number) => number (+1 overload)");
goTo.marker('43');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('43q');
verify.quickInfoIs("var i4_i: i4(b: string) => number (+1 overload)", "");
verify.quickInfoAt("43q", "var i4_i: i4(b: string) => number (+1 overload)");
goTo.marker('44');
verify.memberListContains('prop1', '(method) c.prop1(a: number): number (+1 overload)', '');
@@ -476,122 +441,102 @@ verify.memberListContains('prop5', '(method) c.prop5(a: number): number (+1 over
goTo.marker('45');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('45q');
verify.quickInfoIs("(method) c.prop1(a: number): number (+1 overload)", "");
verify.quickInfoAt("45q", "(method) c.prop1(a: number): number (+1 overload)");
goTo.marker('46');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('46q');
verify.quickInfoIs("(method) c.prop1(b: string): number (+1 overload)", "");
verify.quickInfoAt("46q", "(method) c.prop1(b: string): number (+1 overload)");
goTo.marker('47');
verify.currentSignatureHelpDocCommentIs("prop2 1");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('47q');
verify.quickInfoIs("(method) c.prop2(a: number): number (+1 overload)", "prop2 1");
verify.quickInfoAt("47q", "(method) c.prop2(a: number): number (+1 overload)", "prop2 1");
goTo.marker('48');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('48q');
verify.quickInfoIs("(method) c.prop2(b: string): number (+1 overload)", "");
verify.quickInfoAt("48q", "(method) c.prop2(b: string): number (+1 overload)");
goTo.marker('49');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('49q');
verify.quickInfoIs("(method) c.prop3(a: number): number (+1 overload)", "");
verify.quickInfoAt("49q", "(method) c.prop3(a: number): number (+1 overload)");
goTo.marker('50');
verify.currentSignatureHelpDocCommentIs("prop3 2");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('50q');
verify.quickInfoIs("(method) c.prop3(b: string): number (+1 overload)", "prop3 2");
verify.quickInfoAt("50q", "(method) c.prop3(b: string): number (+1 overload)", "prop3 2");
goTo.marker('51');
verify.currentSignatureHelpDocCommentIs("prop4 1");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('51q');
verify.quickInfoIs("(method) c.prop4(a: number): number (+1 overload)", "prop4 1");
verify.quickInfoAt("51q", "(method) c.prop4(a: number): number (+1 overload)", "prop4 1");
goTo.marker('52');
verify.currentSignatureHelpDocCommentIs("prop4 2");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('52q');
verify.quickInfoIs("(method) c.prop4(b: string): number (+1 overload)", "prop4 2");
verify.quickInfoAt("52q", "(method) c.prop4(b: string): number (+1 overload)", "prop4 2");
goTo.marker('53');
verify.currentSignatureHelpDocCommentIs("prop5 1");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('53q');
verify.quickInfoIs("(method) c.prop5(a: number): number (+1 overload)", "prop5 1");
verify.quickInfoAt("53q", "(method) c.prop5(a: number): number (+1 overload)", "prop5 1");
goTo.marker('54');
verify.currentSignatureHelpDocCommentIs("prop5 2");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('54q');
verify.quickInfoIs("(method) c.prop5(b: string): number (+1 overload)", "prop5 2");
verify.quickInfoAt("54q", "(method) c.prop5(b: string): number (+1 overload)", "prop5 2");
goTo.marker('55');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('55q');
verify.quickInfoIs("constructor c1(a: number): c1 (+1 overload)", "");
verify.quickInfoAt("55q", "constructor c1(a: number): c1 (+1 overload)");
goTo.marker('56');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('56q');
verify.quickInfoIs("constructor c1(b: string): c1 (+1 overload)", "");
verify.quickInfoAt("56q", "constructor c1(b: string): c1 (+1 overload)");
goTo.marker('57');
verify.currentSignatureHelpDocCommentIs("c2 1");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('57q');
verify.quickInfoIs("constructor c2(a: number): c2 (+1 overload)", "c2 1");
verify.quickInfoAt("57q", "constructor c2(a: number): c2 (+1 overload)", "c2 1");
goTo.marker('58');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('58q');
verify.quickInfoIs("constructor c2(b: string): c2 (+1 overload)", "");
verify.quickInfoAt("58q", "constructor c2(b: string): c2 (+1 overload)");
goTo.marker('59');
verify.currentSignatureHelpDocCommentIs("");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('59q');
verify.quickInfoIs("constructor c3(a: number): c3 (+1 overload)", "");
verify.quickInfoAt("59q", "constructor c3(a: number): c3 (+1 overload)");
goTo.marker('60');
verify.currentSignatureHelpDocCommentIs("c3 2");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('60q');
verify.quickInfoIs("constructor c3(b: string): c3 (+1 overload)", "c3 2");
verify.quickInfoAt("60q", "constructor c3(b: string): c3 (+1 overload)", "c3 2");
goTo.marker('61');
verify.currentSignatureHelpDocCommentIs("c4 1");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('61q');
verify.quickInfoIs("constructor c4(a: number): c4 (+1 overload)", "c4 1");
verify.quickInfoAt("61q", "constructor c4(a: number): c4 (+1 overload)", "c4 1");
goTo.marker('62');
verify.currentSignatureHelpDocCommentIs("c4 2");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('62q');
verify.quickInfoIs("constructor c4(b: string): c4 (+1 overload)", "c4 2");
verify.quickInfoAt("62q", "constructor c4(b: string): c4 (+1 overload)", "c4 2");
goTo.marker('63');
verify.currentSignatureHelpDocCommentIs("c5 1");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('63q');
verify.quickInfoIs("constructor c5(a: number): c5 (+1 overload)", "c5 1");
verify.quickInfoAt("63q", "constructor c5(a: number): c5 (+1 overload)", "c5 1");
goTo.marker('64');
verify.currentSignatureHelpDocCommentIs("c5 2");
verify.currentParameterHelpArgumentDocCommentIs("");
goTo.marker('64q');
verify.quickInfoIs("constructor c5(b: string): c5 (+1 overload)", "c5 2");
verify.quickInfoAt("64q", "constructor c5(b: string): c5 (+1 overload)", "c5 2");
goTo.marker('65');
verify.completionListContains("c", "class c", "");
@@ -614,120 +559,47 @@ verify.completionListContains("c5_i_2", "var c5_i_2: c5", "");
verify.completionListContains('multiOverload', 'function multiOverload(a: number): string (+2 overloads)', 'This is multiOverload F1 1');
verify.completionListContains('ambientF1', 'function ambientF1(a: number): string (+2 overloads)', 'This is ambient F1 1');
goTo.marker('66');
verify.quickInfoIs("var c1_i_1: c1", "");
goTo.marker('67');
verify.quickInfoIs("var c2_i_2: c2", "");
goTo.marker('68');
verify.quickInfoIs("var c3_i_2: c3", "");
goTo.marker('69');
verify.quickInfoIs("var c4_i_1: c4", "");
goTo.marker('70');
verify.quickInfoIs("var c5_i_1: c5", "");
goTo.marker('71');
verify.quickInfoIs("function multiOverload(a: number): string (+2 overloads)", "This is multiOverload F1 1");
goTo.marker('72');
verify.quickInfoIs("function multiOverload(b: string): string (+2 overloads)", "This is multiOverload F1 2");
goTo.marker('73');
verify.quickInfoIs("function multiOverload(c: boolean): string (+2 overloads)", "This is multiOverload F1 3");
goTo.marker('74');
verify.quickInfoIs("function ambientF1(a: number): string (+2 overloads)", "This is ambient F1 1");
goTo.marker('75');
verify.quickInfoIs("function ambientF1(b: string): string (+2 overloads)", "This is ambient F1 2");
goTo.marker('76');
verify.quickInfoIs("function ambientF1(c: boolean): boolean (+2 overloads)", "This is ambient F1 3");
goTo.marker('77');
verify.quickInfoIs("(parameter) aa: i3", "");
goTo.marker('78');
verify.quickInfoIs("constructor c1(a: number): c1 (+1 overload)", "");
goTo.marker('79');
verify.quickInfoIs("constructor c1(b: string): c1 (+1 overload)", "");
goTo.marker('80');
verify.quickInfoIs("constructor c1(a: number): c1 (+1 overload)", "");
goTo.marker('81');
verify.quickInfoIs("constructor c2(a: number): c2 (+1 overload)", "c2 1");
goTo.marker('82');
verify.quickInfoIs("constructor c2(b: string): c2 (+1 overload)", "");
goTo.marker('83');
verify.quickInfoIs("constructor c2(a: number): c2 (+1 overload)", "c2 1");
goTo.marker('84');
verify.quickInfoIs("constructor c3(a: number): c3 (+1 overload)", "");
goTo.marker('85');
verify.quickInfoIs("constructor c3(b: string): c3 (+1 overload)", "c3 2");
goTo.marker('86');
verify.quickInfoIs("constructor c3(a: number): c3 (+1 overload)", "");
goTo.marker('87');
verify.quickInfoIs("constructor c4(a: number): c4 (+1 overload)", "c4 1");
goTo.marker('88');
verify.quickInfoIs("constructor c4(b: string): c4 (+1 overload)", "c4 2");
goTo.marker('89');
verify.quickInfoIs("constructor c4(a: number): c4 (+1 overload)", "c4 1");
goTo.marker('90');
verify.quickInfoIs("constructor c5(a: number): c5 (+1 overload)", "c5 1");
goTo.marker('91');
verify.quickInfoIs("constructor c5(b: string): c5 (+1 overload)", "c5 2");
goTo.marker('92');
verify.quickInfoIs("constructor c5(a: number): c5 (+1 overload)", "c5 1");
goTo.marker('93');
verify.quickInfoIs("(method) c.prop1(a: number): number (+1 overload)", "");
goTo.marker('94');
verify.quickInfoIs("(method) c.prop1(b: string): number (+1 overload)", "");
goTo.marker('95');
verify.quickInfoIs("(method) c.prop1(a: number): number (+1 overload)", "");
goTo.marker('96');
verify.quickInfoIs("(method) c.prop2(a: number): number (+1 overload)", "prop2 1");
goTo.marker('97');
verify.quickInfoIs("(method) c.prop2(b: string): number (+1 overload)", "");
goTo.marker('98');
verify.quickInfoIs("(method) c.prop2(a: number): number (+1 overload)", "prop2 1");
goTo.marker('99');
verify.quickInfoIs("(method) c.prop3(a: number): number (+1 overload)", "");
goTo.marker('100');
verify.quickInfoIs("(method) c.prop3(b: string): number (+1 overload)", "prop3 2");
goTo.marker('101');
verify.quickInfoIs("(method) c.prop3(a: number): number (+1 overload)", "");
goTo.marker('102');
verify.quickInfoIs("(method) c.prop4(a: number): number (+1 overload)", "prop4 1");
goTo.marker('103');
verify.quickInfoIs("(method) c.prop4(b: string): number (+1 overload)", "prop4 2");
goTo.marker('104');
verify.quickInfoIs("(method) c.prop4(a: number): number (+1 overload)", "prop4 1");
goTo.marker('105');
verify.quickInfoIs("(method) c.prop5(a: number): number (+1 overload)", "prop5 1");
goTo.marker('106');
verify.quickInfoIs("(method) c.prop5(b: string): number (+1 overload)", "prop5 2");
goTo.marker('107');
verify.quickInfoIs("(method) c.prop5(a: number): number (+1 overload)", "prop5 1");
verify.quickInfos({
66: "var c1_i_1: c1",
67: "var c2_i_2: c2",
68: "var c3_i_2: c3",
69: "var c4_i_1: c4",
70: "var c5_i_1: c5",
71: ["function multiOverload(a: number): string (+2 overloads)", "This is multiOverload F1 1"],
72: ["function multiOverload(b: string): string (+2 overloads)", "This is multiOverload F1 2"],
73: ["function multiOverload(c: boolean): string (+2 overloads)", "This is multiOverload F1 3"],
74: ["function ambientF1(a: number): string (+2 overloads)", "This is ambient F1 1"],
75: ["function ambientF1(b: string): string (+2 overloads)", "This is ambient F1 2"],
76: ["function ambientF1(c: boolean): boolean (+2 overloads)", "This is ambient F1 3"],
77: "(parameter) aa: i3",
78: "constructor c1(a: number): c1 (+1 overload)",
79: "constructor c1(b: string): c1 (+1 overload)",
80: "constructor c1(a: number): c1 (+1 overload)",
81: ["constructor c2(a: number): c2 (+1 overload)", "c2 1"],
82: "constructor c2(b: string): c2 (+1 overload)",
83: ["constructor c2(a: number): c2 (+1 overload)", "c2 1"],
84: "constructor c3(a: number): c3 (+1 overload)",
85: ["constructor c3(b: string): c3 (+1 overload)", "c3 2"],
86: "constructor c3(a: number): c3 (+1 overload)",
87: ["constructor c4(a: number): c4 (+1 overload)", "c4 1"],
88: ["constructor c4(b: string): c4 (+1 overload)", "c4 2"],
89: ["constructor c4(a: number): c4 (+1 overload)", "c4 1"],
90: ["constructor c5(a: number): c5 (+1 overload)", "c5 1"],
91: ["constructor c5(b: string): c5 (+1 overload)", "c5 2"],
92: ["constructor c5(a: number): c5 (+1 overload)", "c5 1"],
93: "(method) c.prop1(a: number): number (+1 overload)",
94: "(method) c.prop1(b: string): number (+1 overload)",
95: "(method) c.prop1(a: number): number (+1 overload)",
96: ["(method) c.prop2(a: number): number (+1 overload)", "prop2 1"],
97: "(method) c.prop2(b: string): number (+1 overload)",
98: ["(method) c.prop2(a: number): number (+1 overload)", "prop2 1"],
99: "(method) c.prop3(a: number): number (+1 overload)",
100: ["(method) c.prop3(b: string): number (+1 overload)", "prop3 2"],
101: "(method) c.prop3(a: number): number (+1 overload)",
102: ["(method) c.prop4(a: number): number (+1 overload)", "prop4 1"],
103: ["(method) c.prop4(b: string): number (+1 overload)", "prop4 2"],
104: ["(method) c.prop4(a: number): number (+1 overload)", "prop4 1"],
105: ["(method) c.prop5(a: number): number (+1 overload)", "prop5 1"],
106: ["(method) c.prop5(b: string): number (+1 overload)", "prop5 2"],
107: ["(method) c.prop5(a: number): number (+1 overload)", "prop5 1"]
});
+1 -2
View File
@@ -3,5 +3,4 @@
////var a: Array<string> | Array<number>;
////a./*1*/length
goTo.marker('1');
verify.quickInfoIs("(property) length: number", "Gets or sets the length of the array. This is a number one higher than the highest element defined in an array.");
verify.quickInfoAt("1", "(property) length: number", "Gets or sets the length of the array. This is a number one higher than the highest element defined in an array.");
+14 -23
View File
@@ -41,8 +41,7 @@
////}
////var x = fo/*15*/o2;
goTo.marker('1');
verify.quickInfoIs("var myVariable: number", "This is my variable");
verify.quickInfoAt("1", "var myVariable: number", "This is my variable");
goTo.marker('2');
verify.completionListContains("myVariable", "var myVariable: number", "This is my variable");
@@ -57,13 +56,11 @@ verify.completionListContains("fooVar", "var fooVar: () => void", "fooVar commen
goTo.marker('5');
verify.currentSignatureHelpDocCommentIs("foos comment");
goTo.marker('5q');
verify.quickInfoIs("function foo(): void", "foos comment");
verify.quickInfoAt("5q", "function foo(): void", "foos comment");
goTo.marker('6');
verify.currentSignatureHelpDocCommentIs("");
goTo.marker('6q');
verify.quickInfoIs("var fooVar: () => void", "");
verify.quickInfoAt("6q", "var fooVar: () => void");
goTo.marker('7');
verify.completionListContains("foo", "function foo(): void", "foos comment");
@@ -71,15 +68,14 @@ verify.completionListContains("fooVar", "var fooVar: () => void", "fooVar commen
goTo.marker('8');
verify.currentSignatureHelpDocCommentIs("foos comment");
goTo.marker('8q');
verify.quickInfoIs("function foo(): void", "foos comment");
verify.quickInfoAt("8q", "function foo(): void", "foos comment");
goTo.marker('9');
verify.currentSignatureHelpDocCommentIs("");
goTo.marker('9q');
verify.quickInfoIs("var fooVar: () => void", "");
goTo.marker('9aq');
verify.quickInfoIs("var fooVar: () => void", "fooVar comment");
verify.quickInfos({
"9q": "var fooVar: () => void",
"9aq": ["var fooVar: () => void", "fooVar comment"]
});
goTo.marker('10');
verify.completionListContains("i", "var i: c", "instance comment");
@@ -87,14 +83,9 @@ verify.completionListContains("i", "var i: c", "instance comment");
goTo.marker('11');
verify.completionListContains("i1_i", "var i1_i: i1", "interface instance comments");
goTo.marker('12');
verify.quickInfoIs("var fooVar: () => void", "fooVar comment");
goTo.marker('13');
verify.quickInfoIs("var fooVar: () => void", "fooVar comment");
goTo.marker('14');
verify.quickInfoIs("function foo(): void", "foos comment");
goTo.marker('15');
verify.quickInfoIs("function foo2(a: number): void (+1 overload)", "");
verify.quickInfos({
12: ["var fooVar: () => void", "fooVar comment"],
13: ["var fooVar: () => void", "fooVar comment"],
14: ["function foo(): void", "foos comment"],
15: "function foo2(a: number): void (+1 overload)"
});
@@ -4,4 +4,4 @@
/////**/
goTo.marker();
verify.completionListContains("c", "const c: string", /*documentation*/ undefined, "const");
verify.completionListContains("c", "const c: \"s\"", /*documentation*/ undefined, "const");
@@ -4,5 +4,7 @@
////y.map/**/(
goTo.marker();
verify.quickInfoIs("(property) map: (<U>(callbackfn: (value: string, index: number, array: string[]) => U, thisArg?: any) => U[]) | (<U>(callbackfn: (value: number, index: number, array: number[]) => U, thisArg?: any) => U[])");
verify.quickInfoIs(
"(property) map: (<U>(callbackfn: (value: string, index: number, array: string[]) => U, thisArg?: any) => U[]) | (<U>(callbackfn: (value: number, index: number, array: number[]) => U, thisArg?: any) => U[])",
"Calls a defined callback function on each element of an array, and returns an array that contains the results.");
verify.completionListContains('map', "(property) map: (<U>(callbackfn: (value: string, index: number, array: string[]) => U, thisArg?: any) => U[]) | (<U>(callbackfn: (value: number, index: number, array: number[]) => U, thisArg?: any) => U[])");
@@ -23,8 +23,7 @@ verify.memberListContains("foo");
goTo.marker("insideFunctionExpression");
verify.memberListContains("foo");
goTo.marker("referenceInsideFunctionExpression");
verify.quickInfoIs("(local function) foo(): number");
goTo.marker("referenceInGlobalScope");
verify.quickInfoIs("function foo(a: number): string");
verify.quickInfos({
referenceInsideFunctionExpression: "(local function) foo(): number",
referenceInGlobalScope: "function foo(a: number): string"
});
@@ -7,8 +7,7 @@
////}
/////*2*/e.a;
goTo.marker('1');
verify.quickInfoIs("const enum e");
verify.quickInfoAt("1", "const enum e");
goTo.marker('2');
verify.completionListContains("e", "const enum e");
@@ -9,29 +9,27 @@
//// var z = /*6*/a;
//// /*7*/
////}
goTo.marker('1');
verify.quickInfoIs("const a: number");
verify.quickInfoAt("1", "const a: 10");
goTo.marker('2');
verify.completionListContains("a", "const a: number");
verify.quickInfoIs("const a: number");
verify.completionListContains("a", "const a: 10");
verify.quickInfoIs("const a: 10");
goTo.marker('3');
verify.completionListContains("a", "const a: number");
verify.completionListContains("a", "const a: 10");
goTo.marker('4');
verify.quickInfoIs("const b: number");
verify.quickInfoAt("4", "const b: 20");
goTo.marker('5');
verify.completionListContains("a", "const a: number");
verify.completionListContains("b", "const b: number");
verify.quickInfoIs("const b: number");
verify.completionListContains("a", "const a: 10");
verify.completionListContains("b", "const b: 20");
verify.quickInfoIs("const b: 20");
goTo.marker('6');
verify.completionListContains("a", "const a: number");
verify.completionListContains("b", "const b: number");
verify.quickInfoIs("const a: number");
verify.completionListContains("a", "const a: 10");
verify.completionListContains("b", "const b: 20");
verify.quickInfoIs("const a: 10");
goTo.marker('7');
verify.completionListContains("a", "const a: number");
verify.completionListContains("b", "const b: number");
verify.completionListContains("a", "const a: 10");
verify.completionListContains("b", "const b: 20");
@@ -6,11 +6,8 @@
////var x/*2*/2 = new SS();
////var x/*3*/3 = new SS;
goTo.marker('1');
verify.quickInfoIs('var x1: SS<number>');
goTo.marker('2');
verify.quickInfoIs('var x2: SS<{}>');
goTo.marker('3');
verify.quickInfoIs('var x3: SS<{}>');
verify.quickInfos({
1: "var x1: SS<number>",
2: "var x2: SS<{}>",
3: "var x3: SS<{}>"
});
+112 -220
View File
@@ -194,223 +194,115 @@
//// }
////};
goTo.marker('1');
verify.quickInfoIs("(property) C1T5.foo: (i: number, s: string) => number");
goTo.marker('2');
verify.quickInfoIs("(parameter) i: number");
goTo.marker('3');
verify.quickInfoIs("(parameter) i: number");
goTo.marker('4');
verify.quickInfoIs("var C2T5.foo: (i: number, s: string) => number");
goTo.marker('5');
verify.quickInfoIs("(parameter) i: number");
goTo.marker('6');
verify.quickInfoIs("(parameter) i: number");
goTo.marker('7');
verify.quickInfoIs("var c3t1: (s: string) => string");
goTo.marker('8');
verify.quickInfoIs("(parameter) s: string");
goTo.marker('9');
verify.quickInfoIs("(parameter) s: string");
goTo.marker('10');
verify.quickInfoIs("var c3t2: IFoo");
goTo.marker('11');
verify.quickInfoIs("var c3t3: number[]");
goTo.marker('12');
verify.quickInfoIs("var c3t4: () => IFoo");
goTo.marker('13');
verify.quickInfoIs("var c3t5: (n: number) => IFoo");
goTo.marker('14');
verify.quickInfoIs("(parameter) n: number");
goTo.marker('15');
verify.quickInfoIs("var c3t6: (n: number, s: string) => IFoo");
goTo.marker('16');
verify.quickInfoIs("(parameter) n: number");
goTo.marker('17');
verify.quickInfoIs("(parameter) s: string");
goTo.marker('18');
verify.quickInfoIs("var c3t7: {\n (n: number): number;\n (s1: string): number;\n}");
goTo.marker('20');
verify.quickInfoIs("var c3t8: (n: number, s: string) => number");
goTo.marker('21');
verify.quickInfoIs("(parameter) n: number");
goTo.marker('22');
verify.quickInfoIs("var c3t9: number[][]");
goTo.marker('23');
verify.quickInfoIs("var c3t10: IFoo[]");
goTo.marker('24');
verify.quickInfoIs("var c3t11: ((n: number, s: string) => string)[]");
goTo.marker('25');
verify.quickInfoIs("(parameter) n: number");
goTo.marker('26');
verify.quickInfoIs("(parameter) s: string");
goTo.marker('27');
verify.quickInfoIs("var c3t12: IBar");
goTo.marker('28');
verify.quickInfoIs("(property) foo: IFoo");
goTo.marker('29');
verify.quickInfoIs("var c3t13: IFoo");
goTo.marker('30');
verify.quickInfoIs("(property) f: (i: number, s: string) => string");
goTo.marker('31');
verify.quickInfoIs("(parameter) i: number");
goTo.marker('32');
verify.quickInfoIs("(parameter) s: string");
goTo.marker('33');
verify.quickInfoIs("var c3t14: IFoo");
goTo.marker('34');
verify.quickInfoIs("(property) a: undefined[]");
goTo.marker('35');
verify.quickInfoIs("(property) C4T5.foo: (i: number, s: string) => string");
goTo.marker('36');
verify.quickInfoIs("(parameter) i: number");
goTo.marker('37');
verify.quickInfoIs("(parameter) s: string");
goTo.marker('38');
verify.quickInfoIs("var C5T5.foo: (i: number, s: string) => string");
goTo.marker('39');
verify.quickInfoIs("(parameter) i: number");
goTo.marker('40');
verify.quickInfoIs("(parameter) s: string");
goTo.marker('41');
verify.quickInfoIs("var c6t5: (n: number) => IFoo");
goTo.marker('42');
verify.quickInfoIs("(parameter) n: number");
goTo.marker('43');
verify.quickInfoIs("var c7t2: IFoo[]");
goTo.marker('44');
verify.quickInfoIs("var c7t2: IFoo[]");
goTo.marker('45');
verify.quickInfoIs("(property) t1: (s: string) => string");
goTo.marker('46');
verify.quickInfoIs("(parameter) s: string");
goTo.marker('47');
verify.quickInfoIs("(property) t2: IFoo");
goTo.marker('48');
verify.quickInfoIs("(property) t3: number[]");
goTo.marker('49');
verify.quickInfoIs("(property) t4: () => IFoo");
goTo.marker('50');
verify.quickInfoIs("(property) t5: (n: number) => IFoo");
goTo.marker('51');
verify.quickInfoIs("(parameter) n: number");
goTo.marker('52');
verify.quickInfoIs("(property) t6: (n: number, s: string) => IFoo");
goTo.marker('53');
verify.quickInfoIs("(parameter) n: number");
goTo.marker('54');
verify.quickInfoIs("(parameter) s: string");
goTo.marker('55');
verify.quickInfoIs("(property) t7: (n: number, s: string) => number");
goTo.marker('56');
verify.quickInfoIs("(property) t8: (n: number, s: string) => number");
goTo.marker('57');
verify.quickInfoIs("(parameter) n: number");
goTo.marker('58');
verify.quickInfoIs("(property) t9: number[][]");
goTo.marker('59');
verify.quickInfoIs("(property) t10: IFoo[]");
goTo.marker('60');
verify.quickInfoIs("(property) t11: ((n: number, s: string) => string)[]");
goTo.marker('61');
verify.quickInfoIs("(parameter) n: number");
goTo.marker('62');
verify.quickInfoIs("(parameter) s: string");
goTo.marker('63');
verify.quickInfoIs("(property) t12: IBar");
goTo.marker('64');
verify.quickInfoIs("(property) foo: IFoo");
goTo.marker('65');
verify.quickInfoIs("(property) t13: IFoo");
goTo.marker('66');
verify.quickInfoIs("(property) f: (i: number, s: string) => string");
goTo.marker('67');
verify.quickInfoIs("(parameter) i: number");
goTo.marker('68');
verify.quickInfoIs("(parameter) s: string");
goTo.marker('69');
verify.quickInfoIs("(property) t14: IFoo");
goTo.marker('70');
verify.quickInfoIs("(property) a: undefined[]");
goTo.marker('71');
verify.quickInfoIs("(parameter) n: number");
goTo.marker('72');
verify.quickInfoIs("var c10t5: () => (n: number) => IFoo");
goTo.marker('73');
verify.quickInfoIs("(parameter) n: number");
goTo.marker('74');
verify.quickInfoIs("(parameter) n: number");
goTo.marker('75');
verify.quickInfoIs("var c12t1: (s: string) => string");
goTo.marker('76');
verify.quickInfoIs("(parameter) s: string");
goTo.marker('77');
verify.quickInfoIs("var c12t2: IFoo");
goTo.marker('78');
verify.quickInfoIs("var c12t3: number[]");
goTo.marker('79');
verify.quickInfoIs("var c12t4: () => IFoo");
goTo.marker('80');
verify.quickInfoIs("var c12t5: (n: number) => IFoo");
goTo.marker('81');
verify.quickInfoIs("(parameter) n: number");
goTo.marker('82');
verify.quickInfoIs("var c12t6: (n: number, s: string) => IFoo");
goTo.marker('83');
verify.quickInfoIs("(parameter) n: number");
goTo.marker('84');
verify.quickInfoIs("(parameter) s: string");
goTo.marker('85');
verify.quickInfoIs("var c12t7: (n: number, s: string) => number");
goTo.marker('86');
verify.quickInfoIs("var c12t8: (n: number, s: string) => number");
goTo.marker('87');
verify.quickInfoIs("(parameter) n: number");
goTo.marker('88');
verify.quickInfoIs("var c12t9: number[][]");
goTo.marker('89');
verify.quickInfoIs("var c12t10: IFoo[]");
goTo.marker('90');
verify.quickInfoIs("var c12t11: ((n: number, s: string) => string)[]");
goTo.marker('91');
verify.quickInfoIs("(parameter) n: number");
goTo.marker('92');
verify.quickInfoIs("(parameter) s: string");
goTo.marker('93');
verify.quickInfoIs("var c12t12: IBar");
goTo.marker('94');
verify.quickInfoIs("(property) foo: IFoo");
goTo.marker('95');
verify.quickInfoIs("var c12t13: IFoo");
goTo.marker('96');
verify.quickInfoIs("(property) f: (i: number, s: string) => string");
goTo.marker('97');
verify.quickInfoIs("(parameter) i: number");
goTo.marker('98');
verify.quickInfoIs("(parameter) s: string");
goTo.marker('99');
verify.quickInfoIs("var c12t14: IFoo");
goTo.marker('100');
verify.quickInfoIs("(property) a: undefined[]");
goTo.marker('101');
verify.quickInfoIs("function EF1(a: number, b: number): number");
goTo.marker('102');
verify.quickInfoIs("(parameter) a: any");
goTo.marker('103');
verify.quickInfoIs("(parameter) b: any");
goTo.marker('110');
verify.quickInfoIs("(property) Point.origin: Point");
goTo.marker('111');
verify.quickInfoIs("constructor Point(x: number, y: number): Point");
goTo.marker('112');
verify.quickInfoIs("(method) Point.add(dx: number, dy: number): Point");
goTo.marker('113');
verify.quickInfoIs("(parameter) dx: number");
goTo.marker('114');
verify.quickInfoIs("(parameter) dy: number");
goTo.marker('115');
verify.quickInfoIs("(property) add: (dx: number, dy: number) => Point");
goTo.marker('116');
verify.quickInfoIs("(parameter) dx: number");
goTo.marker('117');
verify.quickInfoIs("(parameter) dy: number");
verify.quickInfos({
1: "(property) C1T5.foo: (i: number, s: string) => number",
2: "(parameter) i: number",
3: "(parameter) i: number",
4: "var C2T5.foo: (i: number, s: string) => number",
5: "(parameter) i: number",
6: "(parameter) i: number",
7: "var c3t1: (s: string) => string",
8: "(parameter) s: string",
9: "(parameter) s: string",
10: "var c3t2: IFoo",
11: "var c3t3: number[]",
12: "var c3t4: () => IFoo",
13: "var c3t5: (n: number) => IFoo",
14: "(parameter) n: number",
15: "var c3t6: (n: number, s: string) => IFoo",
16: "(parameter) n: number",
17: "(parameter) s: string",
18: "var c3t7: {\n (n: number): number;\n (s1: string): number;\n}",
20: "var c3t8: (n: number, s: string) => number",
21: "(parameter) n: number",
22: "var c3t9: number[][]",
23: "var c3t10: IFoo[]",
24: "var c3t11: ((n: number, s: string) => string)[]",
25: "(parameter) n: number",
26: "(parameter) s: string",
27: "var c3t12: IBar",
28: "(property) foo: IFoo",
29: "var c3t13: IFoo",
30: "(property) f: (i: number, s: string) => string",
31: "(parameter) i: number",
32: "(parameter) s: string",
33: "var c3t14: IFoo",
34: "(property) a: undefined[]",
35: "(property) C4T5.foo: (i: number, s: string) => string",
36: "(parameter) i: number",
37: "(parameter) s: string",
38: "var C5T5.foo: (i: number, s: string) => string",
39: "(parameter) i: number",
40: "(parameter) s: string",
41: "var c6t5: (n: number) => IFoo",
42: "(parameter) n: number",
43: "var c7t2: IFoo[]",
44: "var c7t2: IFoo[]",
45: "(property) t1: (s: string) => string",
46: "(parameter) s: string",
47: "(property) t2: IFoo",
48: "(property) t3: number[]",
49: "(property) t4: () => IFoo",
50: "(property) t5: (n: number) => IFoo",
51: "(parameter) n: number",
52: "(property) t6: (n: number, s: string) => IFoo",
53: "(parameter) n: number",
54: "(parameter) s: string",
55: "(property) t7: (n: number, s: string) => number",
56: "(property) t8: (n: number, s: string) => number",
57: "(parameter) n: number",
58: "(property) t9: number[][]",
59: "(property) t10: IFoo[]",
60: "(property) t11: ((n: number, s: string) => string)[]",
61: "(parameter) n: number",
62: "(parameter) s: string",
63: "(property) t12: IBar",
64: "(property) foo: IFoo",
65: "(property) t13: IFoo",
66: "(property) f: (i: number, s: string) => string",
67: "(parameter) i: number",
68: "(parameter) s: string",
69: "(property) t14: IFoo",
70: "(property) a: undefined[]",
71: "(parameter) n: number",
72: "var c10t5: () => (n: number) => IFoo",
73: "(parameter) n: number",
74: "(parameter) n: number",
75: "var c12t1: (s: string) => string",
76: "(parameter) s: string",
77: "var c12t2: IFoo",
78: "var c12t3: number[]",
79: "var c12t4: () => IFoo",
80: "var c12t5: (n: number) => IFoo",
81: "(parameter) n: number",
82: "var c12t6: (n: number, s: string) => IFoo",
83: "(parameter) n: number",
84: "(parameter) s: string",
85: "var c12t7: (n: number, s: string) => number",
86: "var c12t8: (n: number, s: string) => number",
87: "(parameter) n: number",
88: "var c12t9: number[][]",
89: "var c12t10: IFoo[]",
90: "var c12t11: ((n: number, s: string) => string)[]",
91: "(parameter) n: number",
92: "(parameter) s: string",
93: "var c12t12: IBar",
94: "(property) foo: IFoo",
95: "var c12t13: IFoo",
96: "(property) f: (i: number, s: string) => string",
97: "(parameter) i: number",
98: "(parameter) s: string",
99: "var c12t14: IFoo",
100: "(property) a: undefined[]",
101: "function EF1(a: number, b: number): number",
102: "(parameter) a: any",
103: "(parameter) b: any",
110: "(property) Point.origin: Point",
111: "constructor Point(x: number, y: number): Point",
112: "(method) Point.add(dx: number, dy: number): Point",
113: "(parameter) dx: number",
114: "(parameter) dy: number",
115: "(property) add: (dx: number, dy: number) => Point",
116: "(parameter) dx: number",
117: "(parameter) dy: number"
});
@@ -2,6 +2,4 @@
////var f3 = <(x: string) => string> function (/**/x) { return x.toLowerCase(); };
goTo.marker();
verify.quickInfoIs('(parameter) x: string');
verify.quickInfoAt("", "(parameter) x: string");
@@ -10,11 +10,8 @@
////var c = new C();
////c.obj = <S>(/*3*/x) => x;
goTo.marker('1');
verify.quickInfoIs('(parameter) x: any');
goTo.marker('2');
verify.quickInfoIs('(parameter) x: any');
goTo.marker('3');
verify.quickInfoIs('(parameter) x: any');
verify.quickInfos({
1: "(parameter) x: any",
2: "(parameter) x: any",
3: "(parameter) x: any"
});
@@ -30,26 +30,17 @@
// the above code should have a couple errors that will need to be updated with appropriate new (non-error) code and quick info checks
verify.not.errorExistsBetweenMarkers('1', '6');
goTo.marker('1');
verify.quickInfoIs('var x: any[]');
goTo.marker('2');
verify.quickInfoIs('var r: C');
goTo.marker('3');
verify.quickInfoIs('var r3: C');
goTo.marker('4');
verify.quickInfoIs('var r4: C');
goTo.marker('5');
verify.quickInfoIs('var x5: {\n\
verify.quickInfos({
1: "var x: any[]",
2: "var r: C",
3: "var r3: C",
4: "var r4: C",
5: "var x5: {\n\
name: string;\n\
age: number;\n\
}[]');
goTo.marker('6');
verify.quickInfoIs('var r5: {\n\
}[]",
6: "var r5: {\n\
name: string;\n\
age: number;\n\
}');
}"
});
@@ -6,6 +6,5 @@
////// x should not be contextually typed
////var f24 = (/**/x) => { return 1 };
goTo.marker();
verify.quickInfoIs('(parameter) x: any');
verify.quickInfoAt("", "(parameter) x: any");
@@ -7,6 +7,5 @@
////// x should not be contextually typed so this should be an error
////f6(/**/x => x<number>())
goTo.marker();
verify.quickInfoIs('(parameter) x: any');
verify.quickInfoAt("", "(parameter) x: any");
verify.numberOfErrorsInCurrentFile(1);
@@ -3,11 +3,8 @@
////interface A { }
////var f44: (x: A) => (y: A) => A = /*1*/x => /*2*/y => /*3*/x;
goTo.marker('1');
verify.quickInfoIs('(parameter) x: A');
goTo.marker('2');
verify.quickInfoIs('(parameter) y: A');
goTo.marker('3');
verify.quickInfoIs('(parameter) x: A');
verify.quickInfos({
1: "(parameter) x: A",
2: "(parameter) y: A",
3: "(parameter) x: A"
});
@@ -9,14 +9,9 @@
////var max2: Comparer = (x/*1*/x, y/*2*/y) => { return x/*3*/x.compareTo(y/*4*/y) };
goTo.marker('1');
verify.quickInfoIs('(parameter) xx: any', null);
goTo.marker('2');
verify.quickInfoIs('(parameter) yy: any', null);
goTo.marker('3');
verify.quickInfoIs('(parameter) xx: any', null);
goTo.marker('4');
verify.quickInfoIs('(parameter) yy: any', null);
verify.quickInfos({
1: "(parameter) xx: any",
2: "(parameter) yy: any",
3: "(parameter) xx: any",
4: "(parameter) yy: any"
});
@@ -26,7 +26,7 @@
//// }
////}
goTo.marker("param1");
verify.quickInfoIs("(parameter) arg: A")
goTo.marker("param2");
verify.quickInfoIs("(parameter) arg: B")
verify.quickInfos({
param1: "(parameter) arg: A",
param2: "(parameter) arg: B"
});
@@ -12,7 +12,7 @@
//// }
////}
goTo.marker('1');
verify.quickInfoIs('(parameter) xy: string');
goTo.marker('2');
verify.quickInfoIs('(parameter) options: FooOptions');
verify.quickInfos({
1: "(parameter) xy: string",
2: "(parameter) options: FooOptions"
});
@@ -24,6 +24,5 @@
////var r2 = a._itemsByKey['x'];
////var result2 = r2.x;
goTo.marker('');
verify.quickInfoIs('var r: CollectionItem');
verify.numberOfErrorsInCurrentFile(0);
verify.quickInfoAt("", "var r: CollectionItem");
verify.numberOfErrorsInCurrentFile(0);

Some files were not shown because too many files have changed in this diff Show More