Sha256: 1ee5b865761a097732892ffebe8b431a1bee0be622f561d65d9a9f73f7d12d4e

Contents?: true

Size: 1.09 KB

Versions: 19

Compression:

Stored size: 1.09 KB

Contents

require 'spec_helper'

describe 'RequestHandler' do
  let(:session) { CurrencyCloud::Session.new(:demonstration, nil, nil, '4df5b3e5882a412f148dcd08fa4e5b73') }
  let(:response) { double('Response', code: 200, body: '{}') }

  subject { CurrencyCloud::RequestHandler.new(session) }

  describe 'with on_behalf_of parameter' do
    it 'adds it to parameters in HTTP call' do
      session.on_behalf_of = 'd1f7f5c2-4187-41da-88fc-b3ae40fa958f'

      allow(HTTParty).to receive(:post) do |_, params|
        expect(params).to include(:body)
        expect(params[:body]).to include(on_behalf_of: 'd1f7f5c2-4187-41da-88fc-b3ae40fa958f')
      end.and_return(response)

      subject.post('accounts/create', account_name: 'Test Account')
    end

    it "ignores it if it's not a uuid" do
      session.on_behalf_of = 'nonsense variable'

      allow(HTTParty).to receive(:post) do |_, params|
        expect(params).to include(:body)
        expect(params[:body]).to eq(account_name: 'Test Account')
      end.and_return(response)

      subject.post('accounts/create', account_name: 'Test Account')
    end
  end
end

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
currency_cloud-1.6.0 spec/currency_cloud/request_handler_spec.rb
currency_cloud-1.5.0 spec/currency_cloud/request_handler_spec.rb
currency_cloud-1.4.0 spec/currency_cloud/request_handler_spec.rb
currency_cloud-1.3.1 spec/currency_cloud/request_handler_spec.rb
currency_cloud-1.3.0 spec/currency_cloud/request_handler_spec.rb
currency_cloud-1.2.1 spec/currency_cloud/request_handler_spec.rb
currency_cloud-1.1.4 spec/currency_cloud/request_handler_spec.rb
currency_cloud-1.0.3 spec/currency_cloud/request_handler_spec.rb
currency_cloud-0.17.7 spec/currency_cloud/request_handler_spec.rb
currency_cloud-0.16.2 spec/currency_cloud/request_handler_spec.rb
currency_cloud-0.15.8 spec/currency_cloud/request_handler_spec.rb
currency_cloud-0.14.2 spec/currency_cloud/request_handler_spec.rb
currency_cloud-0.12.5 spec/currency_cloud/request_handler_spec.rb
currency_cloud-0.12.4 spec/currency_cloud/request_handler_spec.rb
currency_cloud-0.11.2 spec/currency_cloud/request_handler_spec.rb
currency_cloud-0.10.0 spec/currency_cloud/request_handler_spec.rb
currency_cloud-0.9.0 spec/currency_cloud/request_handler_spec.rb
currency_cloud-0.8.2 spec/currency_cloud/request_handler_spec.rb
currency_cloud-0.8.0 spec/currency_cloud/request_handler_spec.rb