Skip to content

Commit

Permalink
[OPAL-529] Allow adjustments to also return updated invoice tax
Browse files Browse the repository at this point in the history
  • Loading branch information
MAhsenArif committed Aug 27, 2018
1 parent 103b4a1 commit f0135b6
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -74,10 +74,10 @@ def create_adjustment

bill.save!
# Refetch invoice totals
invoice = MnoEnterprise::Invoice.select(:price, :total_due).find(params[:id]).first
invoice = MnoEnterprise::Invoice.select(:price, :total_due, :tax_payable).find(params[:id]).first

# Render invoice totals
render json: { id: bill.id, invoice: { price: invoice.price, total_due: invoice.total_due } }
render json: { id: bill.id, invoice: { price: invoice.price, total_due: invoice.total_due, tax_payable: invoice.tax_payable } }
end

# NOTE: it would be preferable to use Invoice#price_cents
Expand All @@ -101,10 +101,10 @@ def delete_adjustment
# instead of cancelled.
bill.destroy!
# Refetch invoice totals
invoice = MnoEnterprise::Invoice.select(:price, :total_due).find(params[:id]).first
invoice = MnoEnterprise::Invoice.select(:price, :total_due, :tax_payable).find(params[:id]).first

# Render invoice totals
render json: { invoice: { price: invoice.price, total_due: invoice.total_due } }
render json: { invoice: { price: invoice.price, total_due: invoice.total_due, tax_payable: invoice.tax_payable } }

end

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -82,12 +82,13 @@ module MnoEnterprise
before { allow(invoice).to receive(:organization).and_return(organization) }
before { stub_api_v2(:get, "/invoices/#{invoice.id}", invoice, %i(organization), expected_params) }
before { stub_api_v2(:post, "/bills", bill) }
before { stub_api_v2(:get, "/invoices/#{invoice.id}", invoice, [], { fields: { invoices: 'price,total_due' } }) }
before { stub_api_v2(:get, "/invoices/#{invoice.id}", invoice, [], { fields: { invoices: 'price,total_due,tax_payable' } }) }
before { subject }

it { expect(data['id']).to eq(bill.id) }
it { expect(data['invoice']['total_due']['fractional']).to eq(invoice.total_due.cents.to_f.to_s) }
it { expect(data['invoice']['price']['fractional']).to eq(invoice.price.cents.to_f.to_s) }
it { expect(data['invoice']['tax_payable']['fractional']).to eq(invoice.tax_payable.cents.to_f.to_s) }
end

describe 'DELETE #delete_adjustment' do
Expand All @@ -106,11 +107,12 @@ module MnoEnterprise
})
end
before { stub_api_v2(:delete, "/bills/#{bill.id}") }
before { stub_api_v2(:get, "/invoices/#{invoice.id}", invoice, [], { fields: { invoices: 'price,total_due' } }) }
before { stub_api_v2(:get, "/invoices/#{invoice.id}", invoice, [], { fields: { invoices: 'price,total_due,tax_payable' } }) }
before { subject }

it { expect(data['invoice']['total_due']['fractional']).to eq(invoice.total_due.cents.to_f.to_s) }
it { expect(data['invoice']['price']['fractional']).to eq(invoice.price.cents.to_f.to_s) }
it { expect(data['invoice']['tax_payable']['fractional']).to eq(invoice.tax_payable.cents.to_f.to_s) }
end

describe 'POST #send_to_customer' do
Expand Down

0 comments on commit f0135b6

Please sign in to comment.