2017-01-26 15:42:48 -05:00
|
|
|
/**
|
|
|
|
* @license
|
|
|
|
* Copyright Google Inc. All Rights Reserved.
|
|
|
|
*
|
|
|
|
* 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';
|
|
|
|
|
|
|
|
import {createLanguageService} from '../src/language_service';
|
|
|
|
import {Completions, LanguageService} from '../src/types';
|
|
|
|
import {TypeScriptServiceHost} from '../src/typescript_host';
|
|
|
|
|
|
|
|
import {toh} from './test_data';
|
|
|
|
import {MockTypescriptHost} from './test_utils';
|
|
|
|
|
|
|
|
describe('service without angular', () => {
|
|
|
|
let mockHost = new MockTypescriptHost(['/app/main.ts', '/app/parsing-cases.ts'], toh);
|
|
|
|
mockHost.forgetAngular();
|
|
|
|
let service = ts.createLanguageService(mockHost);
|
|
|
|
let ngHost = new TypeScriptServiceHost(mockHost, service);
|
|
|
|
let ngService = createLanguageService(ngHost);
|
|
|
|
const fileName = '/app/test.ng';
|
2017-03-24 12:57:32 -04:00
|
|
|
let position = mockHost.getMarkerLocations(fileName) !['h1-content'];
|
2017-01-26 15:42:48 -05:00
|
|
|
|
|
|
|
it('should not crash a get template references',
|
|
|
|
() => expect(() => ngService.getTemplateReferences()));
|
2018-01-26 17:12:20 -05:00
|
|
|
it('should not crash a get diagnostics',
|
2017-01-26 15:42:48 -05:00
|
|
|
() => expect(() => ngService.getDiagnostics(fileName)).not.toThrow());
|
|
|
|
it('should not crash a completion',
|
|
|
|
() => expect(() => ngService.getCompletionsAt(fileName, position)).not.toThrow());
|
2017-07-07 19:55:17 -04:00
|
|
|
it('should not crash a get definition',
|
2017-01-26 15:42:48 -05:00
|
|
|
() => expect(() => ngService.getDefinitionAt(fileName, position)).not.toThrow());
|
|
|
|
it('should not crash a hover', () => expect(() => ngService.getHoverAt(fileName, position)));
|
|
|
|
});
|