gpt4 book ai didi

ruby-on-rails - 使用 XML 主体的 Rails API 功能测试

转载 作者:行者123 更新时间:2023-11-28 20:12:41 25 4
gpt4 key购买 nike

我使用 shoulda 测试框架为在 Rails 中构建的 API 端点编写了功能测试。

示例如下所示:

  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 内容未合并到参数哈希中。

我正在通过 @request.accept = 使用正确的 MIME 类型设置请求“文本/xml”

我可以使用 request.raw_post 检查请求的内容,但我想保持当前设置正常工作。

此外,在开发模式下使用 cURL 或任何其他库 (rest_http) 从终端运行测试,API 运行良好。

非常感谢任何提示或帮助。

最佳答案

现在更简单了:

post "/api/v1/users.xml", user.to_xml, "CONTENT_TYPE" => 'application/xml'

请注意,您必须指定适当的“CONTENT_TYPE”。在其他情况下,您的请求将作为“application/x-www-form-urlencoded”进行处理,并且不会正确解析 xml。

关于ruby-on-rails - 使用 XML 主体的 Rails API 功能测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6047109/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com