Как установить текстовое содержимое элемента ввода html в модульном тесте - PullRequest
2 голосов
/ 26 сентября 2019

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

<input type="text" id="accountid" class="form-control col-sm-3" [(ngModel)]="record.accountid" name="accountid" required>

Я пробовал это, но он не работает

let formData = fixture.debugElement.query(By.css('#accountid'));
formData.nativeElement.value = 22;
fixture.detectChanges();
console.log(formData.nativeElement.textContent);//expected to print 22
expect(formData.nativeElement.textContent).toBe(22);//fails

1 Ответ

2 голосов
/ 26 сентября 2019

Вы должны отправить событие input после установки его значения:

let formData = fixture.debugElement.query(By.css('#accountid'));
    formData.nativeElement.value = 22;
    formData.nativeElement.dispatchEvent(new Event('input'));

expect(formData.nativeElement.value).toBe(22);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...