如何在Rails Api中rspec ActionDispatch :: ParamsParser :: ParseError

时间:2016-01-15 17:01:15

标签: ruby-on-rails ruby-on-rails-4 rails-api

我正在尝试编写一个失败的规范,用于在向rails api端点发出请求时传递无效的json。

在一个完整的铁路api中,我会使用水豚和卷曲来提出实际要求。

如何通过rspec请求规范传递无效的json?

1 个答案:

答案 0 :(得分:2)

我最终找到了解决方案,你需要使用请求规范,就像这样:

require 'rails_helper'

RSpec.describe 'JSON formatting', :type => :request do
  context 'with bad json' do
    it 'returns 400 on bad json' do
      headers = {
          'ACCEPT' => 'application/json',
          'CONTENT_TYPE' => 'application/json'
      }
      post '/some/path', "{", headers

      expect(response.content_type).to eq("application/json")
    end
  end
end