Подтвердить что ты не робот

Тесты Jasmine проверяют, содержит ли html текст и возвращает boolean

expect(view.$el.html()).toContain('Admin');

В представлении содержится слово "Admin", поэтому я ожидал, что он вернет true. Как я могу достичь этого?

expect(view.$el.html()).toContain('Admin');

Это возвращает undefined. Как я могу вернуть его true?

<header class="main">
  <div id="heading">
    <ul class="header-view right">
      <li class="inline"><a href="#link" class="button help-btn tab-btn"><span>  </span>Help</a></li>
      <li class="inline last"><a href="#og" class="button admin-btn tab-btn expand-admin"><span></span>Admin</a></li>
    </ul>
  </div>
</header>

Это то, что возвращается из view.$el.html

Пожалуйста, помогите.

4b9b3361

Ответ 1

Из документов Jasmine:

Соединитель 'toContain' предназначен для поиска элемента в Массив

Вы пытаетесь найти строку внутри строки, поэтому я бы сделал что-то вроде этого:

expect(view.$el.html().indexOf('Admin') !== -1).toBe(true);