модульный тестовый сбой, если проверка кнопки элемента DOM включена, то же самое работает, заявляя, что не отключен - PullRequest
0 голосов
/ 07 октября 2019

У меня кнопка поиска в отключенном состоянии по умолчанию, пока не будут выбраны пользователь и функция или функция и клиент, кнопка не будет включена. Поэтому, когда я писал тестовые случаи, я пытался выбрать cutomer и функцию, и попытался проверить кнопку включена. Но этот тестовый пример не говорит о ложном, тогда как когда я даю not.disabled, он становится истинным. так же, как я хочу проверить отключенное состояние при загрузке, оно проходит, а затем, когда я запускаю not.disabled, происходит сбой. Довольно странное поведение.

html:

<div class="buttons">
        <button mat-button name="search" class="search" [ngClass]="{'disable-search-btn' : !isSearchEnabled}">search</button>
</div>

spec.ts

it('should check customer dropdown values are present and search button is enabled', () => {
    component.openFunctionBasedField(component.functionOptions[1]);
    component.onSelectCustomer(component.customerOptions[0]);
    expect(component.isCustomerFunctionSelected).toBeTruthy();
    expect(component.customerOptions.length).toBeGreaterThan(0);
    const searchButton = fixture.debugElement.query(By.css('.search')).nativeElement.disabled;
});

ts:

toggleSearchButton() {
    if ((this.selectedFunctionItem && (this.selectedUser && this.selectedUser.length > 0)) || this.selectedCustomerItem) {
      this.isSearchEnabled = true;
    } else {
      this.isSearch = false;
      this.isSearchEnabled = false;
    }
  }
...