Тесты Jasmine JS терпят неудачу только при запуске без головы

Итак, несколько тестов, которые проверяют очень простое поведение:

$(document).ready(function(){
  if(window.location.hash == '#admin'){
    $(document).on('change', '#undelete-type-select', undeleteManager.typeSelected);
    $(document).on('change', '#undelete-manual-type-select', undeleteManager.idsSelected);
    $(document).on('click', '.undelete-link', undeleteManager.recoverByLink);
    $(document).on('click', 'i.icon-repeat', undeleteManager.startOver);
    $(document).on('click', '#undelete-ids-submit', undeleteManager.undeleteById);
  }
});

Когда я запускаю тесты в браузере, они проходят. Когда я запускаю тесты на Трэвисе, все они терпят неудачу. Вот пример неудачного теста:

describe('when #undelete-type-select changes', function() {
  beforeEach(function() {
    $('#undelete-type-select').val('ticket');
    $('#undelete-type-select').change();
  });

  it('should go to step 2', function() {
    expect($('#status').html()).toMatch(/Step 2/);
  });
});

Ошибка в основном указывает на то, что она все еще находится на шаге 1:

Ожидаемый «Шаг 1. Какой тип контента вы хотите восстановить?» чтобы соответствовать /Шаг 2/. Ошибка: ожидается «Шаг 1. Какой тип контента вы хотите восстановить?» чтобы соответствовать /Шаг 2/.

Мысли? Помощь?


person apanzerj    schedule 06.08.2015    source источник
comment
Я думал об этом больше, и я думаю, что это одна из двух вещей: 1. привязки по какой-то причине не являются обязательными или... 2. метод .click() не работает в безголовом режиме.   -  person apanzerj    schedule 06.08.2015
comment
Коллега нашел ответ: stackoverflow.com/questions/31348032/ grr...   -  person apanzerj    schedule 06.08.2015