Нажатие кнопки с функцией, имеющей параметры в модульном тесте жасмин (угловой) - PullRequest
0 голосов
/ 10 октября 2018

Я пишу модульный тест в угловых для события нажатия кнопки.Упомянутый ниже модульный тест кнопки отлично работает для ситуаций, когда функция не параметризована -

Как это будет работать, если она:

(click)="editForms()"

, но когда я добавляю параметрык функциям, как здесь у меня есть:

(click)="editForms(array) , the this test fails as - "Failed: Cannot read property 'click' of null" --

Невозможно вызвать функцию editForms.

Может кто-нибудь, пожалуйста, скажите мне, как это сделать сэто?

  beforeEach(() => {
    fixture = TestBed.createComponent(MyjobsComponent);
    component = fixture.componentInstance;
     fixture.detectChanges();
  });

    fit('should do editForms button click ', async(() => {
        spyOn(component, 'editForms');
        let button = fixture.debugElement.nativeElement.querySelector('button');
        button.click();
        fixture.whenStable().then(() => {
          expect(component.editForms).toHaveBeenCalled();
        })
      }));

HTML:

 <button mat-raised-button style="background-color:#6666ff;color:white;" (click)="editForms(array)"> <i class="material-icons">create</i></button>

component.ts:

editForms(name) {
    console.log(name);
    console.log( this.totalJobData);
    for(let e = 0; e < this.totalJobData.length; e++){
      if(this.totalJobData[e].jobName === name){
        this.jobID = this.totalJobData[e].jobId;
        this.sourceCode = this.totalJobData[e].sourceCode;
      }`enter code here`
    }
    console.log(this.sourceCode);
.....
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...