модуль ActionDispatch::Integration::Runner
Открытые методы экземпляра
# File actionpack/lib/action_dispatch/testing/integration.rb, line 320 def app @app ||= nil end
# File actionpack/lib/action_dispatch/testing/integration.rb, line 378 def default_url_options reset! unless integration_session integration_session.default_url_options end
# File actionpack/lib/action_dispatch/testing/integration.rb, line 383 def default_url_options=(options) reset! unless integration_session integration_session.default_url_options = options end
# File actionpack/lib/action_dispatch/testing/integration.rb, line 393
def method_missing(sym, *args, &block)
reset! unless integration_session
if integration_session.respond_to?(sym)
integration_session.__send__(sym, *args, &block).tap do
copy_session_variables!
end
else
super
end
end Перенаправляет необработанные сообщения на текущий экземпляр сессии.
Вызывает метод суперкласса
# File actionpack/lib/action_dispatch/testing/integration.rb, line 362
def open_session
dup.tap do |session|
session.reset!
yield session if block_given?
end
end Открывает новый экземпляр сессии. Если задан блок, новый экземпляр сессии передается в блок перед возвратом.
session = open_session do |sess| sess.extend(CustomAssertions) end
По умолчанию для вас автоматически создается одна сессия, но вы можете использовать этот метод для открытия нескольких сессий, которые следует тестировать одновременно.
# File actionpack/lib/action_dispatch/testing/integration.rb, line 326 def reset! @integration_session = Integration::Session.new(app) end
Сбрасывает текущую сессию. Это полезно для тестирования нескольких сессий в одном тестовом случае.
# File actionpack/lib/action_dispatch/testing/integration.rb, line 388 def respond_to?(method, include_private = false) integration_session.respond_to?(method, include_private) || super end
Вызывает метод суперкласса
© 2004–2018 David Heinemeier Hansson
Licensed under the MIT License.