Tôi đang tìm để gửi bài thô dữ liệu (ví dụ unparamaterized JSON) đến một trong các bộ điều khiển của tôi để kiểm tra:Cách gửi dữ liệu bài thô trong bài kiểm tra chức năng Rails?
class LegacyOrderUpdateControllerTest < ActionController::TestCase
test "sending json" do
post :index, '{"foo":"bar", "bool":true}'
end
end
nhưng điều này mang lại cho tôi một lỗi NoMethodError: undefined method `symbolize_keys' for #<String:0x00000102cb6080>
.
Cách chính xác để gửi dữ liệu bài đăng thô ở ActionController::TestCase
là gì?
Dưới đây là một số mã điều khiển:
def index
post_data = request.body.read
req = JSON.parse(post_data)
end
Tôi cũng tò mò về cách bạn thực hiện điều này, để thử nghiệm API dựa trên JSON. – tadman