Sha256: ee7585e21638b2bb584ab47f2151f20ae48b9290fe952af15932456d38f5b404

Contents?: true

Size: 1.14 KB

Versions: 6

Compression:

Stored size: 1.14 KB

Contents

require 'spec_helper'

describe Spree::ReimbursementPerformer, type: :model do
  let(:reimbursement)           { create(:reimbursement, return_items_count: 1) }
  let(:return_item)             { reimbursement.return_items.first }
  let(:reimbursement_type)      { double("ReimbursementType") }
  let(:reimbursement_type_hash) { { reimbursement_type => [return_item]} }

  before do
    expect(Spree::ReimbursementPerformer).to receive(:calculate_reimbursement_types).and_return(reimbursement_type_hash)
  end

  describe ".simulate" do
    subject { Spree::ReimbursementPerformer.simulate(reimbursement) }

    it "reimburses each calculated reimbursement types with the correct return items as a simulation" do
      expect(reimbursement_type).to receive(:reimburse).with(reimbursement, [return_item], true)
      subject
    end
  end

  describe '.perform' do
    subject { Spree::ReimbursementPerformer.perform(reimbursement) }

    it "reimburses each calculated reimbursement types with the correct return items as a simulation" do
      expect(reimbursement_type).to receive(:reimburse).with(reimbursement, [return_item], false)
      subject
    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_performer_spec.rb
spree_core-3.2.1 spec/models/spree/reimbursement_performer_spec.rb
spree_core-3.2.0 spec/models/spree/reimbursement_performer_spec.rb
spree_core-3.2.0.rc3 spec/models/spree/reimbursement_performer_spec.rb
spree_core-3.2.0.rc2 spec/models/spree/reimbursement_performer_spec.rb
spree_core-3.2.0.rc1 spec/models/spree/reimbursement_performer_spec.rb