2017-01-27 15 views
2

私はAngularJSとカルマにはかなり新しいです。それにもかかわらず、意味のある単体テストを書くように命じられています。私たちが作成する各コンポーネントにクラスOnInitOnDestroyを実装するように求められているので、コンポーネントが実際にそれらを実装するかどうかを確認する方法があるかどうかは疑問です。カルマユニットテスト - コンポーネントが実装する抽象クラスを調べる

誰かがアイデアを持っていますか?

答えて

2

実装をチェックするには、コンポーネントがこれらの抽象クラスで必要とされるメソッドを実際に実装しているかどうかを確認する必要があります。それだ

describe('DummyComponent',() => { 
    let component: DummyComponent; 

    beforeEach(() => { 
     TestBed.configureTestingModule({ 
      declarations: [ 
       DummyComponent 
      ], 
      providers: [ 
       { provide: ComponentFixtureAutoDetect, useValue: true } 
      ] 
     }); 
     component = TestBed.createComponent(DummyComponent).componentInstance; 

    }); 

    it('should implement onInit and onDestroy',() => { 
     expect(component.ngOnInit).toBeDefined; 
     expect(component.ngOnDestroy).toBeDefined; 
    }); 
}); 
+0

DummyComponentの場合は、なし他の依存関係を持つimplements OnInit, OnDestroyコンポーネントです!ありがとうございました。それは期待どおりに動作します。 – DiabolicWords

関連する問題