簡體   English   中英

如何在 Angular 中為 switch case 編寫單元測試用例?

[英]How to write unit test case for switch case in Angular?

我是為 Angular 10 編寫測試用例的新手,這是我的組件函數代碼。 如何為 switch case 編寫測試用例。 希望得到相同的指導

public Mreceived(event) {
    switch (event && event['event']) {
      case 'OptionSelected':
        this.dongleNext();  //private function inside component
        break;

      case 'tempSelected':
        break;
    }
  }

根據指導編寫測試用例如下

it('should call dongleNext on onOptionSelected event', () => {
    component.Mreceived({ event: 'OptionSelected' });
    //@ts-ignore
    expect(spyOn(component, 'dongleNext')).toHaveBeenCalled();

  });

它沒有說預期的間諜切換下一個已被調用,任何人都可以對此進行指導

像任何其他茉莉花單元測試一樣

it('event shall be OptionSelected', () => {
    // Initialization of subject under test here
    // call business functionality, i.e. Mreceived({event: 'OptionSelected'})
    // Check if expectation has been met.
});

更新:OP 想要驗證私有功能的調用。

...
spyOn<any>(component, 'dongleNext');
expect(component['dongleNext']).toHaveBeenCalled();
...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM