Spec-Zone.ru › Ruby on Rails 8.1

модуль ActionDispatch::Integration::RequestHelpers

Открытые методы экземпляра

delete (path, **args) Показать исходный код
# File actionpack/lib/action_dispatch/testing/integration.rb, line 42
def delete(path, **args)
  process(:delete, path, **args)
end

Выполняет запрос DELETE с указанными параметрами. Подробнее см. ActionDispatch::Integration::Session#process.

follow_redirect! (headers: {}, **args) Показать исходный код
# File actionpack/lib/action_dispatch/testing/integration.rb, line 65
def follow_redirect!(headers: {}, **args)
  raise "not a redirect! #{status} #{status_message}" unless redirect?

  method =
    if [307, 308].include?(response.status)
      request.method.downcase
    else
      :get
    end

  if [ :HTTP_REFERER, "HTTP_REFERER" ].none? { |key| headers.key? key }
    headers["HTTP_REFERER"] = request.url
  end

  public_send(method, response.location, headers: headers, **args)
  status
end

Выполняет переход по одному ответу с перенаправлением. Если последний ответ не был перенаправлением, будет вызвано исключение. В противном случае перенаправление выполняется на адрес, указанный в заголовке location. Если перенаправление имеет код 307 или 308, при перенаправлении используется тот же HTTP-метод; в противном случае выполняется запрос GET. Все аргументы передаются базовому запросу.

Заголовку HTTP_REFERER присваивается значение предыдущего URL.

get (path, **args) Показать исходный код
# File actionpack/lib/action_dispatch/testing/integration.rb, line 18
def get(path, **args)
  process(:get, path, **args)
end

Выполняет запрос GET с указанными параметрами. Подробнее см. ActionDispatch::Integration::Session#process.

head (path, **args) Показать исходный код
# File actionpack/lib/action_dispatch/testing/integration.rb, line 48
def head(path, **args)
  process(:head, path, **args)
end

Выполняет запрос HEAD с указанными параметрами. Подробнее см. ActionDispatch::Integration::Session#process.

options (path, **args) Показать исходный код
# File actionpack/lib/action_dispatch/testing/integration.rb, line 54
def options(path, **args)
  process(:options, path, **args)
end

Выполняет запрос OPTIONS с указанными параметрами. Подробнее см. ActionDispatch::Integration::Session#process.

patch (path, **args) Показать исходный код
# File actionpack/lib/action_dispatch/testing/integration.rb, line 30
def patch(path, **args)
  process(:patch, path, **args)
end

Выполняет запрос PATCH с указанными параметрами. Подробнее см. ActionDispatch::Integration::Session#process.

post (path, **args) Показать исходный код
# File actionpack/lib/action_dispatch/testing/integration.rb, line 24
def post(path, **args)
  process(:post, path, **args)
end

Выполняет запрос POST с указанными параметрами. Подробнее см. ActionDispatch::Integration::Session#process.

put (path, **args) Показать исходный код
# File actionpack/lib/action_dispatch/testing/integration.rb, line 36
def put(path, **args)
  process(:put, path, **args)
end

Выполняет запрос PUT с указанными параметрами. Подробнее см. ActionDispatch::Integration::Session#process.

© 2004–2021 David Heinemeier Hansson
Licensed under the MIT License.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API