test(compiler): add a test for components not part of any NgModule
This commit is contained in:
parent
8786ba95fb
commit
448d9f9f46
@ -8,12 +8,12 @@
|
|||||||
|
|
||||||
import {GeneratedFile, toTypeScript} from '@angular/compiler';
|
import {GeneratedFile, toTypeScript} from '@angular/compiler';
|
||||||
import {NodeFlags} from '@angular/core/src/view/index';
|
import {NodeFlags} from '@angular/core/src/view/index';
|
||||||
import {MetadataBundler, MetadataCollector, ModuleMetadata, privateEntriesToIndex} from '@angular/tsc-wrapped';
|
import {MetadataBundler, privateEntriesToIndex} from '@angular/tsc-wrapped';
|
||||||
import * as ts from 'typescript';
|
import * as ts from 'typescript';
|
||||||
|
|
||||||
import {extractSourceMap, originalPositionFor} from '../output/source_map_util';
|
import {extractSourceMap, originalPositionFor} from '../output/source_map_util';
|
||||||
|
|
||||||
import {EmittingCompilerHost, MockData, MockDirectory, MockMetadataBundlerHost, arrayToMockDir, arrayToMockMap, compile, expectNoDiagnostics, settings, setup, toMockFileArray} from './test_util';
|
import {EmittingCompilerHost, MockDirectory, MockMetadataBundlerHost, arrayToMockDir, compile, expectNoDiagnostics, settings, setup, toMockFileArray} from './test_util';
|
||||||
|
|
||||||
describe('compiler (unbundled Angular)', () => {
|
describe('compiler (unbundled Angular)', () => {
|
||||||
let angularFiles = setup();
|
let angularFiles = setup();
|
||||||
@ -208,7 +208,7 @@ describe('compiler (unbundled Angular)', () => {
|
|||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should be able to supress a null access', () => {
|
it('should be able to suppress a null access', () => {
|
||||||
const FILES: MockDirectory = {
|
const FILES: MockDirectory = {
|
||||||
app: {
|
app: {
|
||||||
'app.ts': `
|
'app.ts': `
|
||||||
@ -266,6 +266,24 @@ describe('compiler (unbundled Angular)', () => {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('should report when a component is declared in any module', () => {
|
||||||
|
const FILES: MockDirectory = {
|
||||||
|
app: {
|
||||||
|
'app.ts': `
|
||||||
|
import {Component, NgModule} from '@angular/core';
|
||||||
|
|
||||||
|
@Component({selector: 'my-comp', template: ''})
|
||||||
|
export class MyComp {}
|
||||||
|
|
||||||
|
@NgModule({})
|
||||||
|
export class MyModule {}
|
||||||
|
`
|
||||||
|
}
|
||||||
|
};
|
||||||
|
expect(() => compile([FILES, angularFiles]))
|
||||||
|
.toThrowError(/Cannot determine the module for class MyComp/);
|
||||||
|
});
|
||||||
|
|
||||||
it('should add the preamble to generated files', () => {
|
it('should add the preamble to generated files', () => {
|
||||||
const FILES: MockDirectory = {
|
const FILES: MockDirectory = {
|
||||||
app: {
|
app: {
|
||||||
@ -746,7 +764,6 @@ const LIBRARY: MockDirectory = {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
const LIBRARY_USING_APP_MODULE = ['/lib-user/app/app.module.ts'];
|
|
||||||
const LIBRARY_USING_APP: MockDirectory = {
|
const LIBRARY_USING_APP: MockDirectory = {
|
||||||
'lib-user': {
|
'lib-user': {
|
||||||
app: {
|
app: {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user