2019-10-17 21:42:27 -04:00
|
|
|
/**
|
|
|
|
* @license
|
2020-05-19 15:08:49 -04:00
|
|
|
* Copyright Google LLC All Rights Reserved.
|
2019-10-17 21:42:27 -04:00
|
|
|
*
|
|
|
|
* Use of this source code is governed by an MIT-style license that can be
|
|
|
|
* found in the LICENSE file at https://angular.io/license
|
|
|
|
*/
|
|
|
|
|
|
|
|
import * as ts from 'typescript/lib/tsserverlibrary';
|
|
|
|
|
2020-04-03 23:57:39 -04:00
|
|
|
import {createGlobalSymbolTable, EMPTY_SYMBOL_TABLE} from '../src/global_symbols';
|
2019-11-13 17:26:58 -05:00
|
|
|
import {getSymbolQuery} from '../src/typescript_symbols';
|
2019-10-17 21:42:27 -04:00
|
|
|
|
|
|
|
import {MockTypescriptHost} from './test_utils';
|
|
|
|
|
|
|
|
describe('GlobalSymbolTable', () => {
|
|
|
|
const mockHost = new MockTypescriptHost([]);
|
|
|
|
const tsLS = ts.createLanguageService(mockHost);
|
|
|
|
|
|
|
|
it(`contains $any()`, () => {
|
2020-04-03 23:57:39 -04:00
|
|
|
const program = tsLS.getProgram()!;
|
2019-10-17 21:42:27 -04:00
|
|
|
const typeChecker = program.getTypeChecker();
|
|
|
|
const source = ts.createSourceFile('foo.ts', '', ts.ScriptTarget.ES2015);
|
|
|
|
const query = getSymbolQuery(program, typeChecker, source, () => EMPTY_SYMBOL_TABLE);
|
|
|
|
const table = createGlobalSymbolTable(query);
|
|
|
|
expect(table.has('$any')).toBe(true);
|
|
|
|
});
|
|
|
|
});
|