Sha256: 0607d682dfad22ac26b6151971745eed2463d0469d8bf86dc32f613535e73867
Contents?: true
Size: 895 Bytes
Versions: 1
Compression:
Stored size: 895 Bytes
Contents
# frozen_string_literal: true RSpec.describe SoapyCake::Affiliate do let(:affiliate_id) { 42 } let(:opts) { { a: 1 } } let(:cake_opts) { opts.merge(affiliate_id: affiliate_id) } subject { described_class.new(affiliate_id: affiliate_id) } shared_examples_for 'a cake affiliate method' do it 'runs the request' do request = instance_double(SoapyCake::Request) expect(SoapyCake::Request).to receive(:new) .with(:affiliate, service, method, cake_opts).and_return(request) expect(subject).to receive(:run).with(request) subject.public_send(method, opts) end end describe '#bills' do let(:service) { :reports } let(:method) { :bills } it_behaves_like 'a cake affiliate method' end describe '#offer_feed' do let(:service) { :offers } let(:method) { :offer_feed } it_behaves_like 'a cake affiliate method' end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
soapy_cake-1.25.1 | spec/lib/soapy_cake/affiliate_spec.rb |