2
こんにちは、私はangular2を初めて使い、ちょうどヒーローの例を終了しました。私はユニットテストを追加すると良いと思って、私はhero.serviceから始めました。ジャスミンangle2チェック配列の長さtoEqual return true
この
getHeroes()ヒーローサービスである:プロミス{
return this.http.get(this.heroesUrl).toPromise().then(response=>response.json().data as Hero[]).catch(this.handleError);
}
これはコンソールから私のユニットテスト
const fakedHeroes:Hero[]=[
{ id: 1, name: 'Windstorm' },
{ id: 2, name: 'Bombasto' },
{ id: 3, name: 'Magneta' },
{ id: 4, name: 'Tornado' }
]
describe('get Heroes test',()=>{
let service:HeroService=null;
let backend:MockBackend=null;
beforeEach(inject([HeroService,MockBackend],(heroSerivce:HeroService,mockBackend:MockBackend)=>{
service=heroSerivce;
backend=mockBackend;
}));
it('get heroes',(done)=>{
backend.connections.subscribe((connection:MockConnection)=>{
let options=new ResponseOptions({status: 200, body: {data: fakedHeroes}})
connection.mockRespond(new Response(options));
})
service.getHeroes().then(response=>{
// console.log(response)
console.log(response.length)
expect(response.length).toEqual(2,'should be 4')
});
done();
})
})
であり、私が見ることができます応答の長さは4ですが、テストは正常に終了します。
私はここで何かを忘れましたか?
アップデート1:
私はすべて成功し
ありがとうございます@peeskillet(英語) –