Sha256: 822eed921dcbede6f0b26448cf87c0af98d3a98b888d20d9554a552c80e27184
Contents?: true
Size: 1.25 KB
Versions: 16
Compression:
Stored size: 1.25 KB
Contents
require 'rails_helper' describe LHS::Record do context 'includes warning' do before(:each) do class Customer < LHS::Record endpoint 'http://datastore/customers/{id}' end end let!(:customer_request) do stub_request(:get, 'http://datastore/customers/1') .to_return( body: { contracts: { href: 'http://datastore/customers/1/contracts' } }.to_json ) end let!(:contracts_request) do stub_request(:get, "http://datastore/customers/1/contracts") .to_return( body: { items: 10.times.map do { products: { href: 'http://datastore/products' } } end, limit: 10, offset: 0, total: 33 }.to_json ) end it 'warns if linked data was simply included but is paginated' do expect(lambda { Customer.includes(:contracts).find(1) }).to output( %r{\[WARNING\] You included `http://datastore/customers/1/contracts`, but this endpoint is paginated. You might want to use `includes_all` instead of `includes` \(https://github.com/local-ch/lhs#includes_all-for-paginated-endpoints\)\.} ).to_stderr end end end
Version data entries
16 entries across 16 versions & 1 rubygems