в какой-то момент, я не знаю, ребята ли вы это называете разработкой REPL или чем-то, но я обнаруживаю, что проверяю содержимое своей среды выполнения, вставляя вызов binding.pry
в некоторый тест. Это работает очень хорошо, за исключением случаев, когда я запускаю тесты Cucumber, потому что я выбрал poltergeist
как мой драйвер capybara
, который использует phantomjs
. Я могу запустить REPL, но через некоторое время, когда он был убит, и я получаю ошибку тайм-аута от phantomjs
, я задаюсь вопросом, есть ли способ исправить это, даже если он включает в себя переход на pry-remote
или подобное. Вероятно, это было задано раньше, но я просто не мог найти ответа. Улики?
Как проинструктировать phantomjs, чтобы избежать таймаута при использовании binding.pry
Ответ 1
Я поместил это в свой spec_helper, чтобы установить таймаут
Capybara.register_driver :poltergeist do |app|
Capybara::Poltergeist::Driver.new(app, {timeout: 600, js_errors: false} )
end
Ответ 2
Внутри pry вы должны уметь:
page.driver.timeout = 10000
или
Capybara.current_session.driver.timeout = 10000
Это должно пройти весь путь до кода обработки сокета, и я думаю, что он выполнит эту работу, хотя я не пробовал...