转换以下CURL PUT以测试rails中的JSON请求

时间:2015-01-22 12:33:04

标签: ruby-on-rails json rspec

如何将以下CURL PUT请求转换为rspec并测试JSON解析器的行为。

curl -D - -X PUT --data "not json" -H "Content-Type: application/json" http://localhost:3000

如何检查回复?提前谢谢。

2 个答案:

答案 0 :(得分:0)

最好是使用vcr gem https://github.com/vcr/vcr

只需在https://github.com/vcr/vcr#usage中创建脚本,但需要正确的HTTP请求。

 VCR.use_cassette("json_test") do
   req = Net::HTTP::Put.new('http://localhost:3000', 'not json')
   req.content_type = 'application/json'
   res = Net::HTTP.get_response(req)
 end

这个真实的HTTP请求将被记录一次,而在rspec中将使用本地文件。

答案 1 :(得分:0)

您可以使用-i选项:

  

-i , - include

     

(HTTP)在输出中包含HTTP标头。 HTTP标头包括服务器名称,文档日期,HTTP版本等等......

来自http://curl.haxx.se/docs/manpage.html