Sha256: 9b31d6fe6e63116fe2973a053e60c41aa85961794383359a139456a943efdb9a
Contents?: true
Size: 1.64 KB
Versions: 3
Compression:
Stored size: 1.64 KB
Contents
# frozen_string_literal: true RSpec.describe FinApps::REST::Client do describe '#new' do it 'raises for missing company_identifier' do expect { FinApps::REST::Client.new nil, :company_token }.to raise_error(FinApps::MissingArgumentsError) end it 'raises for missing company_token' do expect { FinApps::REST::Client.new :company_identifier, nil }.to raise_error(FinApps::MissingArgumentsError) end end context 'an instance of Client' do subject { FinApps::REST::Client.new(:company_identifier, :company_token) } %i(users sessions orders order_tokens).each do |method| it "responds to #{method}" do expect(subject).to respond_to(method) end end describe '#users' do it { expect(subject.users).to be_an_instance_of(FinApps::REST::Users) } end describe '#sessions' do it { expect(subject.sessions).to be_an_instance_of(FinApps::REST::Sessions) } end describe '#order_tokens' do it { expect(subject.order_tokens).to be_an_instance_of(FinApps::REST::OrderTokens) } end describe '#orders' do it { expect(subject.orders).to be_an_instance_of(FinApps::REST::Orders) } end # [:users, :institutions, :user_institutions, :transactions, :categories, # :budget_models, :budget_calculation, :budgets, :cashflows, # :alert, :alert_definition, :alert_preferences, :alert_settings, :rule_sets] %i(users sessions orders order_tokens).each do |method| it "memoizes the result of #{method}" do first = subject.send(method) second = subject.send(method) expect(first.object_id).to eq(second.object_id) end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
finapps-2.0.20 | spec/rest/client_spec.rb |
finapps-2.0.19 | spec/rest/client_spec.rb |
finapps-2.0.17 | spec/rest/client_spec.rb |