Sha256: 50c726b5048daf0480862bab9016590f11087cf81989c0891f6791d1de94715f

Contents?: true

Size: 1.22 KB

Versions: 12

Compression:

Stored size: 1.22 KB

Contents

require 'rails_helper'

describe LHC do
  context 'post' do
    let(:feedback) do
      {
        recommended: true,
        source_id: 'aaa',
        content_ad_id: '1z-5r1fkaj'
      }
    end

    before(:each) do
      stub_request(:post, "http://datastore/v2/feedbacks")
        .with(body: feedback.to_json)
        .to_return(status: 200, body: feedback.to_json, headers: { 'Content-Encoding' => 'UTF-8' })
    end

    it 'does a post request when providing a complete url' do
      LHC.post('http://datastore/v2/feedbacks', body: feedback.to_json)
    end

    it 'does a post request when providing the name of a configured endpoint' do
      url = 'http://{+datastore}/v2/feedbacks'
      options = { params: { datastore: 'datastore' } }
      LHC.configure { |c| c.endpoint(:feedbacks, url, options) }
      LHC.post(:feedbacks, body: feedback.to_json)
    end

    it 'it makes response data available in a rails way' do
      response = LHC.post('http://datastore/v2/feedbacks', body: feedback.to_json)
      expect(response.data.source_id).to eq 'aaa'
    end

    it 'provides response headers' do
      response = LHC.post('http://datastore/v2/feedbacks', body: feedback.to_json)
      expect(response.headers).to be
    end
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
lhc-8.1.1 spec/basic_methods/post_spec.rb
lhc-8.1.0 spec/basic_methods/post_spec.rb
lhc-8.0.0 spec/basic_methods/post_spec.rb
lhc-7.3.3 spec/basic_methods/post_spec.rb
lhc-7.3.2 spec/basic_methods/post_spec.rb
lhc-7.3.1 spec/basic_methods/post_spec.rb
lhc-7.3.0 spec/basic_methods/post_spec.rb
lhc-7.2.0 spec/basic_methods/post_spec.rb
lhc-7.1.0 spec/basic_methods/post_spec.rb
lhc-7.0.1 spec/basic_methods/post_spec.rb
lhc-7.0.0 spec/basic_methods/post_spec.rb
lhc-7.0.0.beta1 spec/basic_methods/post_spec.rb