ฉันใหม่กับ Angular 2 (และโดยทั่วไปแล้ว Angular ... ) และฉันพบว่ามันน่าดึงดูดมาก ฉันใช้Angular CLiเพื่อสร้างและให้บริการโครงการ ดูเหมือนว่าจะทำงานได้ดี - แม้ว่าสำหรับโครงการเรียนรู้เล็ก ๆ น้อย ๆ ของฉันมันผลิตได้มากกว่าที่ฉันต้องการ - แต่คาดว่าจะเป็นเช่นนั้น
ฉันสังเกตเห็นว่ามันสร้างขึ้นspec.ts
สำหรับองค์ประกอบเชิงมุมแต่ละอันในโครงการ (Component, Service, Pipe, ฯลฯ ) ฉันค้นหาไปแล้วแต่ไม่พบคำอธิบายว่าไฟล์เหล่านี้มีไว้เพื่ออะไร
ไฟล์บิลด์เหล่านี้ซึ่งปกติจะซ่อนอยู่เมื่อใช้งานtsc
หรือไม่ ฉันสงสัยเพราะฉันต้องการเปลี่ยนชื่อของชื่อที่ไม่ดีที่Component
ฉันสร้างขึ้นและค้นพบว่าชื่อนั้นถูกอ้างอิงในspec.ts
ไฟล์เหล่านี้ด้วย
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 {
}