TypeScript/tests/cases/fourslash/semanticModernClassificationCallableVariables2.ts
Orta Therox db5368dc1d
Import the semantic highlighter from typescript-vscode-sh-plugin (#39119)
* Initial import of the vscode semantic highlight code

* Adds the ability to test modern semantic classification via strings instead of numbers

* Adds existing tests

* Port over the semantic classification tests

* Update baselines

* Update src/harness/fourslashImpl.ts

Co-authored-by: Nathan Shively-Sanders <293473+sandersn@users.noreply.github.com>

* Handle feedback from #39119

* Consistent formatting in the 2020 classifier

* Update baselines

* Apply suggestions from code review

Co-authored-by: Daniel Rosenwasser <DanielRosenwasser@users.noreply.github.com>

* Update src/harness/fourslashImpl.ts

Co-authored-by: Daniel Rosenwasser <DanielRosenwasser@users.noreply.github.com>

* Reafactor after comments

* Use 2020 everywhere

* Handle feedback

* WIP - don't provide a breaking change

* Fix all build errors

* Update baselines

* Update src/services/classifier2020.ts

Co-authored-by: Sheetal Nandi <shkamat@microsoft.com>

* Addresses Ron's feedback

Co-authored-by: Nathan Shively-Sanders <293473+sandersn@users.noreply.github.com>
Co-authored-by: Daniel Rosenwasser <DanielRosenwasser@users.noreply.github.com>
Co-authored-by: Sheetal Nandi <shkamat@microsoft.com>
2020-09-11 15:10:55 -04:00

25 lines
1.1 KiB
TypeScript

//// import "node";
//// var fs = require("fs")
//// require.resolve('react');
//// require.resolve.paths;
//// interface LanguageMode { getFoldingRanges?: (d: string) => number[]; };
//// function (mode: LanguageMode | undefined) { if (mode && mode.getFoldingRanges) { return mode.getFoldingRanges('a'); }};
//// function b(a: () => void) { a(); };
const c2 = classification("2020");
verify.semanticClassificationsAre("2020",
c2.semanticToken("variable.declaration", "fs"),
c2.semanticToken("interface.declaration", "LanguageMode"),
c2.semanticToken("member.declaration", "getFoldingRanges"),
c2.semanticToken("parameter.declaration", "d"),
c2.semanticToken("parameter.declaration", "mode"),
c2.semanticToken("interface", "LanguageMode"),
c2.semanticToken("parameter", "mode"),
c2.semanticToken("parameter", "mode"),
c2.semanticToken("member", "getFoldingRanges"),
c2.semanticToken("parameter", "mode"),
c2.semanticToken("member", "getFoldingRanges"),
c2.semanticToken("function.declaration", "b"),
c2.semanticToken("function.declaration", "a"),
c2.semanticToken("function", "a"),
);;