Merge branch '8_increase_test_coverage' of ssh://git.local-it.org:2222/Foodsoft/foodsoft into 8_increase_test_coverage
Some checks failed
continuous-integration/drone/push Build is failing

This commit is contained in:
Tobias Kneuker 2022-10-05 14:53:44 +02:00
commit 4533a1d8b2

View file

@ -40,13 +40,22 @@ describe GroupOrderArticle do
goa.update_quantities(0, 0) goa.update_quantities(0, 0)
expect(GroupOrderArticle.exists?(goa.id)).to be false expect(GroupOrderArticle.exists?(goa.id)).to be false
end end
it 'updates quantity and tolerance' do
goa.update_quantities(2,2)
goa.update_quantities(1,1)
expect(goa.quantity).to eq(1)
expect(goa.tolerance).to eq(1)
goa.update_quantities(1,2)
expect(goa.tolerance).to eq(2)
end
end end
describe 'distribution strategy' do describe 'distribution strategy' do
let(:article) { create :article, supplier: order.supplier, unit_quantity: 1 } let(:article) { create :article, supplier: order.supplier, unit_quantity: 1 }
let(:oa) { order.order_articles.create(:article => article) } let(:oa) { order.order_articles.create(:article => article) }
let(:goa) { create :group_order_article, group_order: go, order_article: oa } let(:goa) { create :group_order_article, group_order: go, order_article: oa }
let!(:goaq) { create :group_order_article_quantity, group_order_article: goa, quantity: 4 } let!(:goaq) { create :group_order_article_quantity, group_order_article: goa, quantity: 4, tolerance: 6}
it 'can calculate the result for the distribution strategy "first order first serve"' do it 'can calculate the result for the distribution strategy "first order first serve"' do
res = goa.calculate_result(2) res = goa.calculate_result(2)
@ -55,9 +64,13 @@ describe GroupOrderArticle do
it 'can calculate the result for the distribution strategy "no automatic distribution"' do it 'can calculate the result for the distribution strategy "no automatic distribution"' do
FoodsoftConfig[:distribution_strategy] = FoodsoftConfig::DistributionStrategy::NO_AUTOMATIC_DISTRIBUTION FoodsoftConfig[:distribution_strategy] = FoodsoftConfig::DistributionStrategy::NO_AUTOMATIC_DISTRIBUTION
res = goa.calculate_result(2) res = goa.calculate_result(2)
expect(res).to eq(quantity: 4, tolerance: 0, total: 4) expect(res).to eq(quantity: 4, tolerance: 0, total: 4)
end end
it 'determines tolerance correctly' do
res = goa.calculate_result(6)
expect(res).to eq(quantity: 4, tolerance: 2, total: 6)
end
end end
end end