mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-02-27 01:43:22 +00:00
Add tests for class_eval on Spree::Calculator private method #line_items_for
This commit is contained in:
36
spec/models/spree/calculator_spec.rb
Normal file
36
spec/models/spree/calculator_spec.rb
Normal file
@@ -0,0 +1,36 @@
|
||||
require 'spec_helper'
|
||||
|
||||
module Spree
|
||||
describe Calculator do
|
||||
let(:calculator) { Spree::Calculator.new }
|
||||
let!(:enterprise) { create(:enterprise) }
|
||||
let!(:order) { create(:order) }
|
||||
let!(:line_item) { create(:line_item, order: order) }
|
||||
let!(:line_item2) { create(:line_item, order: order) }
|
||||
|
||||
before do
|
||||
order.line_items << line_item
|
||||
order.line_items << line_item2
|
||||
end
|
||||
|
||||
describe "#line_items_for" do
|
||||
it "returns the line item if given a line item" do
|
||||
result = calculator.__send__(:line_items_for, line_item)
|
||||
|
||||
expect(result).to eq [line_item]
|
||||
end
|
||||
|
||||
it "returns line items if given an order" do
|
||||
result = calculator.__send__(:line_items_for, order)
|
||||
|
||||
expect(result).to eq [line_item, line_item2]
|
||||
end
|
||||
|
||||
it "returns the original object if given anything else" do
|
||||
result = calculator.__send__(:line_items_for, enterprise)
|
||||
|
||||
expect(result).to eq [enterprise]
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user