chore: move StaticReflector into compiler_cli, part 2
Adjust tests and build to run the unit tests again after the move. Closes #8363
This commit is contained in:
parent
ab56be46e1
commit
9e05814212
|
@ -1060,11 +1060,15 @@ gulp.task('!test.compiler_cli.codegen', function(done) {
|
|||
}
|
||||
});
|
||||
|
||||
gulp.task('!test.compiler_cli.unit',
|
||||
function(done) { runJasmineTests(['dist/js/cjs/compiler_cli/**/*_spec.js'], done) });
|
||||
|
||||
// End-to-end test for compiler CLI.
|
||||
// Calls the compiler using its command-line interface, then compiles the app with the codegen.
|
||||
// TODO(alexeagle): wire up the playground tests with offline compilation, similar to dart.
|
||||
gulp.task('test.compiler_cli', ['!build.compiler_cli'],
|
||||
function(done) { runSequence('!test.compiler_cli.codegen', sequenceComplete(done)); });
|
||||
gulp.task('test.compiler_cli', ['!build.compiler_cli'], function(done) {
|
||||
runSequence('!test.compiler_cli.unit', '!test.compiler_cli.codegen', sequenceComplete(done));
|
||||
});
|
||||
|
||||
// -----------------
|
||||
// orchestrated targets
|
||||
|
|
|
@ -6,7 +6,7 @@ import * as ts from 'typescript';
|
|||
import * as path from 'path';
|
||||
|
||||
import * as compiler from 'angular2/compiler';
|
||||
import {StaticReflector} from 'angular2/src/compiler/static_reflector';
|
||||
import {StaticReflector} from './static_reflector';
|
||||
import {CompileMetadataResolver} from 'angular2/src/compiler/metadata_resolver';
|
||||
import {HtmlParser} from 'angular2/src/compiler/html_parser';
|
||||
import {DirectiveNormalizer} from 'angular2/src/compiler/directive_normalizer';
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
import {StaticReflectorHost, StaticSymbol} from 'angular2/src/compiler/static_reflector';
|
||||
import {StaticReflectorHost, StaticSymbol} from './static_reflector';
|
||||
import * as ts from 'typescript';
|
||||
import {MetadataCollector, ModuleMetadata} from 'ts-metadata-collector';
|
||||
import * as fs from 'fs';
|
||||
|
|
|
@ -130,7 +130,7 @@ export class StaticReflector implements ReflectorReader {
|
|||
|
||||
parameters = [];
|
||||
ListWrapper.forEachWithIndex(parameterTypes, (paramType, index) => {
|
||||
let nestedResult = [];
|
||||
let nestedResult: any[] = [];
|
||||
if (isPresent(paramType)) {
|
||||
nestedResult.push(paramType);
|
||||
}
|
||||
|
@ -155,9 +155,9 @@ export class StaticReflector implements ReflectorReader {
|
|||
|
||||
private registerDecoratorOrConstructor(type: StaticSymbol, ctor: any): void {
|
||||
this.conversionMap.set(type, (context: StaticSymbol, args: any[]) => {
|
||||
let argValues = [];
|
||||
let argValues: any[] = [];
|
||||
ListWrapper.forEachWithIndex(args, (arg, index) => {
|
||||
let argValue;
|
||||
let argValue: any;
|
||||
if (isStringMap(arg) && isBlank(arg['__symbolic'])) {
|
||||
argValue = mapStringMap(arg, (value, key) => this.simplify(context, value));
|
||||
} else {
|
||||
|
@ -237,7 +237,7 @@ export class StaticReflector implements ReflectorReader {
|
|||
return expression;
|
||||
}
|
||||
if (isArray(expression)) {
|
||||
let result = [];
|
||||
let result: any[] = [];
|
||||
for (let item of(<any>expression)) {
|
||||
result.push(simplify(item));
|
||||
}
|
||||
|
@ -245,7 +245,7 @@ export class StaticReflector implements ReflectorReader {
|
|||
}
|
||||
if (isPresent(expression)) {
|
||||
if (isPresent(expression['__symbolic'])) {
|
||||
let staticSymbol;
|
||||
let staticSymbol: StaticSymbol;
|
||||
switch (expression['__symbolic']) {
|
||||
case "binop":
|
||||
let left = simplify(expression['left']);
|
||||
|
@ -396,7 +396,7 @@ function isClassMetadata(expression: any): boolean {
|
|||
function mapStringMap(input: {[key: string]: any},
|
||||
transform: (value: any, key: string) => any): {[key: string]: any} {
|
||||
if (isBlank(input)) return {};
|
||||
var result = {};
|
||||
var result: {[key: string]: any} = {};
|
||||
StringMapWrapper.keys(input).forEach((key) => { result[key] = transform(input[key], key); });
|
||||
return result;
|
||||
}
|
||||
|
|
|
@ -1,20 +1,13 @@
|
|||
/// <reference path="../../typings/jasmine/jasmine.d.ts" />
|
||||
|
||||
import {describe, it, iit, expect, ddescribe, beforeEach} from 'angular2/testing_internal';
|
||||
import {IS_DART, isBlank} from 'angular2/src/facade/lang';
|
||||
import {isBlank} from 'angular2/src/facade/lang';
|
||||
import {ListWrapper} from 'angular2/src/facade/collection';
|
||||
|
||||
import {
|
||||
StaticReflector,
|
||||
StaticReflectorHost,
|
||||
StaticSymbol
|
||||
} from 'angular2/src/compiler/static_reflector';
|
||||
import {StaticReflector, StaticReflectorHost, StaticSymbol} from './static_reflector';
|
||||
|
||||
export function main() {
|
||||
// Static reflector is not supported in Dart
|
||||
// as we use reflection to create objects.
|
||||
if (IS_DART) return;
|
||||
describe('StaticReflector', () => {
|
||||
let noContext = new StaticSymbol('', '', '');
|
||||
|
||||
describe('StaticReflector', () => {
|
||||
let host: StaticReflectorHost;
|
||||
let reflector: StaticReflector;
|
||||
|
||||
|
@ -41,8 +34,7 @@ export function main() {
|
|||
let NgFor = host.findDeclaration('angular2/src/common/directives/ng_for', 'NgFor');
|
||||
let ViewContainerRef =
|
||||
host.findDeclaration('angular2/src/core/linker/view_container_ref', 'ViewContainerRef');
|
||||
let TemplateRef =
|
||||
host.findDeclaration('angular2/src/core/linker/template_ref', 'TemplateRef');
|
||||
let TemplateRef = host.findDeclaration('angular2/src/core/linker/template_ref', 'TemplateRef');
|
||||
let IterableDiffers = host.findDeclaration(
|
||||
'angular2/src/core/change_detection/differs/iterable_differs', 'IterableDiffers');
|
||||
let ChangeDetectorRef = host.findDeclaration(
|
||||
|
@ -237,8 +229,7 @@ export function main() {
|
|||
({__symbolic: "reference", module: "./extern", name: "nonExisting"})))
|
||||
.toEqual(host.getStaticSymbol('', '/src/extern.d.ts', 'nonExisting'));
|
||||
});
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
class MockReflectorHost implements StaticReflectorHost {
|
||||
private staticTypeCache = new Map<string, StaticSymbol>();
|
||||
|
@ -258,7 +249,7 @@ class MockReflectorHost implements StaticReflectorHost {
|
|||
function splitPath(path: string): string[] { return path.split(/\/|\\/g); }
|
||||
|
||||
function resolvePath(pathParts: string[]): string {
|
||||
let result = [];
|
||||
let result: string[] = [];
|
||||
ListWrapper.forEachWithIndex(pathParts, (part, index) => {
|
||||
switch (part) {
|
||||
case '':
|
||||
|
@ -293,9 +284,8 @@ class MockReflectorHost implements StaticReflectorHost {
|
|||
}
|
||||
|
||||
getMetadataFor(moduleId: string): any {
|
||||
return {
|
||||
'/tmp/angular2/src/common/forms/directives.d.ts':
|
||||
{
|
||||
let data: {[key: string]: any} = {
|
||||
'/tmp/angular2/src/common/forms/directives.d.ts': {
|
||||
"__symbolic": "module",
|
||||
"metadata": {
|
||||
"FORM_DIRECTIVES": [
|
||||
|
@ -307,16 +297,12 @@ class MockReflectorHost implements StaticReflectorHost {
|
|||
]
|
||||
}
|
||||
},
|
||||
'/tmp/angular2/src/common/directives/ng_for.d.ts':
|
||||
{
|
||||
'/tmp/angular2/src/common/directives/ng_for.d.ts': {
|
||||
"__symbolic": "module",
|
||||
"metadata":
|
||||
{
|
||||
"NgFor":
|
||||
{
|
||||
"metadata": {
|
||||
"NgFor": {
|
||||
"__symbolic": "class",
|
||||
"decorators":
|
||||
[
|
||||
"decorators": [
|
||||
{
|
||||
"__symbolic": "call",
|
||||
"expression": {
|
||||
|
@ -332,13 +318,11 @@ class MockReflectorHost implements StaticReflectorHost {
|
|||
]
|
||||
}
|
||||
],
|
||||
"members":
|
||||
{
|
||||
"members": {
|
||||
"__ctor__": [
|
||||
{
|
||||
"__symbolic": "constructor",
|
||||
"parameters":
|
||||
[
|
||||
"parameters": [
|
||||
{
|
||||
"__symbolic": "reference",
|
||||
"module": "../../core/linker/view_container_ref",
|
||||
|
@ -351,14 +335,12 @@ class MockReflectorHost implements StaticReflectorHost {
|
|||
},
|
||||
{
|
||||
"__symbolic": "reference",
|
||||
"module":
|
||||
"../../core/change_detection/differs/iterable_differs",
|
||||
"module": "../../core/change_detection/differs/iterable_differs",
|
||||
"name": "IterableDiffers"
|
||||
},
|
||||
{
|
||||
"__symbolic": "reference",
|
||||
"module":
|
||||
"../../core/change_detection/change_detector_ref",
|
||||
"module": "../../core/change_detection/change_detector_ref",
|
||||
"name": "ChangeDetectorRef"
|
||||
}
|
||||
]
|
||||
|
@ -376,16 +358,12 @@ class MockReflectorHost implements StaticReflectorHost {
|
|||
{"metadata": {"IterableDiffers": {"__symbolic": "class"}}},
|
||||
'/tmp/angular2/src/core/change_detection/change_detector_ref.d.ts':
|
||||
{"metadata": {"ChangeDetectorRef": {"__symbolic": "class"}}},
|
||||
'/tmp/src/app/hero-detail.component.d.ts':
|
||||
{
|
||||
'/tmp/src/app/hero-detail.component.d.ts': {
|
||||
"__symbolic": "module",
|
||||
"metadata":
|
||||
{
|
||||
"HeroDetailComponent":
|
||||
{
|
||||
"metadata": {
|
||||
"HeroDetailComponent": {
|
||||
"__symbolic": "class",
|
||||
"decorators":
|
||||
[
|
||||
"decorators": [
|
||||
{
|
||||
"__symbolic": "call",
|
||||
"expression": {
|
||||
|
@ -396,9 +374,9 @@ class MockReflectorHost implements StaticReflectorHost {
|
|||
"arguments": [
|
||||
{
|
||||
"selector": "my-hero-detail",
|
||||
"template": "\n <div *ngIf=\"hero\">\n <h2>{{hero.name}} details!</h2>\n <div><label>id: </label>{{hero.id}}</div>\n <div>\n <label>name: </label>\n <input [(ngModel)]=\"hero.name\" placeholder=\"name\"/>\n </div>\n </div>\n",
|
||||
"directives":
|
||||
[
|
||||
"template":
|
||||
"\n <div *ngIf=\"hero\">\n <h2>{{hero.name}} details!</h2>\n <div><label>id: </label>{{hero.id}}</div>\n <div>\n <label>name: </label>\n <input [(ngModel)]=\"hero.name\" placeholder=\"name\"/>\n </div>\n </div>\n",
|
||||
"directives": [
|
||||
{
|
||||
"__symbolic": "reference",
|
||||
"name": "FORM_DIRECTIVES",
|
||||
|
@ -409,17 +387,14 @@ class MockReflectorHost implements StaticReflectorHost {
|
|||
]
|
||||
}
|
||||
],
|
||||
"members":
|
||||
{
|
||||
"members": {
|
||||
"hero": [
|
||||
{
|
||||
"__symbolic": "property",
|
||||
"decorators":
|
||||
[
|
||||
"decorators": [
|
||||
{
|
||||
"__symbolic": "call",
|
||||
"expression":
|
||||
{
|
||||
"expression": {
|
||||
"__symbolic": "reference",
|
||||
"name": "Input",
|
||||
"module": "angular2/src/core/metadata"
|
||||
|
@ -432,10 +407,8 @@ class MockReflectorHost implements StaticReflectorHost {
|
|||
}
|
||||
}
|
||||
},
|
||||
'/src/extern.d.ts': {
|
||||
"__symbolic": "module", metadata: { s: "s" }
|
||||
}
|
||||
}
|
||||
[moduleId];
|
||||
'/src/extern.d.ts': {"__symbolic": "module", metadata: {s: "s"}}
|
||||
};
|
||||
return data[moduleId];
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue