Я написал функциональные тесты для конечных точек API, встроенных в Rails, используя среду тестирования shoulda.
Пример выглядит следующим образом:
setup do
authenticated_xml_request('xml-file-name')
post :new
end
should respond_with :success
authenticated_xml_request – это вспомогательный метод тестирования, который устанавливает @request.env['RAW_POST_DATA'] с содержимым XML.
После обновления приложения с rails 2.3.3 до rails 2.3.8 функциональные тесты не проходят, поскольку полученный XML-контент не объединяется с хэшем params.
Я устанавливаю запрос с правильным типом mime через @request.accept = "text/xml"
Я могу проверить содержимое запроса, используя request.raw_post, но я хотел бы сохранить текущую настройку.
Кроме того, при запуске теста из терминала с использованием cURL или любой другой библиотеки (rest_http) в режиме разработки API работает отлично.
Любые советы или помощь очень ценятся.
@request.env['action_dispatch.request.parameters']
этоnil
- person cnikolaou   schedule 03.06.2011