Sha256: b179a3c9a0f8a2bde373960080908f4b71a040a93eeb8ff6b5dac90e0248ad9f

Contents?: true

Size: 1004 Bytes

Versions: 12

Compression:

Stored size: 1004 Bytes

Contents

# frozen_string_literal: true

require 'rails_helper'

describe DHS::Record do
  before do
    class Business < DHS::Record
      configuration item_created_key: %i[response business], limit_key: %i[response max], pagination_key: %i[response offset], total_key: %i[response count], pagination_strategy: :offset
      endpoint 'http://uberall/businesses'
    end
  end

  let(:stub_create_business_request) do
    stub_request(:post, 'http://uberall/businesses')
      .to_return(body: {
        status: 'SUCCESS',
        response: {
          business: {
            identifier: 'ABC123',
            name: 'depay',
            id: 239650
          }
        }
      }.to_json)
  end

  it 'uses paths from configuration to access nested values' do
    stub_create_business_request
    business = Business.create!(
      identifier: 'ABC123',
      name: 'depay'
    )
    expect(business.identifier).to eq 'ABC123'
    expect(business.name).to eq 'depay'
    expect(business.id).to eq 239650
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
dhs-1.6.0 spec/record/items_created_key_configuration_spec.rb
dhs-1.5.0 spec/record/items_created_key_configuration_spec.rb
dhs-1.4.2 spec/record/items_created_key_configuration_spec.rb
dhs-1.4.1 spec/record/items_created_key_configuration_spec.rb
dhs-1.4.0 spec/record/items_created_key_configuration_spec.rb
dhs-1.3.0 spec/record/items_created_key_configuration_spec.rb
dhs-1.2.0 spec/record/items_created_key_configuration_spec.rb
dhs-1.1.0 spec/record/items_created_key_configuration_spec.rb
dhs-1.0.3 spec/record/items_created_key_configuration_spec.rb
dhs-1.0.2 spec/record/items_created_key_configuration_spec.rb
dhs-1.0.1 spec/record/items_created_key_configuration_spec.rb
dhs-1.0.0 spec/record/items_created_key_configuration_spec.rb