Как протестировать событие нажатия кнопки, которая находится в закрытой функции? - PullRequest
0 голосов
/ 25 сентября 2019

У меня есть частная функция в сервисе, которая выглядит следующим образом.Как написать модульный тест для события нажатия этой кнопки?Кнопка находится внутри диалогового окна.

1) Это даже тестируемое устройство?2) Поскольку я упомянул, что это внутри службы, и происходит событие click, следует ли его тестировать как компонент?это означает, что я должен настроить TestBed, чтобы я мог нажать кнопку, если да, то как?ИЛИ есть ли более правильный способ написания для него модульного теста, если да, то как?

Спасибо!

public callOpenDialog(){
   openDialog(formA, dataView, {}, true);
}
private openDialog(formA: FormA, dataView: DataView, placeholder: ViewContainerRef, okToAll: boolean): Observable<ResponseRequiredResult> {
    return new Observable<ResponseRequiredResult>(observer => {
      let dlgComponent: ResponseRequiredModalFormComponent;
      let dialog: DialogRef<ResponseRequiredModalFormComponent>;
      const dialogId = 'ResponseRequired';

      let buttons = [
        {
          id: this.lmUniqueIdService.uniqueId([formA.busFormA.name, dialogId, DialogButtonKey.OK]),
          text: Locale.translate(DialogButtonKey.OK),
          validate : false,
          isDefault: true,
          click: (e, modal) => {
            if (this.validateResponseRequiredForm(formA.busFormA, dlgComponent.formComponent.formModel)) {
              dialog.close(<ResponseRequiredResult> {
                result:     ResponseRequiredDialogResult.RESPONSE_OK,
                specFields: formA.busFormA.fields, model: dlgComponent.formComponent.formModel
              });
            }
          }
        }
      ];

     dialog = modalDialogService
      .modal(ResponseRequiredModalFormComponent, placeholder)
      .buttons(buttons)
      .title(Locale.translate('ResponseRequired'))
      .isAlert(true)
      .open();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...