Ich bin neu in Angular 2 (und Angular im Allgemeinen ...) und finde es sehr ansprechend. Ich verwende Angular CLi , um Projekte zu generieren und zu bedienen. Es scheint gut zu funktionieren - obwohl es für meine kleinen Lernprojekte mehr produziert, als ich brauche -, aber das ist zu erwarten.
Ich habe festgestellt, dass es spec.tsfür jedes Winkelelement in einem Projekt (Komponente, Service, Rohr usw.) generiert wird . Ich habe mich umgesehen, aber keine Erklärung gefunden, wofür diese Dateien bestimmt sind.
Sind dies Build-Dateien, die normalerweise bei der Verwendung ausgeblendet werden tsc? Ich fragte mich, weil ich den Namen eines schlecht benannten Namens ändern wollte, den Componentich erstellt hatte, und entdeckte, dass der Name auch in diesen spec.tsDateien referenziert wurde .
import {
beforeEach,
beforeEachProviders,
describe,
expect,
it,
inject,
} from '@angular/core/testing';
import { ComponentFixture, TestComponentBuilder } from '@angular/compiler/testing';
import { Component } from '@angular/core';
import { By } from '@angular/platform-browser';
import { PovLevelComponent } from './pov-level.component';
describe('Component: PovLevel', () => {
let builder: TestComponentBuilder;
beforeEachProviders(() => [PovLevelComponent]);
beforeEach(inject([TestComponentBuilder], function (tcb: TestComponentBuilder) {
builder = tcb;
}));
it('should inject the component', inject([PovLevelComponent],
(component: PovLevelComponent) => {
expect(component).toBeTruthy();
}));
it('should create the component', inject([], () => {
return builder.createAsync(PovLevelComponentTestController)
.then((fixture: ComponentFixture<any>) => {
let query = fixture.debugElement.query(By.directive(PovLevelComponent));
expect(query).toBeTruthy();
expect(query.componentInstance).toBeTruthy();
});
}));
});
@Component({
selector: 'test',
template: `
<app-pov-level></app-pov-level>
`,
directives: [PovLevelComponent]
})
class PovLevelComponentTestController {
}