diff --git a/src/harness/fourslash.ts b/src/harness/fourslash.ts index 3659d8844a9..26e21f07c15 100644 --- a/src/harness/fourslash.ts +++ b/src/harness/fourslash.ts @@ -1515,6 +1515,14 @@ module FourSlash { } } + public verifyDefinitionsCount(negative: boolean, expectedCount: number) { + var assertFn = negative ? assert.notEqual : assert.equal; + + var definitions = this.languageService.getDefinitionAtPosition(this.activeFile.fileName, this.currentCaretPosition); + + assertFn(definitions.length, expectedCount, this.messageAtLastKnownMarker("Definitions Count")); + } + public verifyDefinitionsName(negative: boolean, expectedName: string, expectedContainerName: string) { this.taoInvalidReason = 'verifyDefinititionsInfo NYI'; diff --git a/tests/cases/fourslash/fourslash.ts b/tests/cases/fourslash/fourslash.ts index f5a582868e5..fcf7ae7e3b1 100644 --- a/tests/cases/fourslash/fourslash.ts +++ b/tests/cases/fourslash/fourslash.ts @@ -217,6 +217,10 @@ module FourSlashInterface { FourSlash.currentTestState.verifyQuickInfoExists(this.negative); } + public definitionCountIs(expectedCount: number) { + FourSlash.currentTestState.verifyDefinitionsCount(this.negative, expectedCount); + } + public definitionLocationExists() { FourSlash.currentTestState.verifyDefinitionLocationExists(this.negative); }