2011-11-23 80 views
2

我有一個API可以在本體XML中接受/接受,並且可以返回json或XML。我試圖用rspec來測試它。Rails 3,Rspec測試一個XML API

爲了讓我做我的規格如下請求:

post "/resources?auth_token=#{@user.authentication_token}", post_data, { 
    "CONTENT_TYPE" => 'application/xml', 
    "ACCEPT" => 'application/json' 
} 

它將按預期工作,直到它到達responding.It似乎忽略了我的接受標頭和一個空格作爲返回一個HTML文檔身體。我已經使用具有相同頭文件的restclient測試了API,並且它工作正常。

有什麼我在這裏失蹤?在一個側面說明...我無法弄清楚如何在控制器中打印請求頭,這可能是有用的。

回答

2

固定!

我需要使用HTTP_ACCEPT爲接受頭

post "/resources?auth_token=#{@user.authentication_token}", post_data, { 
    "CONTENT_TYPE" => 'application/xml', 
    "HTTP_ACCEPT" => 'application/json' 
} 

哎呀太煩人......