Sha256: 8cf078f58c9667107b1dcb3a5a730e2ade777b07dc8661ab7830be5cc100465f

Contents?: true

Size: 1.14 KB

Versions: 6

Compression:

Stored size: 1.14 KB

Contents

require 'spec_helper'

module Spree
  describe Reimbursement::Credit, type: :model do
    context 'class methods' do
      describe '.total_amount_reimbursed_for' do
        subject { Spree::Reimbursement::Credit.total_amount_reimbursed_for(reimbursement) }

        let(:reimbursement) { create(:reimbursement) }
        let(:credit_double) { double(amount: 99.99) }

        before { allow(reimbursement).to receive(:credits).and_return([credit_double, credit_double])}

        it 'should sum the amounts of all of the reimbursements credits' do
          expect(subject).to eq BigDecimal.new('199.98')
        end
      end
    end

    describe '#description' do
      let(:credit) { Spree::Reimbursement::Credit.new(amount: 100, creditable: mock_model(Spree::PaymentMethod::Check)) }

      it "should be the creditable's class name" do
        expect(credit.description).to eq 'Check'
      end
    end

    describe '#display_amount' do
      let(:credit) { Spree::Reimbursement::Credit.new(amount: 100) }

      it 'should be a money object' do
        expect(credit.display_amount).to eq Spree::Money.new(100, currency: "USD")
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
spree_core-3.3.0.rc1 spec/models/spree/reimbursement/credit_spec.rb
spree_core-3.2.1 spec/models/spree/reimbursement/credit_spec.rb
spree_core-3.2.0 spec/models/spree/reimbursement/credit_spec.rb
spree_core-3.2.0.rc3 spec/models/spree/reimbursement/credit_spec.rb
spree_core-3.2.0.rc2 spec/models/spree/reimbursement/credit_spec.rb
spree_core-3.2.0.rc1 spec/models/spree/reimbursement/credit_spec.rb