1
我有一個Rails RESTful Web服務應用程序,它接受來自客戶端的值以遞增數據庫中的值。數據庫值是一個整數,但是當使用rspec來測試代碼時,傳入的值被解釋爲一個字符串。未正確傳遞Rails 3.1 Web服務的數據類型
我使用Rails 3.1和Ruby 1.9.2。
這裏的RSpec的片段:
...
it "should find Points and return object" do
put :update, :username => "tester", :newpoints => [10, 15, 0], :format => :xml
end
...
這裏的控制器代碼:
...
respond_to do |format|
if points.update_attributes([xp + :newpoints[0]][sp + :newpoints[1]][cash + :newpoints[2]])
format.json { head :ok }
format.xml { head :ok }
...
XP,SP和現金是從數據庫中值,並已確認爲Fixnum對象數據類型。我得到的錯誤是:
TypeError: String can't be coerced into Fixnum
如何編寫我的測試,以確保傳遞的參數作爲正確的數據類型傳遞?
如果需要,我可以包含更多的代碼。提前致謝!