Проблема взаимодействия с модальностями Bootstrap через Capybara (v2)

В приложении Rails яя пытаюсь проверитьБутстрап модальный сПоле jQuery TokenInput в Rspec с использованием капибары сcapybara-webkit Водитель. Рассматриваемая часть выглядит следующим образом:

click_link 'Create Team Modal'
sleep 1

within('div#modal_popup') do
  fill_in 'input#token-input-team_name', with: 'Fancy team name'
  sleep 1
  fill_in 'input#token-input-team_name', with: '\t'
  sleep 1

  click_button 'Create Team'
end

page.should have_content('Fancy team name')
Нажмите кнопку, чтобы получить модальныйЗаполните TokenInput именем командыИмитация нажатия клавиши Tab для выбораСоздать командуУбедитесь, что имя отображается на странице

Это будет работать только со всемиsleep 1s на месте; в противном случае Капибара падает наhave_contentЭто в конечном итоге приводит к ошибке сервера, поскольку имя команды никогда не может быть выбрано должным образом. Другие модные бутстрепыбез поле TokenInput не требуетsleep 1 прежде чем они загрузятся, однако.

С учетом всего сказанного, есть ли способ избавиться от снов и сделать это как обычно? Капибара 2 досталаwait_until (по уважительной причине), поскольку он будет ожидать в течение времени ожидания по умолчанию, чтобы проверить что-то ... но это некажется, это отражено в моем тесте, приведенном выше; Это'Как будто Капибара не участвует в этом периоде ожидания при входе / выходе из этого режима. У кого-нибудь есть опыт с этим? Использование Rails 3.2.10, Rspec 2.12, Capybara 2, capybara-webkit 0.14.0, TokenInput 1.6.

Ответы на вопрос(4)

Ваш ответ на вопрос